Bug 208537 - security/softhsm configure checking for Botan >= 1.10.0... no
Summary: security/softhsm configure checking for Botan >= 1.10.0... no
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: amd64 Any
: --- Affects Only Me
Assignee: freebsd-ports-bugs (Nobody)
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-04-05 04:13 UTC by Alastair Hogge
Modified: 2016-04-12 13:12 UTC (History)
2 users (show)

See Also:
bugzilla: maintainer-feedback? (jaap)


Attachments
config.log from failed configure (72.49 KB, text/x-log)
2016-04-11 00:11 UTC, Alastair Hogge
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Alastair Hogge 2016-04-05 04:13:30 UTC
Hi,

security/softhsm fails to build with poudriere-devel-3.1.99.20160216 when the configure stage fails to find Botan:

build started at Tue Apr  5 13:59:19 AEST 2016
port directory: /usr/ports/security/softhsm
building for: FreeBSD pkg.aux.io. 11.0-CURRENT FreeBSD 11.0-CURRENT amd64
maintained by: jaap@NLnetLabs.nl
Makefile ident:      $FreeBSD: head/security/softhsm/Makefile 412349 2016-04-01 14:25:16Z mat $
Poudriere version: 3.2-pre
Host OSVERSION: 1100102
Jail OSVERSION: 1100099

---Begin Environment---
PKGREPOSITORY=/tmp/pkgs
PACKAGES=/tmp/pkgs
SHELL=/bin/csh
UNAME_v=FreeBSD 11.0-CURRENT
UNAME_r=11.0-CURRENT
BLOCKSIZE=K
MAIL=/var/mail/root
STATUS=1
ARCH=amd64
SAVED_TERM=screen-256color
NO_WARNING_PKG_INSTALL_EOL=yes
MASTERMNT=/usr/local/poudriere/data/.m/kropotkin-head-kropotkin/ref
UID=0
FORCE_PACKAGE=yes
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/root/bin
_JAVA_VERSION_LIST_REGEXP=1.6\|1.7\|1.8\|1.6+\|1.7+\|1.8+
POUDRIERE_BUILD_TYPE=bulk
OSREL=11.0
_OSRELEASE=11.0-CURRENT
PYTHONBASE=/usr/local
OLDPWD=/root
_SMP_CPUS=8
PWD=/
HAVE_COMPAT_IA32_KERN=YES OPSYS=FreeBSD
MASTERNAME=kropotkin-head-kropotkin
SCRIPTPREFIX=/usr/local/share/poudriere
_JAVA_VENDOR_LIST_REGEXP=openjdk\|oracle\|sun
USER=root
HOME=/root
POUDRIERE_VERSION=3.2-pre
SCRIPTPATH=/usr/local/share/poudriere/testport.sh
TRYBROKEN=yes
CONFIGURE_MAX_CMD_LEN=262144
LIBEXECPREFIX=/usr/local/libexec/poudriere
LOCALBASE=/usr/local
PACKAGE_BUILDING=yes
_JAVA_OS_LIST_REGEXP=native\|linux
OSVERSION=1100099
---End Environment---

---Begin OPTIONS List---
---End OPTIONS List---

--CONFIGURE_ARGS--
--with-botan=/usr/local --with-sqlite3=/usr/local  --localstatedir=/var --prefix=/usr/local ${_LATE_CONFIGURE_ARGS}
--End CONFIGURE_ARGS--

--CONFIGURE_ENV--
XDG_DATA_HOME=/wrkdirs/usr/ports/security/softhsm/work  XDG_CONFIG_HOME=/wrkdirs/usr/ports/security/softhsm/work  HOME=/wrkdirs/usr/ports/security/softhsm/work TMPDIR="/tmp" SHELL=/bin/sh CONFIG_SHELL=/bin/sh CONFIG_SITE=/usr/ports/Templates/config.site lt_cv_sys_max_cmd_len=262144
--End CONFIGURE_ENV--

--MAKE_ENV--
XDG_DATA_HOME=/wrkdirs/usr/ports/security/softhsm/work  XDG_CONFIG_HOME=/wrkdirs/usr/ports/security/softhsm/work  HOME=/wrkdirs/usr/ports/security/softhsm/work TMPDIR="/tmp" NO_PIE=yes WITHOUT_DEBUG_FILES=yes WITHOUT_KERNEL_SYMBOLS=yes SHELL=/bin/sh NO_LINT=YES PREFIX=/usr/local  LOCALBASE=/usr/local  LIBDIR="/usr/lib"  CC="cc" CFLAGS="-O2 -pipe -march=sandybridge  -fstack-protector -fno-strict-aliasing"  CPP="cpp" CPPFLAGS=""  LDFLAGS=" -fstack-protector" LIBS=""  CXX="c++" CXXFLAGS="-O2 -pipe -march=sandybridge -fstack-protector -fno-strict-aliasing "  MANPREFIX="/usr/local" BSD_INSTALL_PROGRAM="install  -s -m 555"  BSD_INSTALL_LIB="install  -s -m 444"  BSD_INSTALL_SCRIPT="install  -m 555"  BSD_INSTALL_DATA="install  -m 0644"  BSD_INSTALL_MAN="install  -m 444"
--End MAKE_ENV--

