Date: Mon, 13 Feb 2017 10:38:52 +0100 From: Christian Ullrich <chris@chrullrich.net> To: <freebsd-ports@freebsd.org> Subject: poudriere and ports looking for specific files Message-ID: <649c74ae-baf4-3bc1-c7d1-e71acea4061f@chrullrich.net>
next in thread | raw e-mail | index | archive | help
Hello, I have a problem getting some ports to build correctly in a poudriere environment, when their Makefile determines dependencies by looking for specific files. The following example is from dns/samba-nsupdate: # Try to find appropriate GSSAPI libs .if defined(KRB5_HOME) && exists(${KRB5_HOME}/lib/libgssapi_krb5.so) CONFIGURE_ARGS+= --with-gssapi="${KRB5_HOME}" .elif defined(HEIMDAL_HOME) && exists(${HEIMDAL_HOME}/lib/libgssapi.so) CONFIGURE_ARGS+= --with-gssapi="${HEIMDAL_HOME}" .elif exists(/usr/lib/libkrb5.so) && exists(/usr/bin/krb5-config) CONFIGURE_ARGS+= --with-gssapi="/usr" .else LIB_DEPENDS+= libkrb5.so:security/heimdal CONFIGURE_ARGS+= --with-gssapi="${LOCALBASE}" .endif I want to build with MIT Kerberos from ports, which is what the first .if block is looking for. Since poudriere always presents a pristine file system to ports, this check does not find the library, and eventually the port falls back to depending on Heimdal instead. There are quite a few ports that contain logic like this, enabling a dependency based on whether it is installed already. They should probably be changed to use OPTIONS instead to declare the dependency rather than passively guess at it, but for right now, they don't. Does poudriere not support this at all? Thanks! -- Christian
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?649c74ae-baf4-3bc1-c7d1-e71acea4061f>