LLVM clang support in T2 SDE (Linux)

With T2 r35579, I just added the required build system, configuration and glue to let the T2 SDE (System Development Environment) utilize clang and clang++ as the default C and C++ compiler. And I just successfully compiled the first packages on a x86-64/T2/Linux test build:

-rw-r–r– 1 root root 3949 Feb 16 15:41 9-atop.log
-rw-r–r– 1 root root 21444 Feb 16 15:45 9-libelf.log
-rw-r–r– 1 root root 55854 Feb 16 15:45 9-fontconfig.log
-rw-r–r– 1 root root 3827 Feb 16 15:45 9-renderproto.log
-rw-r–r– 1 root root 34883 Feb 16 15:46 9-libxext.log
-rw-r–r– 1 root root 12765 Feb 16 15:46 9-libice.log
-rw-r–r– 1 root root 22070 Feb 16 15:46 9-libsm.log
-rw-r–r– 1 root root 31354 Feb 16 15:47 9-libxt.log
-rw-r–r– 1 root root 15357 Feb 16 15:47 9-libxmu.log
-rw-r–r– 1 root root 15243 Feb 16 15:47 9-libxpm.log
-rw-r–r– 1 root root 12157 Feb 16 15:48 9-libxrender.log
-rw-r–r– 1 root root 13854 Feb 16 15:48 9-libxft.log
-rw-r–r– 1 root root 13782 Feb 16 15:48 9-libxkbfile.log
-rw-r–r– 1 root root 135931 Feb 16 16:00 9-openssh.log
-rw-r–r– 1 root root 344112 Feb 16 16:05 9-openssl.log
-rw-r–r– 1 root root 17024 Feb 16 16:06 9-screen.log

The resulting ssh and screen even worked as expected (so far, anyway).

Update: In the meantime I got some more:

-rw-r–r– 1 root root 20762 Feb 16 16:30 9-gdbm.log
-rw-r–r– 1 root root 135332 Feb 16 16:33 9-bdb.log
-rw-r–r– 1 root root 112613 Feb 16 17:47 9-bash.log
-rw-r–r– 1 root root 39080 Feb 16 17:58 9-libpng.log
-rw-r–r– 1 root root 14430 Feb 16 17:58 9-libjpeg.log
-rw-r–r– 1 root root 15102 Feb 16 18:00 9-libxi.log
-rw-r–r– 1 root root 131936 Feb 16 18:01 9-libtiff.log
-rw-r–r– 1 root root 27745 Feb 16 18:09 9-make.log

Oh, and no: I’m not sherry picking the ones that happen to just build anyway. I’m actually trying to get a package installed I wanted to check something with :-)

Update 2: Even more:

