pkgsrc-WIP-changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
boost-libs-2017Q1: Patches for CentOS + Yum GCC, which cannot build fiber
Module Name: pkgsrc-wip
Committed By: Jason Bacon <bacon4000%gmail.com@localhost>
Pushed By: outpaddling
Date: Wed Jun 7 14:22:53 2017 -0500
Changeset: 6370a4d7f9620e13735eff2f396d000c36ffd1ca
Modified Files:
Makefile
Added Files:
boost-libs-2017Q1/DESCR
boost-libs-2017Q1/Makefile
boost-libs-2017Q1/PLIST
boost-libs-2017Q1/buildlink3.mk
boost-libs-2017Q1/hacks.mk
Log Message:
boost-libs-2017Q1: Patches for CentOS + Yum GCC, which cannot build fiber
To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=6370a4d7f9620e13735eff2f396d000c36ffd1ca
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
diffstat:
Makefile | 1 +
boost-libs-2017Q1/DESCR | 6 +++
boost-libs-2017Q1/Makefile | 78 ++++++++++++++++++++++++++++++++
boost-libs-2017Q1/PLIST | 99 +++++++++++++++++++++++++++++++++++++++++
boost-libs-2017Q1/buildlink3.mk | 26 +++++++++++
boost-libs-2017Q1/hacks.mk | 14 ++++++
6 files changed, 224 insertions(+)
diffs:
diff --git a/Makefile b/Makefile
index 1cec5a47a0..edab5b6b60 100644
--- a/Makefile
+++ b/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
diff --git a/boost-libs-2017Q1/DESCR b/boost-libs-2017Q1/DESCR
new file mode 100644
index 0000000000..2040fe58af
--- /dev/null
+++ b/boost-libs-2017Q1/DESCR
@@ -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.
diff --git a/boost-libs-2017Q1/Makefile b/boost-libs-2017Q1/Makefile
new file mode 100644
index 0000000000..7df8771ee5
--- /dev/null
+++ b/boost-libs-2017Q1/Makefile
@@ -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"
diff --git a/boost-libs-2017Q1/PLIST b/boost-libs-2017Q1/PLIST
new file mode 100644
index 0000000000..aa215240e7
--- /dev/null
+++ b/boost-libs-2017Q1/PLIST
@@ -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}
diff --git a/boost-libs-2017Q1/buildlink3.mk b/boost-libs-2017Q1/buildlink3.mk
new file mode 100644
index 0000000000..cda3d2e51b
--- /dev/null
+++ b/boost-libs-2017Q1/buildlink3.mk
@@ -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
diff --git a/boost-libs-2017Q1/hacks.mk b/boost-libs-2017Q1/hacks.mk
new file mode 100644
index 0000000000..c3de68ef11
--- /dev/null
+++ b/boost-libs-2017Q1/hacks.mk
@@ -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
Home |
Main Index |
Thread Index |
Old Index