--PLIST_SUB--
OSREL=11.0
PREFIX=%D
LOCALBASE=/usr/local
RESETPREFIX=/usr/local
PORTDOCS=""
PORTEXAMPLES=""
LIB32DIR=lib
DOCSDIR="share/doc/softhsm"
EXAMPLESDIR="share/examples/softhsm"
DATADIR="share/softhsm"
WWWDIR="www/softhsm"
ETCDIR="etc/softhsm"
--End PLIST_SUB--

--SUB_LIST--
PREFIX=/usr/local
LOCALBASE=/usr/local
DATADIR=/usr/local/share/softhsm
DOCSDIR=/usr/local/share/doc/softhsm
EXAMPLESDIR=/usr/local/share/examples/softhsm
WWWDIR=/usr/local/www/softhsm
ETCDIR=/usr/local/etc/softhsm
--End SUB_LIST--

---Begin make.conf---
USE_PACKAGE_DEPENDS=yes
BATCH=yes
WRKDIRPREFIX=/wrkdirs
PORTSDIR=/usr/ports
PACKAGES=/packages
DISTDIR=/distfiles
#### /usr/local/etc/kropotkin-make.conf ####
ALWAYS_CHECK_MAKE=YES
CPUTYPE?=corei7-avx
DEFAULT_VERSIONS=       perl5=5.22
KERNCONF=		KROPOTKIN
MALLOC_PRODUCTION=
NO_MODULES=
PERL5_DEFAULT=          5.22
WITH_OPENSSL_PORT=
WITH_PKG=		devel
WITH_SSP_PORTS=
---End make.conf---
=======================<phase: check-sanity   >============================
===>  License BSD2CLAUSE accepted by the user  
===========================================================================
=======================<phase: pkg-depends    >============================
===>   softhsm-1.3.7_3 depends on file: /usr/local/sbin/pkg - not found
===>   Installing existing package /packages/All/pkg-1.7.99.0.txz  
[pkg.aux.io.] Installing pkg-1.7.99.0...
[pkg.aux.io.] Extracting pkg-1.7.99.0: .......... done
Message from pkg-1.7.99.0:
If you are upgrading from the old package format, first run:

  # pkg2ng
