Date: Tue, 11 Feb 2014 11:42:12 -0700 From: John Nielsen <john@jnielsen.net> To: bdrewery@FreeBSD.org Cc: freebsd-pkg@FreeBSD.org Subject: Poudriere bug report Message-ID: <5FBD8707-CA24-4777-BF86-76C9C2C00942@jnielsen.net>
next in thread | raw e-mail | index | archive | help
Hello- First off, thanks for all your work on poudriere and pkg, both are = already making my life easier. I have an amd64 host running FreeBSD 10-STABLE which I use as a build = host for another box with an Alix board (geode processor). I have, among = other settings, "CPUTYPE=3Dgeode" in the make.conf for the poudriere = 32-bit Alix jail. I've built packages for the Alix using poudriere = before, but today I hit a snag. Running this command: # poudriere options -f /home/john/alix_ports.txt -j alix attempted to build dialog4ports numerous times, and each failed with = this error (full text from one failure below): error: unknown target CPU 'geode' Since I didn't have dialog4ports installed on the host, I assume the = "make config" job was trying to build it--apparently using the jail's = generated "make.conf" from /usr/local/etc/poudriere.d/alix-make.conf. = The 64-bit host doesn't know about the 32-bit geode CPU target, so it = failed. Probably this doesn't happen very often (I was only missing dialog4ports = on the host because I pruned a whole bunch of packages prior to a recent = upgrade), but building anything for the host using anything other than = the real /etc/make.conf seems like a bad idea. I was able to work around the problem by installing dialog4ports on the = host myself before invoking "poudriere options". There are obviously a = few ways to prevent this from happening, but here is my suggestion: * check for the existence of dialog4ports on the host before allowing = "poudriere options" to run * If it doesn't exist, fail with an error message suggesting that the = user either install dialog4ports on the host via "pkg install" or other = means, or allow poudriere to work around the problem * add a flag or command to poudriere allowing it to build and install = dialog4ports using the host's /etc/make.conf and whatever ports tree the = user specifies (or poudriere's "default" tree by default), either = separately from or prior to "poudriere options". Thanks! JN =3D=3D=3D> Setting user-specified options for links-2.8,1 and = dependencies =3D=3D=3D> Building/installing dialog4ports as it is required for the = config dialog =3D=3D=3D> Cleaning for dialog4ports-0.1.5_2 =3D=3D=3D> License BSD2CLAUSE accepted by the user =3D=3D=3D> dialog4ports-0.1.5_2 depends on file: /usr/local/sbin/pkg - = found =3D=3D=3D> Fetching all distfiles required by dialog4ports-0.1.5_2 for = building =3D=3D=3D> Extracting for dialog4ports-0.1.5_2 =3D> SHA256 Checksum OK for dialog4ports-0.1.5.tar.gz. =3D=3D=3D> Patching for dialog4ports-0.1.5_2 =3D=3D=3D> Configuring for dialog4ports-0.1.5_2 =3D=3D=3D> Building for dialog4ports-0.1.5_2 --- objwarn --- --- dialog4ports.o --- --- objwarn --- Warning: Object directory not changed from original = /opt/local/poudriere/ports/default/ports-mgmt/dialog4ports/work/dialog4por= ts-0.1.5 --- mixedlist.o --- --- dialog4ports.o --- cc -O2 -pipe -DNO_MALLOC_EXTRAS -march=3Dgeode -fno-strict-aliasing = -std=3Dgnu99 -Qunused-arguments -fstack-protector -Wsystem-headers = -Werror -Wall -Wno-format-y2k -W -Wno-unused-parameter = -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wreturn-type = -Wcast-qual -Wwrite-strings -Wswitch -Wshadow -Wunused-parameter = -Wcast-align -Wchar-subscripts -Winline -Wnested-externs = -Wredundant-decls -Wold-style-definition -Wmissing-variable-declarations = -Wno-pointer-sign -Wno-empty-body -Wno-string-plus-int -c dialog4ports.c --- mixedlist.o --- cc -O2 -pipe -DNO_MALLOC_EXTRAS -march=3Dgeode -fno-strict-aliasing = -std=3Dgnu99 -Qunused-arguments -fstack-protector -Wsystem-headers = -Werror -Wall -Wno-format-y2k -W -Wno-unused-parameter = -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wreturn-type = -Wcast-qual -Wwrite-strings -Wswitch -Wshadow -Wunused-parameter = -Wcast-align -Wchar-subscripts -Winline -Wnested-externs = -Wredundant-decls -Wold-style-definition -Wmissing-variable-declarations = -Wno-pointer-sign -Wno-empty-body -Wno-string-plus-int -c mixedlist.c --- dialog4ports.o --- error: unknown target CPU 'geode' *** [dialog4ports.o] Error code 1 make[5]: stopped in = /opt/local/poudriere/ports/default/ports-mgmt/dialog4ports/work/dialog4por= ts-0.1.5 --- mixedlist.o --- error: unknown target CPU 'geode' *** [mixedlist.o] Error code 1 make[5]: stopped in = /opt/local/poudriere/ports/default/ports-mgmt/dialog4ports/work/dialog4por= ts-0.1.5 2 errors make[5]: stopped in = /opt/local/poudriere/ports/default/ports-mgmt/dialog4ports/work/dialog4por= ts-0.1.5 =3D=3D=3D> Compilation failed unexpectedly. Try to set MAKE_JOBS_UNSAFE=3Dyes and rebuild before reporting the = failure to the maintainer. *** Error code 1 Stop. make[4]: stopped in = /opt/local/poudriere/ports/default/ports-mgmt/dialog4ports *** Error code 1 Stop. make[3]: stopped in = /opt/local/poudriere/ports/default/ports-mgmt/dialog4ports
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?5FBD8707-CA24-4777-BF86-76C9C2C00942>