Unbreak boost on (at least) alpha, hppa and sparc64
- ensure we don't build the 'context' and 'coroutine' libs, they are not portable and the latter depends on the former - don't use the 'gcc_sparc' backend in Boost.atomic, for it doesn't build; use the generic gcc backend based on __sync_* - stop tweaking cc -march / -mcpu values; this is not desirable on any arch and it breaks on sparc64 due to a bogus -mcpu=c3 default - don't attempt to force -m32 / -m64 flags, this breaks at least alpha (64 bits but doesn't understand -m64) alpha, hppa & sparc64 tests by landry@, amd64 bulk by ajacoutot@ ok jasper@
This commit is contained in:
parent
74c36a9d42
commit
8495a25bd4
@ -1,10 +1,11 @@
|
||||
# $OpenBSD: Makefile,v 1.55 2015/07/01 08:41:59 jasper Exp $
|
||||
# $OpenBSD: Makefile,v 1.56 2015/08/03 18:29:30 jca Exp $
|
||||
|
||||
ONLY_FOR_ARCHS= ${GCC4_ARCHS}
|
||||
|
||||
COMMENT= free peer-reviewed portable C++ source libraries
|
||||
|
||||
VERSION= 1.58.0
|
||||
REVISION= 0
|
||||
DISTNAME= boost_${VERSION:S/./_/g}
|
||||
PKGNAME= boost-${VERSION}
|
||||
CATEGORIES= devel
|
||||
@ -15,8 +16,6 @@ SO_VERSION= 6.0
|
||||
BOOST_LIBS= boost_atomic-mt \
|
||||
boost_chrono-mt boost_chrono \
|
||||
boost_container-mt boost_container \
|
||||
boost_context-mt \
|
||||
boost_coroutine-mt boost_coroutine \
|
||||
boost_date_time-mt boost_date_time \
|
||||
boost_filesystem-mt boost_filesystem \
|
||||
boost_graph-mt boost_graph \
|
||||
@ -78,14 +77,14 @@ BJAM_CONFIG= -sICONV_PATH=${LOCALBASE} \
|
||||
--layout=tagged \
|
||||
--user-config=${WRKSRC}/tools/build/user-config.jam
|
||||
|
||||
# context uses MD bits and is missing support for Alpha,
|
||||
# 'context' and 'coroutine' use MD bits and miss support for Alpha,
|
||||
# PA-RISC, SPARC and SuperH. The author does not care
|
||||
# care about adding support for Alpha and PA-RISC.
|
||||
BOOTSTRAP= --with-python=${MODPY_BIN} \
|
||||
--with-python-root=${LOCALBASE} \
|
||||
--with-python-version=${MODPY_VERSION} \
|
||||
--without-icu \
|
||||
--without-libraries=context
|
||||
--without-libraries=context,coroutine
|
||||
|
||||
# python.port.mk makes assumptions about an empty CONFIGURE_STYLE
|
||||
CONFIGURE_STYLE= none
|
||||
|
15
devel/boost/patches/patch-boost_atomic_detail_platform_hpp
Normal file
15
devel/boost/patches/patch-boost_atomic_detail_platform_hpp
Normal file
@ -0,0 +1,15 @@
|
||||
$OpenBSD: patch-boost_atomic_detail_platform_hpp,v 1.1 2015/08/03 18:29:30 jca Exp $
|
||||
|
||||
The gcc_sparc backend doesn't build.
|
||||
|
||||
--- boost/atomic/detail/platform.hpp.orig Wed Jul 29 20:47:08 2015
|
||||
+++ boost/atomic/detail/platform.hpp Wed Jul 29 21:51:19 2015
|
||||
@@ -59,7 +59,7 @@
|
||||
|
||||
#define BOOST_ATOMIC_DETAIL_PLATFORM gcc_arm
|
||||
|
||||
-#elif defined(__GNUC__) && defined(__sparc_v9__)
|
||||
+#elif defined(__GNUC__) && defined(__sparc_v9__) && defined(notyet)
|
||||
|
||||
#define BOOST_ATOMIC_DETAIL_PLATFORM gcc_sparc
|
||||
|
@ -1,6 +1,6 @@
|
||||
$OpenBSD: patch-tools_build_src_tools_gcc_jam,v 1.2 2015/07/10 08:13:46 jasper Exp $
|
||||
$OpenBSD: patch-tools_build_src_tools_gcc_jam,v 1.3 2015/08/03 18:29:30 jca Exp $
|
||||
--- tools/build/src/tools/gcc.jam.orig Sat Apr 4 19:25:07 2015
|
||||
+++ tools/build/src/tools/gcc.jam Fri Jul 10 10:13:10 2015
|
||||
+++ tools/build/src/tools/gcc.jam Thu Jul 30 13:38:29 2015
|
||||
@@ -337,7 +337,7 @@ class gcc-pch-generator : pch-generator
|
||||
# Return result of base class and pch-file property as
|
||||
# usage-requirements.
|
||||
@ -19,21 +19,60 @@ $OpenBSD: patch-tools_build_src_tools_gcc_jam,v 1.2 2015/07/10 08:13:46 jasper E
|
||||
toolset.flags gcc.compile OPTIONS <optimization>space : -Os ;
|
||||
|
||||
toolset.flags gcc.compile OPTIONS <inlining>off : -fno-inline ;
|
||||
@@ -453,12 +453,8 @@ rule setup-address-model ( targets * : sources * : pro
|
||||
local arch = [ feature.get-values architecture : $(properties) ] ;
|
||||
if $(arch) != arm
|
||||
{
|
||||
@@ -421,52 +421,6 @@ rule setup-fpic ( targets * : sources * : properties *
|
||||
|
||||
rule setup-address-model ( targets * : sources * : properties * )
|
||||
{
|
||||
- local model = [ feature.get-values address-model : $(properties) ] ;
|
||||
- if $(model)
|
||||
- {
|
||||
- local option ;
|
||||
- local os = [ feature.get-values target-os : $(properties) ] ;
|
||||
- if $(os) = aix
|
||||
- {
|
||||
- if $(model) = 32
|
||||
- {
|
||||
- option = -maix32 ;
|
||||
- }
|
||||
- else
|
||||
- {
|
||||
- option = -maix64 ;
|
||||
- }
|
||||
- }
|
||||
- else if $(os) = hpux
|
||||
- {
|
||||
- if $(model) = 32
|
||||
- {
|
||||
- option = -milp32 ;
|
||||
- }
|
||||
- else
|
||||
- {
|
||||
- option = -mlp64 ;
|
||||
- }
|
||||
- }
|
||||
- else
|
||||
- {
|
||||
- local arch = [ feature.get-values architecture : $(properties) ] ;
|
||||
- if $(arch) != arm
|
||||
- {
|
||||
- if $(model) = 32
|
||||
+ if $(model) = 64
|
||||
{
|
||||
- {
|
||||
- option = -m32 ;
|
||||
- }
|
||||
- else if $(model) = 64
|
||||
- {
|
||||
option = -m64 ;
|
||||
}
|
||||
}
|
||||
@@ -603,11 +599,13 @@ rule compile.fortran ( targets * : sources * : propert
|
||||
- option = -m64 ;
|
||||
- }
|
||||
- }
|
||||
- # For darwin, the model can be 32_64. darwin.jam will handle that
|
||||
- # on its own.
|
||||
- }
|
||||
- OPTIONS on $(targets) += $(option) ;
|
||||
- }
|
||||
}
|
||||
|
||||
|
||||
@@ -603,11 +557,13 @@ rule compile.fortran ( targets * : sources * : propert
|
||||
|
||||
actions compile.c++ bind PCH_FILE
|
||||
{
|
||||
@ -47,7 +86,7 @@ $OpenBSD: patch-tools_build_src_tools_gcc_jam,v 1.2 2015/07/10 08:13:46 jasper E
|
||||
"$(CONFIG_COMMAND)" $(LANG) $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -I"$(PCH_FILE:D)" -I"$(INCLUDES)" -c -o "$(<)" "$(>)"
|
||||
}
|
||||
|
||||
@@ -949,6 +947,7 @@ rule link ( targets * : sources * : properties * )
|
||||
@@ -949,6 +905,7 @@ rule link ( targets * : sources * : properties * )
|
||||
|
||||
actions link bind LIBRARIES
|
||||
{
|
||||
@ -55,7 +94,7 @@ $OpenBSD: patch-tools_build_src_tools_gcc_jam,v 1.2 2015/07/10 08:13:46 jasper E
|
||||
"$(CONFIG_COMMAND)" -L"$(LINKPATH)" -Wl,$(RPATH_OPTION:E=-R)$(SPACE)-Wl,$(RPATH) -Wl,-rpath-link$(SPACE)-Wl,"$(RPATH_LINK)" -o "$(<)" $(START-GROUP) "$(>)" "$(LIBRARIES)" $(FINDLIBS-ST-PFX) -l$(FINDLIBS-ST) $(FINDLIBS-SA-PFX) -l$(FINDLIBS-SA) $(END-GROUP) $(OPTIONS) $(USER_OPTIONS)
|
||||
}
|
||||
|
||||
@@ -1012,10 +1011,10 @@ rule link.dll ( targets * : sources * : properties * )
|
||||
@@ -1012,10 +969,10 @@ rule link.dll ( targets * : sources * : properties * )
|
||||
quote-rpath $(targets) ;
|
||||
}
|
||||
|
||||
@ -68,3 +107,127 @@ $OpenBSD: patch-tools_build_src_tools_gcc_jam,v 1.2 2015/07/10 08:13:46 jasper E
|
||||
}
|
||||
|
||||
rule setup-threading ( targets * : sources * : properties * )
|
||||
@@ -1068,123 +1025,3 @@ local rule cpu-flags ( toolset variable : architecture
|
||||
}
|
||||
|
||||
|
||||
-# Set architecture/instruction-set options.
|
||||
-#
|
||||
-# x86 and compatible
|
||||
-# The 'native' option appeared in gcc 4.2 so we cannot safely use it as default.
|
||||
-# Use i686 instead for 32-bit.
|
||||
-toolset.flags gcc OPTIONS <architecture>x86/<address-model>32/<instruction-set> : -march=i686 ;
|
||||
-cpu-flags gcc OPTIONS : x86 : native : -march=native ;
|
||||
-cpu-flags gcc OPTIONS : x86 : i486 : -march=i486 ;
|
||||
-cpu-flags gcc OPTIONS : x86 : i586 : -march=i586 ;
|
||||
-cpu-flags gcc OPTIONS : x86 : i686 : -march=i686 ;
|
||||
-cpu-flags gcc OPTIONS : x86 : pentium : -march=pentium ;
|
||||
-cpu-flags gcc OPTIONS : x86 : pentium-mmx : -march=pentium-mmx ;
|
||||
-cpu-flags gcc OPTIONS : x86 : pentiumpro : -march=pentiumpro ;
|
||||
-cpu-flags gcc OPTIONS : x86 : pentium2 : -march=pentium2 ;
|
||||
-cpu-flags gcc OPTIONS : x86 : pentium3 : -march=pentium3 ;
|
||||
-cpu-flags gcc OPTIONS : x86 : pentium3m : -march=pentium3m ;
|
||||
-cpu-flags gcc OPTIONS : x86 : pentium-m : -march=pentium-m ;
|
||||
-cpu-flags gcc OPTIONS : x86 : pentium4 : -march=pentium4 ;
|
||||
-cpu-flags gcc OPTIONS : x86 : pentium4m : -march=pentium4m ;
|
||||
-cpu-flags gcc OPTIONS : x86 : prescott : -march=prescott ;
|
||||
-cpu-flags gcc OPTIONS : x86 : nocona : -march=nocona ;
|
||||
-cpu-flags gcc OPTIONS : x86 : core2 : -march=core2 ;
|
||||
-cpu-flags gcc OPTIONS : x86 : conroe : -march=core2 ;
|
||||
-cpu-flags gcc OPTIONS : x86 : conroe-xe : -march=core2 ;
|
||||
-cpu-flags gcc OPTIONS : x86 : conroe-l : -march=core2 ;
|
||||
-cpu-flags gcc OPTIONS : x86 : allendale : -march=core2 ;
|
||||
-cpu-flags gcc OPTIONS : x86 : wolfdale : -march=core2 -msse4.1 ;
|
||||
-cpu-flags gcc OPTIONS : x86 : merom : -march=core2 ;
|
||||
-cpu-flags gcc OPTIONS : x86 : merom-xe : -march=core2 ;
|
||||
-cpu-flags gcc OPTIONS : x86 : kentsfield : -march=core2 ;
|
||||
-cpu-flags gcc OPTIONS : x86 : kentsfield-xe : -march=core2 ;
|
||||
-cpu-flags gcc OPTIONS : x86 : yorksfield : -march=core2 ;
|
||||
-cpu-flags gcc OPTIONS : x86 : penryn : -march=core2 ;
|
||||
-cpu-flags gcc OPTIONS : x86 : corei7 : -march=corei7 ;
|
||||
-cpu-flags gcc OPTIONS : x86 : nehalem : -march=corei7 ;
|
||||
-cpu-flags gcc OPTIONS : x86 : corei7-avx : -march=corei7-avx ;
|
||||
-cpu-flags gcc OPTIONS : x86 : sandy-bridge : -march=corei7-avx ;
|
||||
-cpu-flags gcc OPTIONS : x86 : core-avx-i : -march=core-avx-i ;
|
||||
-cpu-flags gcc OPTIONS : x86 : ivy-bridge : -march=core-avx-i ;
|
||||
-cpu-flags gcc OPTIONS : x86 : haswell : -march=core-avx-i -mavx2 -mfma -mbmi -mbmi2 -mlzcnt ;
|
||||
-cpu-flags gcc OPTIONS : x86 : k6 : -march=k6 ;
|
||||
-cpu-flags gcc OPTIONS : x86 : k6-2 : -march=k6-2 ;
|
||||
-cpu-flags gcc OPTIONS : x86 : k6-3 : -march=k6-3 ;
|
||||
-cpu-flags gcc OPTIONS : x86 : athlon : -march=athlon ;
|
||||
-cpu-flags gcc OPTIONS : x86 : athlon-tbird : -march=athlon-tbird ;
|
||||
-cpu-flags gcc OPTIONS : x86 : athlon-4 : -march=athlon-4 ;
|
||||
-cpu-flags gcc OPTIONS : x86 : athlon-xp : -march=athlon-xp ;
|
||||
-cpu-flags gcc OPTIONS : x86 : athlon-mp : -march=athlon-mp ;
|
||||
-##
|
||||
-cpu-flags gcc OPTIONS : x86 : k8 : -march=k8 ;
|
||||
-cpu-flags gcc OPTIONS : x86 : opteron : -march=opteron ;
|
||||
-cpu-flags gcc OPTIONS : x86 : athlon64 : -march=athlon64 ;
|
||||
-cpu-flags gcc OPTIONS : x86 : athlon-fx : -march=athlon-fx ;
|
||||
-cpu-flags gcc OPTIONS : x86 : k8-sse3 : -march=k8-sse3 ;
|
||||
-cpu-flags gcc OPTIONS : x86 : opteron-sse3 : -march=opteron-sse3 ;
|
||||
-cpu-flags gcc OPTIONS : x86 : athlon64-sse3 : -march=athlon64-sse3 ;
|
||||
-cpu-flags gcc OPTIONS : x86 : amdfam10 : -march=amdfam10 ;
|
||||
-cpu-flags gcc OPTIONS : x86 : barcelona : -march=barcelona ;
|
||||
-cpu-flags gcc OPTIONS : x86 : bdver1 : -march=bdver1 ;
|
||||
-cpu-flags gcc OPTIONS : x86 : bdver2 : -march=bdver2 ;
|
||||
-cpu-flags gcc OPTIONS : x86 : bdver3 : -march=bdver3 ;
|
||||
-cpu-flags gcc OPTIONS : x86 : btver1 : -march=btver1 ;
|
||||
-cpu-flags gcc OPTIONS : x86 : btver2 : -march=btver2 ;
|
||||
-cpu-flags gcc OPTIONS : x86 : winchip-c6 : -march=winchip-c6 ;
|
||||
-cpu-flags gcc OPTIONS : x86 : winchip2 : -march=winchip2 ;
|
||||
-cpu-flags gcc OPTIONS : x86 : c3 : -march=c3 ;
|
||||
-cpu-flags gcc OPTIONS : x86 : c3-2 : -march=c3-2 ;
|
||||
-##
|
||||
-cpu-flags gcc OPTIONS : x86 : atom : -march=atom ;
|
||||
-# Sparc
|
||||
-cpu-flags gcc OPTIONS : sparc : c3 : -mcpu=c3 : default ;
|
||||
-cpu-flags gcc OPTIONS : sparc : v7 : -mcpu=v7 ;
|
||||
-cpu-flags gcc OPTIONS : sparc : cypress : -mcpu=cypress ;
|
||||
-cpu-flags gcc OPTIONS : sparc : v8 : -mcpu=v8 ;
|
||||
-cpu-flags gcc OPTIONS : sparc : supersparc : -mcpu=supersparc ;
|
||||
-cpu-flags gcc OPTIONS : sparc : sparclite : -mcpu=sparclite ;
|
||||
-cpu-flags gcc OPTIONS : sparc : hypersparc : -mcpu=hypersparc ;
|
||||
-cpu-flags gcc OPTIONS : sparc : sparclite86x : -mcpu=sparclite86x ;
|
||||
-cpu-flags gcc OPTIONS : sparc : f930 : -mcpu=f930 ;
|
||||
-cpu-flags gcc OPTIONS : sparc : f934 : -mcpu=f934 ;
|
||||
-cpu-flags gcc OPTIONS : sparc : sparclet : -mcpu=sparclet ;
|
||||
-cpu-flags gcc OPTIONS : sparc : tsc701 : -mcpu=tsc701 ;
|
||||
-cpu-flags gcc OPTIONS : sparc : v9 : -mcpu=v9 ;
|
||||
-cpu-flags gcc OPTIONS : sparc : ultrasparc : -mcpu=ultrasparc ;
|
||||
-cpu-flags gcc OPTIONS : sparc : ultrasparc3 : -mcpu=ultrasparc3 ;
|
||||
-# RS/6000 & PowerPC
|
||||
-cpu-flags gcc OPTIONS : power : 403 : -mcpu=403 ;
|
||||
-cpu-flags gcc OPTIONS : power : 505 : -mcpu=505 ;
|
||||
-cpu-flags gcc OPTIONS : power : 601 : -mcpu=601 ;
|
||||
-cpu-flags gcc OPTIONS : power : 602 : -mcpu=602 ;
|
||||
-cpu-flags gcc OPTIONS : power : 603 : -mcpu=603 ;
|
||||
-cpu-flags gcc OPTIONS : power : 603e : -mcpu=603e ;
|
||||
-cpu-flags gcc OPTIONS : power : 604 : -mcpu=604 ;
|
||||
-cpu-flags gcc OPTIONS : power : 604e : -mcpu=604e ;
|
||||
-cpu-flags gcc OPTIONS : power : 620 : -mcpu=620 ;
|
||||
-cpu-flags gcc OPTIONS : power : 630 : -mcpu=630 ;
|
||||
-cpu-flags gcc OPTIONS : power : 740 : -mcpu=740 ;
|
||||
-cpu-flags gcc OPTIONS : power : 7400 : -mcpu=7400 ;
|
||||
-cpu-flags gcc OPTIONS : power : 7450 : -mcpu=7450 ;
|
||||
-cpu-flags gcc OPTIONS : power : 750 : -mcpu=750 ;
|
||||
-cpu-flags gcc OPTIONS : power : 801 : -mcpu=801 ;
|
||||
-cpu-flags gcc OPTIONS : power : 821 : -mcpu=821 ;
|
||||
-cpu-flags gcc OPTIONS : power : 823 : -mcpu=823 ;
|
||||
-cpu-flags gcc OPTIONS : power : 860 : -mcpu=860 ;
|
||||
-cpu-flags gcc OPTIONS : power : 970 : -mcpu=970 ;
|
||||
-cpu-flags gcc OPTIONS : power : 8540 : -mcpu=8540 ;
|
||||
-cpu-flags gcc OPTIONS : power : power : -mcpu=power ;
|
||||
-cpu-flags gcc OPTIONS : power : power2 : -mcpu=power2 ;
|
||||
-cpu-flags gcc OPTIONS : power : power3 : -mcpu=power3 ;
|
||||
-cpu-flags gcc OPTIONS : power : power4 : -mcpu=power4 ;
|
||||
-cpu-flags gcc OPTIONS : power : power5 : -mcpu=power5 ;
|
||||
-cpu-flags gcc OPTIONS : power : powerpc : -mcpu=powerpc ;
|
||||
-cpu-flags gcc OPTIONS : power : powerpc64 : -mcpu=powerpc64 ;
|
||||
-cpu-flags gcc OPTIONS : power : rios : -mcpu=rios ;
|
||||
-cpu-flags gcc OPTIONS : power : rios1 : -mcpu=rios1 ;
|
||||
-cpu-flags gcc OPTIONS : power : rios2 : -mcpu=rios2 ;
|
||||
-cpu-flags gcc OPTIONS : power : rsc : -mcpu=rsc ;
|
||||
-cpu-flags gcc OPTIONS : power : rs64a : -mcpu=rs64 ;
|
||||
-# AIX variant of RS/6000 & PowerPC
|
||||
-toolset.flags gcc AROPTIONS <address-model>64/<target-os>aix : "-X64" ;
|
||||
|
@ -1,4 +1,4 @@
|
||||
@comment $OpenBSD: PLIST,v 1.15 2015/07/01 08:41:59 jasper Exp $
|
||||
@comment $OpenBSD: PLIST,v 1.16 2015/08/03 18:29:30 jca Exp $
|
||||
@bin bin/b2
|
||||
@bin bin/bjam
|
||||
include/boost/
|
||||
@ -11559,12 +11559,6 @@ lib/libboost_container-mt.a
|
||||
@lib lib/libboost_container-mt.so.${LIBboost_container-mt_VERSION}
|
||||
lib/libboost_container.a
|
||||
@lib lib/libboost_container.so.${LIBboost_container_VERSION}
|
||||
lib/libboost_context-mt.a
|
||||
@lib lib/libboost_context-mt.so.${LIBboost_context-mt_VERSION}
|
||||
lib/libboost_coroutine-mt.a
|
||||
@lib lib/libboost_coroutine-mt.so.${LIBboost_coroutine-mt_VERSION}
|
||||
lib/libboost_coroutine.a
|
||||
@lib lib/libboost_coroutine.so.${LIBboost_coroutine_VERSION}
|
||||
lib/libboost_date_time-mt.a
|
||||
@lib lib/libboost_date_time-mt.so.${LIBboost_date_time-mt_VERSION}
|
||||
lib/libboost_date_time.a
|
||||
|
Loading…
Reference in New Issue
Block a user