Date: Mon, 26 Sep 2016 18:04:31 +0200 From: Christian Schwarz <me@cschwarz.com> To: freebsd-x11@freebsd.org Subject: devel/llvm38 & custom poudriere Message-ID: <20160926160431.GA19646@csarch.speedport.ip>
next in thread | raw e-mail | index | archive | help
Hi all, I have been testing the drm-next-4.* branches for the last months, with a short break since end of August, when - apparently - the build was changed to depend on devel/llvm38... I just pulled the latest HEAD 2652d2a6e8c714932dc3331bb130b31b176c3bc9 It requires having devel/llvm38 installed, so I did that. The base operating system builds fine, but poudriere builds fail because of the missing C compiler: Using `poudriere jail -c -m src=...` does not work (lack of C compiler). ... /usr/bin/cc: /usr/local/llvm38/bin/cc: not found make: "/usr/ports/Mk/Uses/compiler.mk" line 69: warning: "cc --version" returned non-zero status make: "/usr/ports/Mk/Uses/compiler.mk" line 120: warning: "c++ -### /dev/null 2>&1" returned non-zero status ... I figured I could set up the build jail manually: zfs create zroot/poudriere/jails/12graphics zfs set mountpoint=/usr/local/poudriere/jails/12graphics zroot/poudriere/jails/12graphics # manually create the poudriere.d/jail/12graphics # by copying & adjusting a regular build jail cd path-to-drm-next-4.7 make buildworld make installworld DESTDIR=/usr/local/poudriere/jails/12graphics make distribution DESTDIR=/usr/local/poudriere/jails/12graphics zfs snapshot zroot/poudriere/jails/12graphics@nollvm cp /etc/resolv.conf /usr/local/poudriere/jails/12graphics/etc/resolv.conf pkg --chroot /usr/local/poudriere/jails/12graphics install clang38 rm /etc/resolv.conf echo 'CC=/usr/local/bin/clang38' >> /usr/local/poudriere/jails/12graphics/etc/make.conf echo 'CXX=/usr/local/bin/clang++38' >> /usr/local/poudriere/jails/12graphics/etc/make.conf echo 'CPP=/usr/local/bin/clang-cpp38' >> /usr/local/poudriere/jails/12graphics/etc/make.conf # create the zfs snapshot @clean, it is used as source for build jail clones created by poudriere zfs snapshot zroot/poudriere/jails/12graphics@clean poudriere bulk -j 12graphics -p xserver-next -c -f /usr/local/etc/poudriere.d/myports.list This seems to stop poudriere's complaints about missing C compiler (it needs it for buildworld when specifying `-m src=`), however, autoconf (./configure) still fails when compiling ports, apparently because it cannot find a C compiler in the jail: # truncated log from failing build =======================<phase: configure >============================ ===> Configuring for p5-XML-Parser-2.44 Couldn't find your C compiler Compilation failed in require at ./Makefile.PL line 4. BEGIN failed--compilation aborted at ./Makefile.PL line 4. *** Error code 2 I tried fiddling around by symlinkng /usr/bin/cc to the clang binaries, this was not successful however. How should I setup the build jail correctly? I guess this work must have been done by the 'official' repo [1] already. Thanks, Christian [1] http://www.bsddesktop.com/images/120amd64-ports-graphics-xserver-mesa-next
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20160926160431.GA19646>