Closed Bug 1332948 Opened 8 years ago Closed 8 years ago

Stylo build mistakenly claims it requires >= LLVM 3.9.x when llvm-config is detected

Categories

(Firefox Build System :: General, defect)

x86_64
Linux
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED DUPLICATE of bug 1333054

People

(Reporter: zao, Unassigned)

Details

User Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:51.0) Gecko/20100101 Firefox/51.0 Build ID: 20170118123726 Steps to reproduce: Run bootstrap.py on Fedora 25 to get a build environment. Install llvm-devel 3.8.0 for other reasons. Check out central bookmark of unified tree. Invoked "mach build" Actual results: Build bails out with: [zao@freja mozilla]$ ./mach build 0:00.56 /usr/bin/gmake -f client.mk -s configure 0:00.72 client.mk:204: /home/zao/mozilla/obj-x86_64-pc-linux-gnu/.mozconfig.mk: No such file or directory 0:00.87 Clobber not needed. 0:01.17 Generating /home/zao/mozilla/configure 0:01.17 Generating /home/zao/mozilla/js/src/configure 0:01.17 cd /home/zao/mozilla/obj-x86_64-pc-linux-gnu 0:01.17 /home/zao/mozilla/configure 0:01.23 Creating Python environment 0:02.68 New python executable in /home/zao/mozilla/obj-x86_64-pc-linux-gnu/_virtualenv/bin/python2.7 0:02.68 Also creating executable in /home/zao/mozilla/obj-x86_64-pc-linux-gnu/_virtualenv/bin/python 0:02.68 Installing setuptools, pip, wheel...done. 0:03.47 running build_ext 0:03.47 building 'psutil._psutil_linux' extension 0:03.47 creating build 0:03.47 creating build/temp.linux-x86_64-2.7 0:03.47 creating build/temp.linux-x86_64-2.7/psutil 0:03.47 gcc -pthread -fno-strict-aliasing -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -DNDEBUG -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -fPIC -DPSUTIL_VERSION=311 -I/usr/include/python2.7 -c psutil/_psutil_linux.c -o build/temp.linux-x86_64-2.7/psutil/_psutil_linux.o 0:03.47 creating build/lib.linux-x86_64-2.7 0:03.47 creating build/lib.linux-x86_64-2.7/psutil 0:03.47 gcc -pthread -shared -Wl,-z,relro -specs=/usr/lib/rpm/redhat/redhat-hardened-ld build/temp.linux-x86_64-2.7/psutil/_psutil_linux.o -L/usr/lib64 -lpython2.7 -o build/lib.linux-x86_64-2.7/psutil/_psutil_linux.so 0:03.47 building 'psutil._psutil_posix' extension 0:03.47 gcc -pthread -fno-strict-aliasing -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -DNDEBUG -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -fPIC -I/usr/include/python2.7 -c psutil/_psutil_posix.c -o build/temp.linux-x86_64-2.7/psutil/_psutil_posix.o 0:03.47 gcc -pthread -shared -Wl,-z,relro -specs=/usr/lib/rpm/redhat/redhat-hardened-ld build/temp.linux-x86_64-2.7/psutil/_psutil_posix.o -L/usr/lib64 -lpython2.7 -o build/lib.linux-x86_64-2.7/psutil/_psutil_posix.so 0:03.47 copying build/lib.linux-x86_64-2.7/psutil/_psutil_linux.so -> psutil 0:03.47 copying build/lib.linux-x86_64-2.7/psutil/_psutil_posix.so -> psutil 0:03.47 0:03.47 Reexecuting in the virtualenv 0:03.69 checking for a shell... /usr/bin/sh 0:03.72 checking for host system type... x86_64-pc-linux-gnu 0:03.73 checking for target system type... x86_64-pc-linux-gnu 0:03.73 checking whether cross compiling... no 0:03.73 checking for the target C compiler... /usr/lib64/ccache/gcc 0:03.74 checking whether the target C compiler can be used... yes 0:03.74 checking for llvm-config... /usr/bin/llvm-config 0:04.06 ERROR: llvm installation 3.8.0 is too old. 0:04.06 0:04.06 To compile Stylo, please install at least version 3.9.0 of 0:04.06 Clang + LLVM and ensure that the 'llvm-config' from that 0:04.06 installation is first on your path. 0:04.06 0:04.06 You can verify this by typing 'llvm-config --version'. 0:04.06 0:04.08 *** Fix above errors and then restart with\ 0:04.08 "/usr/bin/gmake -f client.mk build" 0:04.08 client.mk:379: recipe for target 'configure' failed 0:04.08 gmake: *** [configure] Error 1 [zao@freja mozilla]$ Expected results: Removing llvm-devel allows the build to continue, I assume that this "Stylo" component is not built in that case. As it seems to be optional, can the build gracefully degrade when an unsuitable llvm-config is found? Note that removing llvm-devel is not always possible as it requires superuser access and may affect normal operations of the machine.
OS: Unspecified → Linux
Hardware: Unspecified → x86_64
Component: Untriaged → Build Config
This is being reported by several Fedora 25 users.
Status: UNCONFIRMED → NEW
Ever confirmed: true
Summary: Linux build of central bails hard on old llvm-config → Stylo build mistakenly claims it requires >= LLVM 3.9.x when llvm-config is detected
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → DUPLICATE
Component: Build Config → General
Product: Firefox → Firefox Build System
You need to log in before you can comment on or make changes to this bug.