GCC-5.0 now available in DragonFly master.

Matthew Dillon dillon at apollo.backplane.com
Wed Feb 11 12:38:04 PST 2015

    We are happy to announce that John Marino has finished integrating gcc-5.0
    into the DragonFlyBSD base system!  gcc-5.0 can be tested by setting
    your CCVER to 'gcc50'.  Note that you would set your CCVER to 'gcc5' for
    the lang/gcc5 dport, which also works.

    DragonFly has a two-compilers-in-base policy, controlled by the CCVER
    environment variable.  We have dropped gcc-4.4 and added gcc-5.0.  We now
    have gcc-4.7.4 and gcc-5.0 in base, with gcc-4.7.4 being the
    current default.

    gcc-5.0 is considered experimental and will not become the default for
    some time.  Now that it is in base more developers can work on validating
    it for our world and kernel builds.


    The gcc-5.x build is quite a bit larger than the gcc-4.x build due to
    being more dependant on C++, so buildworld will take longer.  John has
    mitigated the issue on multi-core systems by significantly improving
    build concurrency (reducing buildworld bottlenecks that leave cores
    idle).  Our test build numbers for buildworld between -release and master
    are as follows:

	monster -j 48 build (48-core 1.9 GHz opteron 6168 x 4):
	    release     929.08 real      6338.02 user      4095.37 sys
	    master      945.65 real      7946.20 user      4568.24 sys

	blade -j 12 build (E3-1240v3 w/8-threads):
	    release     771.73 real      3145.34 user      1223.97 sys
	    master      906.42 real      4056.47 user      1394.64 sys

    So the build in this configuration on a recent cpu like haswell takes
    911 seconds more cpu time but concurrency has improved by 776 seconds
    so the real-time difference is only 135 seconds slower.

    On machines with fewer cores the real-time build time will be longer,
    significantly longer on single-core systems, but we'll just have to live
    with it.

					Matthew Dillon 
					<dillon at backplane.com>

More information about the Users mailing list