Bug 237825

Summary: sysutils/bareos-server: bcopy, bextract, and bscan must be linked to the pthread library
Product: Ports & Packages Reporter: Trond.Endrestol
Component: Individual Port(s)Assignee: Jose Alonso Cardenas Marquez <acm>
Status: Closed FIXED    
Severity: Affects Only Me CC: Trond.Endrestol, ohartmann
Priority: --- Keywords: patch
Version: LatestFlags: bugzilla: maintainer-feedback? (acm)
Hardware: Any   
OS: Any   

Description Trond.Endrestol 2019-05-10 10:19:33 UTC
bareos-server is configured like this:

===> The following configuration options are available for bareos-server-18.2.6:
     MTX=off: Install mtx for control of autochanger devices
     NDMP=off: Enable build of NDMP support
     NLS=off: Native Language Support
     PYTHON=off: Python bindings or support
     SCSICRYPTO=off: Build LTO AME crypto plugin
====> Cryptographic library: you have to select exactly one of them
     OPENSSL=on: SSL/TLS support via OpenSSL
     GNUTLS=off: SSL/TLS support via GnuTLS
====> Database support: you have to select exactly one of them
     SQLITE3=off: SQLite 3 database support
     MYSQL=off: MySQL database support
     PGSQL=on: PostgreSQL database support
===> Use 'make config' to modify these settings

Which leads to:

[177/190] : && /usr/local/libexec/ccache/c++  -O2 -pipe -fno-omit-frame-pointer -fstack-protector-strong -fno-strict-aliasing -Wall -Wno-deprecated-register -O2 -pipe -fno-omit-frame-pointer -fstack-protector-strong -fno-strict-aliasing  -L/usr/local/lib -ljansson -L/usr/local/lib  -L/usr/local/lib -fstack-protector-strong core/src/stored/CMakeFiles/bcopy.dir/bcopy.cc.o  -o core/src/stored/bcopy -L/usr/local/lib -Wl,-rpath,/usr/local/lib -lintl core/src/stored/libbareossd.so -lbareos -lintl && :
FAILED: core/src/stored/bcopy
: && /usr/local/libexec/ccache/c++  -O2 -pipe -fno-omit-frame-pointer -fstack-protector-strong -fno-strict-aliasing -Wall -Wno-deprecated-register -O2 -pipe -fno-omit-frame-pointer -fstack-protector-strong -fno-strict-aliasing  -L/usr/local/lib -ljansson -L/usr/local/lib  -L/usr/local/lib -fstack-protector-strong core/src/stored/CMakeFiles/bcopy.dir/bcopy.cc.o  -o core/src/stored/bcopy -L/usr/local/lib -Wl,-rpath,/usr/local/lib -lintl core/src/stored/libbareossd.so -lbareos -lintl && :
ld: error: core/src/stored/libbareossd.so: undefined reference to pthread_create
c++: error: linker command failed with exit code 1 (use -v to see invocation)
[178/190] /usr/local/libexec/ccache/c++  -DVERSION=\"18.2.6\" -D_FILE_OFFSET_BITS=64 -Dpython_sd_EXPORTS -I/usr/local/include -I/usr/local/include/python2.7 -Icore/src -O2 -pipe -fno-omit-frame-pointer -fstack-protector-strong -fno-strict-aliasing -Wall -Wno-deprecated-register -O2 -pipe -fno-omit-frame-pointer -fstack-protector-strong -fno-strict-aliasing -fPIC   -std=gnu++11 -MD -MT core/src/plugins/stored/CMakeFiles/python-sd.dir/python-sd.cc.o -MF core/src/plugins/stored/CMakeFiles/python-sd.dir/python-sd.cc.o.d -o core/src/plugins/stored/CMakeFiles/python-sd.dir/python-sd.cc.o -c core/src/plugins/stored/python-sd.cc
ninja: build stopped: subcommand failed.
===> Compilation failed unexpectedly.
Try to set MAKE_JOBS_UNSAFE=yes and rebuild before reporting the failure to
the maintainer.
*** Error code 1

make[1]: stopped in /xports/sysutils/bareos-server
*** Error code 1
Comment 1 Trond.Endrestol 2019-05-10 10:39:05 UTC
This issue was extended to bextract, and bscan.

Augmenting existing sysutils/bareos-server/files/patch-core-src-stored_CMakeLists.txt with the lines below eliminates this issue.

@@ -202,6 +202,7 @@
 add_executable(bextract ${BEXTRACTSRS})
    bareossd bareosfind bareos

 add_executable(bscan ${BSCANSRCS})
@@ -212,6 +213,7 @@
 add_executable(btape ${BTAPESRCS})
    bareossd bareos

 add_executable(bcopy ${BCOPYSRCS})
@@ -219,6 +221,7 @@

    bareossd bareos

Comment 2 O. Hartmann 2019-05-10 10:52:38 UTC
Same to me here, a quick and dirty patch is to append "-lpthread" to LDFLAGS+= ...
Comment 3 commit-hook freebsd_committer 2019-05-10 20:19:59 UTC
A commit references this bug:

Author: acm
Date: Fri May 10 20:19:44 UTC 2019
New revision: 501197
URL: https://svnweb.freebsd.org/changeset/ports/501197

  - Fix pthread error [1]
  - Fix build when python 2.x is not default version [2]
  - Fix build when NLS option is not selected [3]
  - Fix pkg-plist
  - Few other modifications

  PR:		237818 237823 237825
  Submitted by:	Trond.Endrestol _ at _ ximalas.info [1][3], beldin _ at _ beldin.org [2]
  Reported by:	pkg-fallout