boost-libs-2017Q1: Patches for CentOS + Yum GCC, which cannot build fiber
This commit is contained in:
parent
31c70c51d3
commit
6370a4d7f9
1
Makefile
1
Makefile
|
@ -249,6 +249,7 @@ SUBDIR+= bogomips
|
|||
SUBDIR+= boinc-git
|
||||
SUBDIR+= bonnie++-current
|
||||
SUBDIR+= boo
|
||||
SUBDIR+= boost-libs-2017Q1
|
||||
SUBDIR+= boost-test-suite
|
||||
SUBDIR+= boost-threadpool
|
||||
SUBDIR+= bowtie
|
||||
|
|
|
@ -0,0 +1,6 @@
|
|||
Boost is a set of free, peer-reviewed, C++ libraries. The emphasis is on
|
||||
portable libraries which work well with the ISO C++ Standard Library.
|
||||
|
||||
This package adds static and shared binary libraries for Boost. All
|
||||
libraries are included here, except Boost.Python, which can be found in
|
||||
the py-boost package.
|
|
@ -0,0 +1,78 @@
|
|||
# $NetBSD: Makefile,v 1.51.2.1 2017/04/16 14:55:01 bsiegert Exp $
|
||||
|
||||
BOOST_PACKAGE= libs
|
||||
BOOST_COMMENT= (binary libraries)
|
||||
BOOST_CONFIG= installed
|
||||
BOOST_INSTALL_LIBS= yes
|
||||
|
||||
.include "../../meta-pkgs/boost/Makefile.common"
|
||||
|
||||
INSTALLATION_DIRS+= lib
|
||||
|
||||
BJAM_ARGS+= --without-python
|
||||
PLIST_VARS+= context fiber log long_double_math
|
||||
|
||||
.if ${OPSYS} == "NetBSD" && ((${MACHINE_ARCH} == "i386") || (!empty(MACHINE_ARCH:Mearm*) && !empty(PKGSRC_COMPILER:Mgcc)))
|
||||
BJAM_ARGS+= pch=off
|
||||
.endif
|
||||
|
||||
.if !empty(MACHINE_ARCH:Malpha) || !empty(MACHINE_ARCH:Mm68k) || !empty(MACHINE_ARCH:Msparc64)
|
||||
BJAM_ARGS+= --without-context
|
||||
BJAM_ARGS+= --without-coroutine
|
||||
BJAM_ARGS+= --without-coroutine2
|
||||
.else
|
||||
PLIST.context= yes
|
||||
.endif
|
||||
|
||||
# Darwin GCC is unable to build Boost.Log
|
||||
.if ${OPSYS} == "Darwin" && !empty(PKGSRC_COMPILER:Mgcc)
|
||||
BJAM_ARGS+= --without-log
|
||||
.else
|
||||
PLIST.log= yes
|
||||
.endif
|
||||
|
||||
.include "../../mk/compiler.mk"
|
||||
|
||||
# fiber requires thread_local support, unavailable in older compilers
|
||||
# (old darwin, netbsd <6, CentOS 6). if fiber becomes necessary, set GCC_REQD
|
||||
# on other boost-* packages, too.
|
||||
# fiber requires context, so also disable it where context cannot be built
|
||||
# Additionally fiber checks std::timed_mutex.
|
||||
.if ((${OPSYS} == "Darwin" && ${OS_VERSION:R} < 14) || \
|
||||
!empty(MACHINE_PLATFORM:MNetBSD-[0-7]*-*)) || \
|
||||
!empty(MACHINE_ARCH:Malpha) || !empty(MACHINE_ARCH:Mm68k) || \
|
||||
!empty(MACHINE_ARCH:Msparc64) || \
|
||||
(exists(/etc/redhat-release) && !empty(CC_VERSION:Mgcc-4.4.*)) || \
|
||||
(${OPSYS} == "NetBSD" && !empty(PKGSRC_COMPILER:Mclang))
|
||||
BJAM_ARGS+= --without-fiber
|
||||
.else
|
||||
PLIST.fiber= yes
|
||||
.endif
|
||||
|
||||
.if ${OPSYS} != "NetBSD" && ${OPSYS} != "FreeBSD"
|
||||
PLIST.long_double_math= yes
|
||||
.endif
|
||||
|
||||
UNLIMIT_RESOURCES+= stacksize
|
||||
|
||||
MAKE_ENV+= BZIP2_INCLUDE=${BUILDLINK_PREFIX.bzip2}/include
|
||||
MAKE_ENV+= BZIP2_LIBPATH=${BUILDLINK_PREFIX.bzip2}/lib
|
||||
MAKE_ENV+= EXPAT_INCLUDE=${BUILDLINK_PREFIX.expat}/include
|
||||
MAKE_ENV+= EXPAT_LIBPATH=${BUILDLINK_PREFIX.expat}/lib
|
||||
MAKE_ENV+= ICU_PATH=${BUILDLINK_PREFIX.icu}
|
||||
MAKE_ENV+= ZLIB_INCLUDE=${BUILDLINK_PREFIX.zlib}/include
|
||||
MAKE_ENV+= ZLIB_LIBPATH=${BUILDLINK_PREFIX.zlib}/lib
|
||||
|
||||
.include "../../devel/boost-jam/bjam.mk"
|
||||
|
||||
do-build: bjam-build
|
||||
|
||||
do-install: boost-install-libs
|
||||
|
||||
.include "../../archivers/bzip2/buildlink3.mk"
|
||||
.include "../../converters/libiconv/buildlink3.mk"
|
||||
.include "../../devel/zlib/buildlink3.mk"
|
||||
.include "../../textproc/expat/buildlink3.mk"
|
||||
.include "../../textproc/icu/buildlink3.mk"
|
||||
.include "../../mk/pthread.buildlink3.mk"
|
||||
.include "../../mk/bsd.pkg.mk"
|
|
@ -0,0 +1,99 @@
|
|||
@comment $NetBSD: PLIST,v 1.33 2017/01/02 09:41:50 ryoon Exp $
|
||||
lib/libboost_atomic.a
|
||||
lib/libboost_atomic.so
|
||||
lib/libboost_atomic.so.${BOOST_VERSION}
|
||||
lib/libboost_chrono.a
|
||||
lib/libboost_chrono.so
|
||||
lib/libboost_chrono.so.${BOOST_VERSION}
|
||||
lib/libboost_container.a
|
||||
lib/libboost_container.so
|
||||
lib/libboost_container.so.${BOOST_VERSION}
|
||||
${PLIST.context}lib/libboost_context.a
|
||||
${PLIST.context}lib/libboost_context.so
|
||||
${PLIST.context}lib/libboost_context.so.${BOOST_VERSION}
|
||||
${PLIST.context}lib/libboost_coroutine.a
|
||||
${PLIST.context}lib/libboost_coroutine.so
|
||||
${PLIST.context}lib/libboost_coroutine.so.${BOOST_VERSION}
|
||||
lib/libboost_date_time.a
|
||||
lib/libboost_date_time.so
|
||||
lib/libboost_date_time.so.${BOOST_VERSION}
|
||||
lib/libboost_exception.a
|
||||
${PLIST.fiber}lib/libboost_fiber.a
|
||||
${PLIST.fiber}lib/libboost_fiber.so
|
||||
${PLIST.fiber}lib/libboost_fiber.so.${BOOST_VERSION}
|
||||
lib/libboost_filesystem.a
|
||||
lib/libboost_filesystem.so
|
||||
lib/libboost_filesystem.so.${BOOST_VERSION}
|
||||
lib/libboost_graph.a
|
||||
lib/libboost_graph.so
|
||||
lib/libboost_graph.so.${BOOST_VERSION}
|
||||
lib/libboost_iostreams.a
|
||||
lib/libboost_iostreams.so
|
||||
lib/libboost_iostreams.so.${BOOST_VERSION}
|
||||
lib/libboost_locale.a
|
||||
lib/libboost_locale.so
|
||||
lib/libboost_locale.so.${BOOST_VERSION}
|
||||
${PLIST.log}lib/libboost_log.a
|
||||
${PLIST.log}lib/libboost_log.so
|
||||
${PLIST.log}lib/libboost_log.so.${BOOST_VERSION}
|
||||
${PLIST.log}lib/libboost_log_setup.a
|
||||
${PLIST.log}lib/libboost_log_setup.so
|
||||
${PLIST.log}lib/libboost_log_setup.so.${BOOST_VERSION}
|
||||
lib/libboost_math_c99.a
|
||||
lib/libboost_math_c99.so
|
||||
lib/libboost_math_c99.so.${BOOST_VERSION}
|
||||
lib/libboost_math_c99f.a
|
||||
lib/libboost_math_c99f.so
|
||||
lib/libboost_math_c99f.so.${BOOST_VERSION}
|
||||
${PLIST.long_double_math}lib/libboost_math_c99l.a
|
||||
${PLIST.long_double_math}lib/libboost_math_c99l.so
|
||||
${PLIST.long_double_math}lib/libboost_math_c99l.so.${BOOST_VERSION}
|
||||
lib/libboost_math_tr1.a
|
||||
lib/libboost_math_tr1.so
|
||||
lib/libboost_math_tr1.so.${BOOST_VERSION}
|
||||
lib/libboost_math_tr1f.a
|
||||
lib/libboost_math_tr1f.so
|
||||
lib/libboost_math_tr1f.so.${BOOST_VERSION}
|
||||
${PLIST.long_double_math}lib/libboost_math_tr1l.a
|
||||
${PLIST.long_double_math}lib/libboost_math_tr1l.so
|
||||
${PLIST.long_double_math}lib/libboost_math_tr1l.so.${BOOST_VERSION}
|
||||
lib/libboost_prg_exec_monitor.a
|
||||
lib/libboost_prg_exec_monitor.so
|
||||
lib/libboost_prg_exec_monitor.so.${BOOST_VERSION}
|
||||
lib/libboost_program_options.a
|
||||
lib/libboost_program_options.so
|
||||
lib/libboost_program_options.so.${BOOST_VERSION}
|
||||
lib/libboost_random.a
|
||||
lib/libboost_random.so
|
||||
lib/libboost_random.so.${BOOST_VERSION}
|
||||
lib/libboost_regex.a
|
||||
lib/libboost_regex.so
|
||||
lib/libboost_regex.so.${BOOST_VERSION}
|
||||
lib/libboost_serialization.a
|
||||
lib/libboost_serialization.so
|
||||
lib/libboost_serialization.so.${BOOST_VERSION}
|
||||
lib/libboost_signals.a
|
||||
lib/libboost_signals.so
|
||||
lib/libboost_signals.so.${BOOST_VERSION}
|
||||
lib/libboost_system.a
|
||||
lib/libboost_system.so
|
||||
lib/libboost_system.so.${BOOST_VERSION}
|
||||
lib/libboost_test_exec_monitor.a
|
||||
lib/libboost_thread.a
|
||||
lib/libboost_thread.so
|
||||
lib/libboost_thread.so.${BOOST_VERSION}
|
||||
lib/libboost_timer.a
|
||||
lib/libboost_timer.so
|
||||
lib/libboost_timer.so.${BOOST_VERSION}
|
||||
lib/libboost_type_erasure.a
|
||||
lib/libboost_type_erasure.so
|
||||
lib/libboost_type_erasure.so.${BOOST_VERSION}
|
||||
lib/libboost_unit_test_framework.a
|
||||
lib/libboost_unit_test_framework.so
|
||||
lib/libboost_unit_test_framework.so.${BOOST_VERSION}
|
||||
lib/libboost_wave.a
|
||||
lib/libboost_wave.so
|
||||
lib/libboost_wave.so.${BOOST_VERSION}
|
||||
lib/libboost_wserialization.a
|
||||
lib/libboost_wserialization.so
|
||||
lib/libboost_wserialization.so.${BOOST_VERSION}
|
|
@ -0,0 +1,26 @@
|
|||
# $NetBSD: buildlink3.mk,v 1.42 2017/01/01 15:32:47 adam Exp $
|
||||
|
||||
BUILDLINK_TREE+= boost-libs
|
||||
|
||||
.if !defined(BOOST_LIBS_BUILDLINK3_MK)
|
||||
BOOST_LIBS_BUILDLINK3_MK:=
|
||||
|
||||
# Use a dependency pattern that guarantees the proper ABI.
|
||||
BUILDLINK_API_DEPENDS.boost-libs+= boost-libs-1.63.*
|
||||
BUILDLINK_ABI_DEPENDS.boost-libs?= boost-libs>=1.63.0
|
||||
BUILDLINK_PKGSRCDIR.boost-libs?= ../../devel/boost-libs
|
||||
|
||||
.include "../../mk/bsd.fast.prefs.mk"
|
||||
# Sync with meta-pkgs/boost/Makefile.common
|
||||
.if ${OPSYS} == "OpenBSD"
|
||||
GCC_REQD+= 4.6
|
||||
.elif ${LOWER_VENDOR} == "redhat"
|
||||
GCC_REQD+= 4.4
|
||||
.else
|
||||
GCC_REQD+= 4.5
|
||||
.endif
|
||||
|
||||
.include "../../devel/boost-headers/buildlink3.mk"
|
||||
.endif # BOOST_LIBS_BUILDLINK3_MK
|
||||
|
||||
BUILDLINK_TREE+= -boost-libs
|
|
@ -0,0 +1,14 @@
|
|||
# $NetBSD: hacks.mk,v 1.5 2014/12/15 11:46:34 jperkin Exp $
|
||||
|
||||
.if !defined(BOOST_LIBS_HACKS_MK)
|
||||
BOOST_LIBS_HACKS_MK= defined
|
||||
|
||||
.include "../../mk/compiler.mk"
|
||||
|
||||
# gcc 4 on sparc64 catches an illegal instruction when compiling graphml.cpp
|
||||
.if ${MACHINE_ARCH} == "sparc64" && !empty(CC_VERSION:Mgcc-4*)
|
||||
PKG_HACKS+= optimisation
|
||||
BUILDLINK_TRANSFORM+= opt:-O3:-O1
|
||||
.endif
|
||||
|
||||
.endif # BOOST_LIBS_HACKS_MK
|
Loading…
Reference in New Issue