cyrus-sasl2-saslauthd package failure.
Scot Hetzel
swhetzel at gmail.com
Sat Oct 12 16:51:37 UTC 2013
On Sat, Oct 12, 2013 at 3:44 AM, Dewayne-remote
<dewayne.geraghty at heuristicsystems.com.au> wrote:
> While attempting to rebuild all my 500+ ports for servers only, I came
> across this issue with saslauthd.
>
> The installation is successful, but the package assembly fails with:
> tar: etc/rc.d/saslauthd: Cannot stat: No such file or directory
>
> But the file is correctly installed in staging
> # ls -l /staging/usr/local/etc/rc.d/saslauthd /usr/local/etc/rc.d/saslauthd
> ls: /usr/local/etc/rc.d/saslauthd: No such file or directory
> -r-xr-xr-x 1 root wheel 940 Oct 12 19:28
> /staging/usr/local/etc/rc.d/saslauthd
>
> The command to build is:
> make __MAKE_CONF=/dev/null DISTDIR=/distfiles WRKDIRPREFIX=/var/ports
> PACKAGES= /packages STAGEDIR=/staging FAVORITE_COMPILER=gcc
> DISABLE_LICENSES=yes -DBATCH DEFAULT_VERSIONS=perl5=5.16 python=2.7
> python2=2.7 apache=22 clean deinstall package
>
> The process succeeds with the build and installation into $STAGEDIR
>
> The tail of the log follows:
> cd
> /var/ports/usr/ports/security/cyrus-sasl2-saslauthd/work/cyrus-sasl-2.1.26/saslauthd
> && make saslcache
> cc -DHAVE_CONFIG_H
> -DSASLAUTHD_CONF_FILE_DEFAULT=\"/usr/local/etc/saslauthd.conf\" -I. -I.
> -I.. -I. -I./include -I./include -I./../include -I/usr/include
> -DKRB5_HEIMDAL -O2 -pipe -nostdinc -I/usr/include -fno-strict-aliasing
> -MT saslcache.o -MD -MP -MF .deps/saslcache.Tpo -c -o saslcache.o
> saslcache.c
> In file included from cache.h:44,
> from saslcache.c:52:
> saslauthd.h:190:1: warning: "KRB5_HEIMDAL" redefined
> <command-line>: warning: this is the location of the previous definition
> mv -f .deps/saslcache.Tpo .deps/saslcache.Po
> cc -O2 -pipe -nostdinc -I/usr/include -fno-strict-aliasing
> -Wl,-rpath=/usr/lib:/usr/local/lib -L/usr/lib -o saslcache saslcache.o
> cd
> /var/ports/usr/ports/security/cyrus-sasl2-saslauthd/work/cyrus-sasl-2.1.26/saslauthd
> && make testsaslauthd
> `testsaslauthd' is up to date.
> ===> Installing for cyrus-sasl-saslauthd-2.1.26
> ===> Generating temporary packing list
> ===> Checking if security/cyrus-sasl2-saslauthd already installed
> test -z "/usr/local/sbin" || /bin/mkdir -p "/usr/local/sbin"
> install -s -o root -g wheel -m 555 saslauthd testsaslauthd
> '/usr/local/sbin'
> /bin/sh ./config/mkinstalldirs /usr/local/man/man8
> install -o root -g wheel -m 444 ./saslauthd.mdoc
> /usr/local/man/man8/saslauthd.8
> ===> Staging rc.d startup script(s)
> /bin/mkdir -p -m 770 /var/run/saslauthd
> /usr/sbin/chown cyrus:mail /var/run/saslauthd
> ****************************************************************************
>
> To run saslauthd from startup, add saslauthd_enable="YES" in your
> /etc/rc.conf.
>
> ****************************************************************************
> ===> Compressing manual pages for cyrus-sasl-saslauthd-2.1.26
> ===> Registering installation for cyrus-sasl-saslauthd-2.1.26
> ===> SECURITY REPORT:
> This port has installed the following files which may act as network
> servers and may therefore pose a remote security risk to the system.
> /usr/local/sbin/saslauthd
>
> This port has installed the following startup scripts which may cause
> these network services to be started at boot time.
> /usr/local/etc/rc.d/saslauthd
>
> If there are vulnerabilities in these programs there may be a security
> risk to the system. FreeBSD makes no guarantee about the security of
> ports included in the Ports Collection. Please type 'make deinstall'
> to deinstall the port if this is a concern.
>
> For more information, and contact details about the security
> status of this software, see the following webpage:
> http://cyrusimap.web.cmu.edu/
> ===> Building package for cyrus-sasl-saslauthd-2.1.26
> tar: etc/rc.d/saslauthd: Cannot stat: No such file or directory
> tar: Error exit delayed from previous errors.
> pkg_create: make_dist: tar command failed with code 256
> *** [do-package] Error code 1
>
> ------------------------------End of saslauthd
> log---------------------------------
> A similar result is achieved for samba36, samba4, isc-dhcp42-server; viz
> ===> Building package for isc-dhcp42-server-4.2.5
> tar: etc/rc.d/isc-dhcpd: Cannot stat: No such file or directory
> tar: Error exit delayed from previous errors.
> pkg_create: make_dist: tar command failed with code 256
> *** [do-package] Error code 1
>
> # ls -l /staging/usr/local/etc/rc.d/isc-dhcpd /usr/local/etc/rc.d/isc-dhcpd
> ls: /usr/local/etc/rc.d/isc-dhcpd: No such file or directory
> -r-xr-xr-x 1 root wheel 11816 Oct 12 19:39
> /staging/usr/local/etc/rc.d/isc-dhcpd
>
> I can't see what I need to workaround to avoid this issue?
The problem is that you defined STAGEDIR, but these ports are marked NO_STAGE
I tried to add a .undef STAGEDIR to bsd.port.mk:
--- /usr/ports/Mk.bsd.port.mk
+++ /usr/ports/Mk.bsd.port.mk
@@ -1932,6 +1932,8 @@
.if !defined(NO_STAGE)
.include "${PORTSDIR}/Mk/bsd.stage.mk"
+.else
+.undef STAGEDIR
.endif
The above works, if you put STAGEDIR into /etc/make.conf.
# echo 'STAGEDIR=/stagetest' >> /etc/make.conf
# make -V STAGEDIR
But it doesn't work if you define STAGEDIR with the make command:
# make STAGEDIR=/stage -V STAGEDIR
/stage
Does anyone know how to make this work?
--
DISCLAIMER:
No electrons were maimed while sending this message. Only slightly bruised.
More information about the freebsd-ports
mailing list