-rw-r–r– 1 root root 48779 Feb 16 18:50 9-pcre.log
-rw-r–r– 1 root root 39057 Feb 18 09:18 9-procps.log
-rw-r–r– 1 root root 25927 Feb 18 09:36 9-gzip.log
-rw-r–r– 1 root root 6171 Feb 18 09:36 9-zlib.log
-rw-r–r– 1 root root 83158 Feb 18 09:37 9-tar.log
-rw-r–r– 1 root root 6406 Feb 18 09:37 9-bzip2.log
-rw-r–r– 1 root root 81007 Feb 18 09:40 9-cpio.log
-rw-r–r– 1 root root 163167 Feb 18 09:41 9-coreutils.log
-rw-r–r– 1 root root 57903 Feb 18 09:42 9-bison.log
-rw-r–r– 1 root root 43999 Feb 18 09:43 9-cracklib.log
-rw-r–r– 1 root root 245777 Feb 18 09:55 9-libxml.log
-rw-r–r– 1 root root 119157 Feb 18 09:57 9-libxslt.log
-rw-r–r– 1 root root 118949 Feb 18 10:01 9-curl.log
-rw-r–r– 1 root root 12776 Feb 18 10:01 9-dialog.log
-rw-r–r– 1 root root 104053 Feb 18 10:01 9-nvi.log
-rw-r–r– 1 root root 63407 Feb 18 10:02 9-zile.log
-rw-r–r– 1 root root 65705 Feb 18 10:02 9-dhcp.log
-rw-r–r– 1 root root 61259 Feb 18 10:02 9-xfsprogs.log
-rw-r–r– 1 root root 3799 Feb 18 10:03 9-vlock.log
-rw-r–r– 1 root root 11613 Feb 18 10:03 9-wpa_supplicant.log
-rw-r–r– 1 root root 6497 Feb 18 10:08 9-disktype.log
-rw-r–r– 1 root root 46491 Feb 18 10:09 9-file.log
-rw-r–r– 1 root root 31839 Feb 18 10:09 9-gawk.log
-rw-r–r– 1 root root 8933 Feb 18 10:09 9-zip.log
-rw-r–r– 1 root root 46398 Feb 18 10:10 9-cvs.log
-rw-r–r– 1 root root 8201 Feb 18 10:10 9-fget.log
-rw-r–r– 1 root root 11079 Feb 18 10:10 9-cron.log
-rw-r–r– 1 root root 68751 Feb 18 10:11 9-flex.log
-rw-r–r– 1 root root 5520 Feb 18 10:11 9-ed.log
-rw-r–r– 1 root root 38684 Feb 18 10:12 9-kbd.log
-rw-r–r– 1 root root 21374 Feb 18 10:12 9-hfsutils.log
-rw-r–r– 1 root root 11162 Feb 18 10:12 9-eject.log
-rw-r–r– 1 root root 36338 Feb 18 10:12 9-jfsutils.log
-rw-r–r– 1 root root 9772 Feb 18 10:13 9-ethtool.log
-rw-r–r– 1 root root 48041 Feb 18 10:14 9-m4.log
-rw-r–r– 1 root root 93434 Feb 18 10:15 9-findutils.log
-rw-r–r– 1 root root 38717 Feb 18 10:15 9-grep.log
-rw-r–r– 1 root root 195571 Feb 18 10:17 9-groff.log
-rw-r–r– 1 root root 24493 Feb 18 10:17 9-mine.log
-rw-r–r– 1 root root 21869 Feb 18 10:17 9-neon.log
-rw-r–r– 1 root root 5123 Feb 18 10:24 9-minised.log
-rw-r–r– 1 root root 20277 Feb 18 10:24 9-module-init-tools.log
-rw-r–r– 1 root root 16596 Feb 18 10:24 9-pdksh.log
-rw-r–r– 1 root root 360877 Feb 18 10:26 9-binutils.log
-rw-r–r– 1 root root 41615 Feb 18 10:26 9-libtool.log
-rw-r–r– 1 root root 15673 Feb 18 10:26 9-nasm.log
-rw-r–r– 1 root root 39814 Feb 18 10:27 9-readline.log
-rw-r–r– 1 root root 13207 Feb 18 10:28 9-expat.log
-rw-r–r– 1 root root 98187 Feb 18 10:29 9-texinfo.log
-rw-r–r– 1 root root 42067 Feb 18 10:29 9-sysfsutils.log
-rw-r–r– 1 root root 7091 Feb 18 10:30 9-ccache.log
-rw-r–r– 1 root root 93448 Feb 18 10:31 9-findutils.log
-rw-r–r– 1 root root 6526 Feb 18 10:31 9-mktemp.log
-rw-r–r– 1 root root 13224 Feb 18 10:32 9-patch.log
-rw-r–r– 1 root root 38759 Feb 18 10:32 9-grep.log
-rw-r–r– 1 root root 44605 Feb 18 10:33 9-sed.log
-rw-r–r– 1 root root 37792 Feb 18 10:33 9-man.log
-rw-r–r– 1 root root 3871 Feb 18 10:33 9-stone.log
-rw-r–r– 1 root root 6747 Feb 18 10:33 9-mmv.log
-rw-r–r– 1 root root 18274 Feb 18 10:33 9-unzip.log
-rw-r–r– 1 root root 32338 Feb 18 10:33 9-tcp_wrappers.log
-rw-r–r– 1 root root 55106 Feb 18 10:34 9-wget.log
-rw-r–r– 1 root root 265717 Feb 18 10:35 9-util-linux.log
-rw-r–r– 1 root root 30673 Feb 18 10:35 9-popt.log
-rw-r–r– 1 root root 8437 Feb 18 10:35 9-netkit-base.log
-rw-r–r– 1 root root 73075 Feb 18 10:36 9-apr.log
-rw-r–r– 1 root root 46578 Feb 18 10:37 9-apr-util.log
-rw-r–r– 1 root root 24631 Feb 18 10:37 9-rsync.log
-rw-r–r– 1 root root 19309 Feb 18 10:38 9-sqlite.log
-rw-r–r– 1 root root 370347 Feb 18 10:40 9-pam.log
-rw-r–r– 1 root root 16082 Feb 18 10:40 9-pciutils.log
-rw-r–r– 1 root root 6232 Feb 18 10:40 9-pcmciautils.log
-rw-r–r– 1 root root 66459 Feb 18 10:40 9-ppp.log
-rw-r–r– 1 root root 7412 Feb 18 10:41 9-sysvinit.log
-rw-r–r– 1 root root 154388 Feb 18 10:41 9-shadow.log
-rw-r–r– 1 root root 27613 Feb 18 10:42 9-net-tools.log
-rw-r–r– 1 root root 6103 Feb 18 10:42 9-wireless-tools.log
-rw-r–r– 1 root root 3304 Feb 18 10:42 9-procinfo.log
-rw-r–r– 1 root root 19135 Feb 18 10:42 9-psmisc.log
-rw-r–r– 1 root root 4433 Feb 18 10:43 9-sysklogd.log
-rw-r–r– 1 root root 18423 Feb 18 10:43 9-netkit-telnet.log
-rw-r–r– 1 root root 69664 Feb 18 10:43 9-libtirpc.log
-rw-r–r– 1 root root 19185 Feb 18 10:43 9-portmap.log
-rw-r–r– 1 root root 76675 Feb 18 10:44 9-nfs-utils.log
-rw-r–r– 1 root root 4525 Feb 18 10:44 9-ipconfig.log
-rw-r–r– 1 root root 305571 Feb 18 10:53 9-gdb.log

