Date: Sat, 12 Oct 2013 11:51:35 -0500 From: Scot Hetzel <swhetzel@gmail.com> To: Dewayne-remote <dewayne.geraghty@heuristicsystems.com.au> Cc: FreeBSD Ports <ports@freebsd.org> Subject: Re: cyrus-sasl2-saslauthd package failure. Message-ID: <CACdU%2Bf_-HXkgjjmvDP4pZ1Onn2LtkpG2Zxe1jpOOLW0NtTxQ8Q@mail.gmail.com> In-Reply-To: <52590C07.9080805@heuristicsystems.com.au> References: <52590C07.9080805@heuristicsystems.com.au>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, Oct 12, 2013 at 3:44 AM, Dewayne-remote <dewayne.geraghty@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.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CACdU%2Bf_-HXkgjjmvDP4pZ1Onn2LtkpG2Zxe1jpOOLW0NtTxQ8Q>