# Poudriere build of sendmail broken on FreeBSD 11 & 12.0



## MrLudo (Jul 22, 2016)

The build of sendmail fails during staging when building on any of my jails using:

11.0-BETA1 r302967  amd64
12.0-CURRENT r302975 amd64

This happens two recently updated  ports trees I have in use:

head  svn  2016-07-18 11:19:38
next  portsnap 2016-07-18 11:19:19

The problem occurs during staging and appears to be that on O/S > 11 /usr/bin/strip gets upset while doing `/usr/bin/strip /wrkdirs/usr/ports/mail/sendmail/work/stage/usr/local/sbin/*`

The following is seen in the logging:


```
strip: fchmod /wrkdirs/usr/ports/mail/sendmail/work/stage/usr/local/sbin/sendmail failed: Operation not permitted
```

I hacked around with the Makefile to get more info...


```
id
uid=65534(nobody) gid=65534(nobody) groups=65534(nobody)
env
MAKEFLAGS= .MAKE.LEVEL.ENV=MAKELEVEL ARCH=amd64 HAVE_COMPAT_IA32_KERN=YES\ LINUX_OSRELEASE=2.6.32 OPSYS=FreeBSD OSREL=11.0 OSVERSION=1100120 _OSRELEASE=11.0-BETA1
MAKELEVEL=1
META_MODE=normal
.MAKE.LEVEL.ENV=MAKELEVEL
NO_DEPENDS=yes
SHELL=/usr/sbin/nologin
HOME=/nonexistent
USER=nobody
UNAME_v=FreeBSD 11.0-BETA1 r302967
UNAME_r=11.0-BETA1
BLOCKSIZE=K
MAIL=/var/mail/nobody
STATUS=1
OPSYS=FreeBSD
ARCH=amd64
SAVED_TERM=xterm
MASTERMNT=/u1/jails/poudriere/data/.m/fm64v11-next-default/ref
HTTP_PROXY=http://proxy.ci.com.au:3128
FORCE_PACKAGE=yes
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/nonexistent/bin
_JAVA_VERSION_LIST_REGEXP=1.6\|1.7\|1.8\|1.6+\|1.7+\|1.8+
POUDRIERE_BUILD_TYPE=bulk
PKGNAME=sendmail+tls+sasl2+ldap-8.15.2_1
OSREL=11.0
_OSRELEASE=11.0-BETA1
PYTHONBASE=/usr/local
OLDPWD=/
_SMP_CPUS=8
PWD=/usr/ports/mail/sendmail
HAVE_COMPAT_IA32_KERN=YES LINUX_OSRELEASE=2.6.32
MASTERNAME=fm64v11-next-default
SCRIPTPREFIX=/usr/local/share/poudriere
_JAVA_VENDOR_LIST_REGEXP=openjdk\|oracle\|sun
POUDRIERE_VERSION=3.2-pre
SCRIPTPATH=/usr/local/share/poudriere/bulk.sh
CONFIGURE_MAX_CMD_LEN=262144
LIBEXECPREFIX=/usr/local/libexec/poudriere
LOCALBASE=/usr/local
PACKAGE_BUILDING=yes
_JAVA_OS_LIST_REGEXP=native\|linux
OSVERSION=1100120
FTP_PROXY=http://proxy.xxxxx:3128
ls -lo /wrkdirs/usr/ports/mail/sendmail/work/stage/usr/local/sbin/*
-rwxr-xr-x  1 nobody  nobody  -  95481 Jul 22 07:07 /wrkdirs/usr/ports/mail/sendmail/work/stage/usr/local/sbin/editmap
-rwxr-xr-x  1 nobody  nobody  -  84390 Jul 22 07:07 /wrkdirs/usr/ports/mail/sendmail/work/stage/usr/local/sbin/mailstats
-rwxr-xr-x  1 nobody  nobody  -  99334 Jul 22 07:07 /wrkdirs/usr/ports/mail/sendmail/work/stage/usr/local/sbin/makemap
-rwxr-xr-x  1 nobody  nobody  -  99329 Jul 22 07:07 /wrkdirs/usr/ports/mail/sendmail/work/stage/usr/local/sbin/praliases
-rwxr-sr-x  1 nobody  nobody  - 819168 Jul 22 07:07 /wrkdirs/usr/ports/mail/sendmail/work/stage/usr/local/sbin/sendmail

/usr/bin/strip /wrkdirs/usr/ports/mail/sendmail/work/stage/usr/local/sbin/*
strip: fchmod /wrkdirs/usr/ports/mail/sendmail/work/stage/usr/local/sbin/sendmail failed: Operation not permitted
*** Error code 1
```

I have temporarily worked around the problem by applying the folowing patch the the Makefile


```
--- Makefile.orig  2016-06-27 10:20:29.152427000 +1000
+++ Makefile  2016-07-22 11:49:40.672278000 +1000
@@ -220,7 +220,12 @@
  ${RM} ${STAGEDIR}${PREFIX}/man/cat*/*
  ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/vacation
  ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/rmail
-  ${STRIP_CMD} ${STAGEDIR}${PREFIX}/sbin/*
+  # strip fails on ${STAGEDIR}${PREFIX}/sbin/sendmail
+  #${STRIP_CMD} ${STAGEDIR}${PREFIX}/sbin/*
+  ${STRIP_CMD} ${STAGEDIR}${PREFIX}/sbin/editmap
+  ${STRIP_CMD} ${STAGEDIR}${PREFIX}/sbin/mailstats
+  ${STRIP_CMD} ${STAGEDIR}${PREFIX}/sbin/makemap
+  ${STRIP_CMD} ${STAGEDIR}${PREFIX}/sbin/praliases
  ${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/*
post-install-DOCS-on:
```

I temporarily added the same debugging to a build using a FreeBSD 10 jail running 10.3-RELEASE-p5  amd64  updated via ftp  on 2016-07-02 10:10:43

And it appears to do exactly the same thing but it works.  The only obvious difference is that the FreeBSD 10 jail is using the gnu binutils strip command.

Can anyone assist or point me to the correct place to report the issue ?

I can provide more logging if required...


----------



## SirDice (Jul 22, 2016)

MrLudo said:


> Can anyone assist or point me to the correct place to report the issue ?


Right here: https://bugs.freebsd.org/bugzilla/enter_bug.cgi

Note, the build cluster isn't reporting any errors. So make sure it's not some local setting.

http://portsmon.freebsd.org/portoverview.py?category=mail&portname=sendmail


----------



## MrLudo (Aug 20, 2016)

Staging bug fixed.  See https://svnweb.freebsd.org/changeset/ports/420495 .


----------