Kind of feels as excited as when I was migrating the T2 code base (back in the days of ROCK Linux) from GCC-2.95(.3) to GCC-3.x :-) - nearly a decade ago!

Update 3: As this post gained some attention, I got a couple more packages built in the meantime:

-rw-r–r– 1 root root 8539 Feb 18 12:17 9-lua.log
-rw-r–r– 1 root root 21123 Feb 18 12:17 9-strace.log
-rw-r–r– 1 root root 3245 Feb 18 12:18 9-lpeg.log
-rw-r–r– 1 root root 126139 Feb 19 16:25 9-libidn.log
-rw-r–r– 1 root root 60357 Feb 19 16:26 9-mercurial.log
-rw-r–r– 1 root root 28350 Mar 6 09:29 9-git.log
-rw-r–r– 1 root root 7419 Mar 6 10:00 9-luasocket.log
-rw-r–r– 1 root root 4329 Mar 6 10:00 9-luasec.log
-rw-r–r– 1 root root 2915 Mar 6 12:19 9-djbdns-tools.log
-rw-r–r– 1 root root 26536 Mar 6 12:19 9-djbdns.log
-rw-r–r– 1 root root 172416 Mar 12 18:56 9-freetype.log
-rw-r–r– 1 root root 7109 Mar 29 13:17 9-lua-sqlite3.log
-rw-r–r– 1 root root 109864 Apr 15 09:03 9-libxcb.log
-rw-r–r– 1 root root 79811 Apr 15 09:05 9-lcms.log
-rw-r–r– 1 root root 19588 Apr 15 09:21 9-libpcap.log
-rw-r–r– 1 root root 489123 Apr 15 09:24 9-python.log
-rw-r–r– 1 root root 18773 Apr 15 09:25 9-docbookx.log
-rw-r–r– 1 root root 14479 Apr 15 09:26 9-xmlto.log
-rw-r–r– 1 root root 62691 Apr 18 12:14 9-mpc.log
-rw-r–r– 1 root root 56683 Apr 25 12:29 9-libdnet.log

Leave a Reply