===>   softhsm-1.3.7_3 depends on file: /usr/local/sbin/pkg - found
===>   Returning to build of softhsm-1.3.7_3  
===========================================================================
=======================<phase: fetch-depends  >============================
===========================================================================
=======================<phase: fetch          >============================
===>  License BSD2CLAUSE accepted by the user
===>   softhsm-1.3.7_3 depends on file: /usr/local/sbin/pkg - found
===> Fetching all distfiles required by softhsm-1.3.7_3 for building  
===========================================================================
=======================<phase: checksum       >============================
===>  License BSD2CLAUSE accepted by the user
===>   softhsm-1.3.7_3 depends on file: /usr/local/sbin/pkg - found
===> Fetching all distfiles required by softhsm-1.3.7_3 for building
=> SHA256 Checksum OK for softhsm-1.3.7.tar.gz.  
===========================================================================
=======================<phase: extract-depends>============================
===========================================================================
=======================<phase: extract        >============================
===>  License BSD2CLAUSE accepted by the user
===>   softhsm-1.3.7_3 depends on file: /usr/local/sbin/pkg - found
===> Fetching all distfiles required by softhsm-1.3.7_3 for building
===>  Extracting for softhsm-1.3.7_3
=> SHA256 Checksum OK for softhsm-1.3.7.tar.gz.  
===========================================================================
=======================<phase: patch-depends  >============================
===========================================================================
=======================<phase: patch          >============================
===>  Patching for softhsm-1.3.7_3  
===========================================================================
=======================<phase: build-depends  >============================
===========================================================================
=======================<phase: lib-depends    >============================
===>   softhsm-1.3.7_3 depends on shared library: libbotan-1.10.so - not found
===>   Installing existing package /packages/All/botan110-1.10.12.txz  
[pkg.aux.io.] Installing botan110-1.10.12...
[pkg.aux.io.] `-- Installing gmp-5.1.3_3...
[pkg.aux.io.] |   `-- Installing indexinfo-0.2.4...
[pkg.aux.io.] |   `-- Extracting indexinfo-0.2.4: .... done
[pkg.aux.io.] `-- Extracting gmp-5.1.3_3: .......... done
[pkg.aux.io.] `-- Installing openssl-1.0.2_11...
[pkg.aux.io.] `-- Extracting openssl-1.0.2_11: .......... done
[pkg.aux.io.] Extracting botan110-1.10.12: .......... done
Message from openssl-1.0.2_11:
Copy /usr/local/openssl/openssl.cnf.sample to /usr/local/openssl/openssl.cnf
and edit it to fit your needs.
===>   softhsm-1.3.7_3 depends on shared library: libbotan-1.10.so - found (/usr/local/lib/libbotan-1.10.so)
===>   Returning to build of softhsm-1.3.7_3
===>   softhsm-1.3.7_3 depends on shared library: libsqlite3.so - not found
===>   Installing existing package /packages/All/sqlite3-3.11.1.txz  
[pkg.aux.io.] Installing sqlite3-3.11.1...
[pkg.aux.io.] `-- Installing libedit-3.1.20150325_2...
[pkg.aux.io.] `-- Extracting libedit-3.1.20150325_2: .......... done
[pkg.aux.io.] Extracting sqlite3-3.11.1: .......... done
===>   softhsm-1.3.7_3 depends on shared library: libsqlite3.so - found (/usr/local/lib/libsqlite3.so)
===>   Returning to build of softhsm-1.3.7_3  
===========================================================================
====>> Recording filesystem state for prebuild... done  
=======================<phase: configure      >============================
===>   softhsm-1.3.7_3 depends on shared library: libbotan-1.10.so - found (/usr/local/lib/libbotan-1.10.so)
===>   softhsm-1.3.7_3 depends on shared library: libsqlite3.so - found (/usr/local/lib/libsqlite3.so)
===>  Configuring for softhsm-1.3.7_3  
configure: loading site script /usr/ports/Templates/config.site
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... (cached) /bin/mkdir -p
checking for gawk... (cached) /usr/bin/awk
checking whether make sets $(MAKE)... yes
checking whether the C++ compiler works... yes
checking for C++ compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C++ compiler... yes
checking whether c++ accepts -g... yes
checking for style of include used by make... GNU
checking dependency style of c++... gcc3
checking for gcc... cc
checking whether we are using the GNU C compiler... yes
checking whether cc accepts -g... yes
checking for cc option to accept ISO C89... none needed
checking dependency style of cc... gcc3
checking for Botan >= 1.10.0... no
checking what are the Botan includes... -I/usr/local/include
checking what are the Botan libs... -L/usr/local/lib -lbotan
checking for Botan >= v1.8.0 ... no
configure: error: Missing the correct version of the Botan library
===>  Script "configure" failed unexpectedly.  
Please report the problem to jaap@NLnetLabs.nl [maintainer] and attach the
"/wrkdirs/usr/ports/security/softhsm/work/softhsm-1.3.7/config.log" including
the output of the failure of your make command. Also, it might be a good idea
to provide an overview of all packages installed on your system (e.g. a
/usr/local/sbin/pkg-static info -g -Ea).
*** Error code 1

Stop.
make: stopped in /usr/ports/security/softhsm
build of security/softhsm ended at Tue Apr  5 13:59:23 AEST 2016
build time: 00:00:04
!!! build failure encountered !!!
Comment 1 Jaap Akkerhuis 2016-04-08 21:09:45 UTC
(In reply to Alastair Hogge from comment #0)

I'm afraid I cannot recreate the problem.

The odd thing is that in your log the proper botan package is installed but configure cannot find it. That doesn't make sense to me.
Comment 2 Alastair Hogge 2016-04-11 00:11:09 UTC
Created attachment 169167 [details]
config.log from failed configure
Comment 3 Alastair Hogge 2016-04-11 00:13:33 UTC
I have also noticed that if poudriere(8) is run with the -z option, the build fails.  If poudriere(8) is run without a set, the build succeeds.
Comment 4 Alastair Hogge 2016-04-11 01:24:32 UTC
Building security/openssl without option MD2 fixes building softhsm
Comment 5 Jaap Akkerhuis 2016-04-11 08:24:04 UTC
(In reply to Alastair Hogge from comment #4)

> Building security/openssl without option MD2 fixes building softhsm

The MD2 option is marked obsolete by security/openssl; There has multiple vulnerabilities found and its use is strongly discouraged. It is also declared HISTORIC by RFC 6149 (See <https://www.rfc-editor.org/rfc/rfc6149.txt>).
Comment 6 Alastair Hogge 2016-04-11 11:53:35 UTC
(In reply to jaap from comment #5)

> The MD2 option is marked obsolete by security/openssl; There has multiple
> vulnerabilities found and its use is strongly discouraged. It is also declared
> HISTORIC by RFC 6149 (See <https://www.rfc-editor.org/rfc/rfc6149.txt>).

Yeah, tho it is enabled by default:
https://svnweb.freebsd.org/ports/head/security/openssl/Makefile?revision=412526&view=markup
Comment 7 Jaap Akkerhuis 2016-04-11 14:29:47 UTC
(In reply to Alastair Hogge from comment #6)

Given the revision log of openssl, it seems that the problem needs to be solved there.
Comment 8 Alastair Hogge 2016-04-12 13:12:39 UTC
Issue is with default build option of MD2 insecurity/openssl.  Building security/openssl without MD2 allows the security/softhsm configure script to pass when checking for the existence of Botan >= 1.10.0