[oi-dev] GCC 6 switch

Alexander Pyhalov alp at rsu.ru
Mon Feb 12 10:40:48 UTC 2018


We've just finished (or almost finished) with GCC-6 migration.

What does it mean?

1) GCC 6 is the default oi-userland compiler now. GCC 4.9 is used only 
to compile gcc-49 and illumos-gcc. Illumos-gcc 4.4.4 is still used to 
build illumos-gate and gfx-drm.
(So you have no excuse for submitting components, which don't build with 
GCC 6).

2) As GCC 6 runtime libraries live in /usr/gcc/6/lib and 
/usr/gcc/6/lib/$(MACH64), we  have runpath embedded in a lot of 
libraries. illumos-gate check_rtime doesn't like this, so build will 
fail if you have -r flag in NIGHTLY_OPTIONS. So far, just remove it, 
we'll try to find appropriate fix with illumos-gate developers a bit later.

3) We've merged code from 
https://github.com/OpenIndiana/oi-userland/pull/3883 . This drastically 
decreases time, spent by oi-userland in pkgdepend resolve phase. But 
this also means, that if pkgdepend finds some dependency for the 
component, it should be present in REQUIRED_PACKAGES (otherwise, resolve 
will fail). Note, that on build server the whole world is installed. Be 
sure to disable unused options or to test component with all possible 
dependencies from oi-userland (and add them to REQUIRED_PACKAGES).
Due to this change we populated REQUIRED_PACKAGES for many components 
and in theory could shrink build-essential to 'strictly required' 
components ('gmake env-prep' is your friend).

4) There were some updates, not directly related to gcc-6:
- IIIM was finally removed (while I rebuilt everything, found that it's 
broken and had no motivation to fix it), use ibus or xkbd.
- OpenJDK 8 was updated to 1.8.152.

5) Known issues:
- we found some issues with tmux, it seems it now can't properly handle 
ctrl^c (likely related to the fact that now compiler links it to 
/usr/lib/values-xpg6.o, and libraries suddenly become XPG6-aware).
- as due to gcc-6 migration oi-userland was completely rebuilt,
our /hipster repository significantly grew in size, we are likely going 
to clean it up from old packages this week.

Best regards,
Alexander Pyhalov,
system administrator of Southern Federal University IT department

More information about the oi-dev mailing list