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
_______________________________________________
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"

Reply via email to