upgrade to 1.31.0
- builds the most recent boost version (1.31.0) - respects PTHREAD_{CFLAGS, LIBS} (credits for the PTHREAD_LIBS part go to Craig Rodrigues <rodrigc@crodrigues.org>) - builds all boost libraries - installs docs into DOCSDIR, and examples into EXAMPLESDIR (as before), but the hyperlinks to the example files are corrected (pls. report if you find some broken links) - has new various tunable options, such as o WITH_DEBUG o WITHOUT_THREAD o WITH_OPTIMIZED_CFLAGS o VERBOSE_BUILD - forced major numbers for shared libraries (everything defaults to .so.1, and is symlinked to .so) - installs the possible versions of the libraries (w/ or w/o debugging or threading support) with the same suffix- and prefix-less name, e.g. instead of libboost_filesystem-gcc-debug-s.so.1 (the gcc toolset, debugging info and single threaded) and libboost_filesystem-gcc-m.so.1 (gcc toolset, release version, multi threaded), there now is only libboost_filesystem.so.1. PR: 63100 Submitted by: maintainer
This commit is contained in:
parent
e8a356853d
commit
7baacd2bb2
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=101470
@ -5,41 +5,72 @@
|
||||
#
|
||||
# $FreeBSD$
|
||||
#
|
||||
# This port has the following tunable options:
|
||||
#
|
||||
# option | desscription | default
|
||||
# ----------------------+-----------------------------+---------
|
||||
# WITH_PYTHON | enable Python support | off
|
||||
# WITH_DEBUG | build debugging symbols | off
|
||||
# WITHOUT_THREADS | turn off threading support | off
|
||||
# WITH_OPTIMIZED_CFLAGS | enable -O3 optimization | off
|
||||
# | (otherwise CFLAGS are |
|
||||
# | respected) |
|
||||
# VERBOSE_BUILD | show compiler messages | off
|
||||
|
||||
PORTNAME= boost
|
||||
PORTVERSION= 1.30.2
|
||||
PORTREVISION= 0
|
||||
PORTVERSION= 1.31.0
|
||||
CATEGORIES= devel
|
||||
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE}
|
||||
MASTER_SITE_SUBDIR=${PORTNAME}
|
||||
DISTNAME= ${PORTNAME}-${PORTVERSION}
|
||||
DISTNAME= ${PORTNAME}_${PORTVERSION:S/./_/g}
|
||||
|
||||
MAINTAINER= barner@gmx.de
|
||||
COMMENT= Free peer-reviewed portable C++ source libraries
|
||||
|
||||
MAKE_ENV= BOOST_ROOT=${WRKSRC} BUILD="debug release"
|
||||
USE_BZIP2= yes
|
||||
USE_REINPLACE= yes
|
||||
INSTALLS_SHLIB= yes
|
||||
|
||||
MAKE_ENV+= GCC="${CC} ${CFLAGS}"\
|
||||
GXX="${CXX} ${CXXFLAGS}"
|
||||
|
||||
.if defined(WITH_PYTHON)
|
||||
USE_PYTHON= yes
|
||||
# 1.30.2 doesn't support python2.3
|
||||
PYTHON_VERSION= python2.2
|
||||
COMPILED_LIBS= python
|
||||
USE_PYTHON= 2.3+
|
||||
PYTHON_VERSION= python2.3
|
||||
PLIST_SUB= BOOST_PYTHON=""
|
||||
MAKE_ENV+= PYTHON_ROOT="${PREFIX}" \
|
||||
PYTHON_VERSION="${_PYTHON_VERSION}" \
|
||||
PYTHON_INCLUDES="${PYTHON_INCLUDEDIR}" \
|
||||
PYTHON_LIB_PATH="${PYTHON_LIBDIR}"
|
||||
MAKE_ENV+= PYTHON_ROOT="${PREFIX}"\
|
||||
PYTHON_VERSION="${PYTHON_VERSION}"\
|
||||
PYTHON_INCLUDES="${PYTHON_INCLUDEDIR}"\
|
||||
PYTHON_LIB_PATH="${PYTHON_LIBDIR}"
|
||||
.else
|
||||
PLIST_SUB= BOOST_PYTHON="@comment "
|
||||
.endif
|
||||
|
||||
INSTALLS_SHLIB= yes
|
||||
DOCFILES= *.css *.gif *.htm *.html *.jpeg *.jpg *.png
|
||||
|
||||
.include <bsd.port.pre.mk>
|
||||
|
||||
.if ${OSVERSION} >= 502102
|
||||
FORBIDDEN= "Does not respect PTHREAD_{CFLAGS,LIBS}"
|
||||
.if defined (VERBOSE_BUILD)
|
||||
BJAM_OPTIONS= -d2
|
||||
.endif
|
||||
|
||||
.if defined (WITH_DEBUG)
|
||||
BJAM_BUILD= debug
|
||||
.else
|
||||
BJAM_BUILD= release
|
||||
.endif
|
||||
|
||||
.if defined (WITHOUT_THREADS)
|
||||
BJAM_BUILD+= <threading>single
|
||||
PLIST_SUB+= BOOST_THREADS="@comment "
|
||||
.else
|
||||
BJAM_BUILD+= <threading>multi
|
||||
PLIST_SUB+= BOOST_THREADS=""
|
||||
.endif
|
||||
|
||||
.if defined (WITH_OPTIMIZED_CFLAGS)
|
||||
BJAM_BUILD+= <optimization>speed\
|
||||
<inlining>full
|
||||
.else
|
||||
BJAM_BUILD+= <optimization>off
|
||||
.endif
|
||||
|
||||
.if ${ARCH} == alpha
|
||||
@ -49,32 +80,74 @@ BJAM= ${WRKSRC}/tools/build/jam_src/bin.freebsdsparc/bjam
|
||||
.else
|
||||
BJAM= ${WRKSRC}/tools/build/jam_src/bin.freebsd/bjam
|
||||
.endif
|
||||
|
||||
COMPILED_LIBS+= date_time filesystem regex signals test thread
|
||||
|
||||
SCRIPTS_ENV+= BJAM="${BJAM}"\
|
||||
NOPORTDOCS="${NOPORTDOCS}"\
|
||||
FIND="${FIND}"\
|
||||
GREP="${GREP}"\
|
||||
REINPLACE_CMD="${REINPLACE_CMD}"\
|
||||
LN="${LN}"\
|
||||
MKDIR="${MKDIR}"\
|
||||
TAR="${TAR}"
|
||||
|
||||
do-configure:
|
||||
# for -pthread options
|
||||
.if ${OSVERSION} >= 500016
|
||||
cd ${WRKSRC} && patch < ${FILESDIR}/gcc-tools.jam.diff
|
||||
.if !defined(NOPORTDOCS)
|
||||
SCRIPTS_ENV+= PORTDOCS="true"\
|
||||
DOCSDIR="${DOCSDIR}"\
|
||||
EXAMPLESDIR="${EXAMPLESDIR}"
|
||||
.endif
|
||||
|
||||
# Do the right thing(tm) for pthread support
|
||||
post-patch:
|
||||
@${REINPLACE_CMD} -e 's|%%PTHREAD_CFLAGS%%|${PTHREAD_CFLAGS}|'\
|
||||
${WRKSRC}/tools/build/v1/gcc-tools.jam
|
||||
@${REINPLACE_CMD} -e 's|%%PTHREAD_LIBS%%|${PTHREAD_LIBS}|'\
|
||||
${WRKSRC}/tools/build/v1/gcc-tools.jam
|
||||
|
||||
do-build:
|
||||
cd ${WRKSRC}/tools/build/jam_src && ./build.sh gcc
|
||||
.for lib in ${COMPILED_LIBS}
|
||||
cd ${WRKSRC}/libs/${lib}/build && ${SETENV} ${MAKE_ENV} ${BJAM} ${BJAM_FLAGS}
|
||||
.endfor
|
||||
|
||||
do-install:
|
||||
${INSTALL_PROGRAM} ${BJAM} ${PREFIX}/bin/
|
||||
cd ${WRKSRC} && ${FIND} libs -type f -name \*.a -exec ${INSTALL_DATA} \{\} ${PREFIX}/lib \;
|
||||
cd ${WRKSRC} && ${FIND} libs -type f -name \*.so -exec ${INSTALL_PROGRAM} \{\} ${PREFIX}/lib \;
|
||||
cd ${WRKSRC} && ${FIND} boost -type d -exec ${MKDIR} ${PREFIX}/include/\{\} \;
|
||||
cd ${WRKSRC} && ${FIND} boost -type f -exec ${INSTALL_DATA} \{\} ${PREFIX}/include/\{\} \;
|
||||
.if !defined(NOPORTDOCS)
|
||||
${MKDIR} ${DOCSDIR} ${EXAMPLESDIR}
|
||||
cd ${WRKSRC} && ${FIND} * -type f \( -name \*.htm ${DOCFILES:S/^/-o -name \\/} \) | ${TAR} cTf - - | ${TAR} xUCf ${DOCSDIR} -
|
||||
cd ${WRKSRC} && ${FIND} libs -type d -name example\* | ${TAR} cTf - - | ${TAR} xUCf ${EXAMPLESDIR} -
|
||||
# Print configuration
|
||||
@${ECHO_CMD}
|
||||
@${ECHO_CMD} Selected options:
|
||||
@${ECHO_CMD} \(see the Makefile for a description of available tunables\)
|
||||
@${ECHO_CMD}
|
||||
@${ECHO_CMD} -n o Debugging symbols....
|
||||
.if defined (WITH_DEBUG)
|
||||
@${ECHO_CMD} yes
|
||||
.else
|
||||
@${ECHO_CMD} no
|
||||
.endif
|
||||
|
||||
@${ECHO_CMD} -n o Thread support.......
|
||||
.if defined (WITHOUT_THREADS)
|
||||
@${ECHO_CMD} no
|
||||
.else
|
||||
@${ECHO_CMD} yes
|
||||
.endif
|
||||
|
||||
@${ECHO_CMD} -n o Extra optimization...
|
||||
.if defined (WITH_OPTIMIZED_CFLAGS)
|
||||
@${ECHO_CMD} yes
|
||||
.else
|
||||
@${ECHO_CMD} no
|
||||
.endif
|
||||
|
||||
@${ECHO_CMD} -n o Python support.......
|
||||
.if defined (WITH_PYTHON)
|
||||
@${ECHO_CMD} yes
|
||||
.else
|
||||
@${RM} -rf ${WRKSRC}/libs/python
|
||||
@${ECHO_CMD} no
|
||||
.endif
|
||||
@${ECHO_CMD}
|
||||
|
||||
# build the bjam project build tool
|
||||
@cd ${WRKSRC}/tools/build/jam_src && ./build.sh gcc
|
||||
|
||||
# build the library
|
||||
@cd ${WRKSRC}; \
|
||||
${SETENV} ${MAKE_ENV} ${BJAM} ${BJAM_OPTIONS} --prefix=${PREFIX}\
|
||||
"-sTOOLS=gcc" "-sBUILD=${BJAM_BUILD}"
|
||||
|
||||
do-install:
|
||||
@${SETENV} ${SCRIPTS_ENV} ${SH} ${SCRIPTDIR}/do-install
|
||||
|
||||
.include <bsd.port.post.mk>
|
||||
|
@ -1 +1,2 @@
|
||||
MD5 (boost-1.30.2.tar.gz) = 90aa1cc62f82f50a5dfa6def6a1be32f
|
||||
MD5 (boost_1_31_0.tar.bz2) = 8cc183538eaa5cfc53d88d0e94bd2fd4
|
||||
SIZE (boost_1_31_0.tar.bz2) = 6979482
|
||||
|
11
devel/boost/files/patch-libs::test:src::test_tools.cpp
Normal file
11
devel/boost/files/patch-libs::test:src::test_tools.cpp
Normal file
@ -0,0 +1,11 @@
|
||||
--- libs/test/src/test_tools.cpp.orig Tue Feb 17 16:31:56 2004
|
||||
+++ libs/test/src/test_tools.cpp Tue Feb 17 16:32:10 2004
|
||||
@@ -191,7 +191,7 @@
|
||||
void
|
||||
print_log_value<char>::operator()( std::ostream& ostr, char t )
|
||||
{
|
||||
- if( std::isprint( t ) )
|
||||
+ if( isprint( t ) )
|
||||
ostr << '\'' << t << '\'';
|
||||
else
|
||||
ostr << std::hex
|
11
devel/boost/files/patch-tools::build::v1::allyourbase.jam
Normal file
11
devel/boost/files/patch-tools::build::v1::allyourbase.jam
Normal file
@ -0,0 +1,11 @@
|
||||
--- tools/build/v1/allyourbase.jam.orig Wed Feb 18 14:04:28 2004
|
||||
+++ tools/build/v1/allyourbase.jam Wed Feb 18 14:02:44 2004
|
||||
@@ -457,7 +457,7 @@
|
||||
SPLITPATH ?= ":" ; # dwa -- added missing SPLITPATH
|
||||
STDHDRS ?= /usr/include ;
|
||||
SUFEXE ?= "" ;
|
||||
-SUFDLL ?= .so ;
|
||||
+SUFDLL ?= .so.1 ;
|
||||
SUFLIB ?= .a ;
|
||||
SUFOBJ ?= .o ;
|
||||
PREDLL ?= lib ;
|
14
devel/boost/files/patch-tools::build::v1::boost-base.jam
Normal file
14
devel/boost/files/patch-tools::build::v1::boost-base.jam
Normal file
@ -0,0 +1,14 @@
|
||||
--- tools/build/v1/boost-base.jam.orig Wed Jan 28 23:52:25 2004
|
||||
+++ tools/build/v1/boost-base.jam Wed Feb 18 14:06:58 2004
|
||||
@@ -2621,11 +2621,6 @@
|
||||
local version-tag = [ MATCH "^([^.]+).([^.]+)" : $(version-number[1]) ] ;
|
||||
version-tag = $(version-tag:J="_") ;
|
||||
|
||||
- tags += $(toolset-tag:J=) ;
|
||||
- tags += $(thread-tag:J=) ;
|
||||
- tags += $(runtime-tag:J=) ;
|
||||
- tags += $(version-tag) ;
|
||||
-
|
||||
if $(tags)
|
||||
{
|
||||
return $(properties) <*><*><tag><prefix>-$(tags:J=-) ;
|
22
devel/boost/files/patch-tools::build::v1::gcc-tools.jam
Normal file
22
devel/boost/files/patch-tools::build::v1::gcc-tools.jam
Normal file
@ -0,0 +1,22 @@
|
||||
--- tools/build/v1/gcc-tools.jam.orig Thu Jan 22 05:11:52 2004
|
||||
+++ tools/build/v1/gcc-tools.jam Wed Feb 18 12:57:30 2004
|
||||
@@ -61,7 +61,7 @@
|
||||
flags gcc LINKFLAGS <runtime-link>static : -static ;
|
||||
flags gcc CFLAGS <debug-symbols>on : -g ;
|
||||
flags gcc LINKFLAGS <debug-symbols>on : -g ;
|
||||
-flags gcc CFLAGS <optimization>off : -O0 ;
|
||||
+flags gcc CFLAGS <optimization>off : ;
|
||||
flags gcc CFLAGS <optimization>speed : -O3 ;
|
||||
|
||||
# Other optimizations we might want for GCC
|
||||
@@ -125,8 +125,8 @@
|
||||
}
|
||||
case *BSD :
|
||||
{
|
||||
- flags gcc CFLAGS <threading>multi : -pthread ;
|
||||
- flags gcc LINKFLAGS <threading>multi : -pthread ;
|
||||
+ flags gcc CFLAGS <threading>multi : %%PTHREAD_CFLAGS%% ;
|
||||
+ flags gcc LINKFLAGS <threading>multi : %%PTHREAD_LIBS%% ;
|
||||
# there is no -lrt on BSD
|
||||
}
|
||||
case IRIX :
|
File diff suppressed because it is too large
Load Diff
53
devel/boost/scripts/do-install
Normal file
53
devel/boost/scripts/do-install
Normal file
@ -0,0 +1,53 @@
|
||||
#!/bin/sh
|
||||
|
||||
# Fix links to example files
|
||||
cd ${WRKSRC}/libs && for dir in *; do
|
||||
if [ -d $dir/doc ]; then
|
||||
for file in $dir/doc/*; do
|
||||
${GREP} -s -q '\.\./example/' $file && \
|
||||
${REINPLACE_CMD} -e\
|
||||
"s|../example/|${PREFIX}/share/examples/boost/$dir/|g" $file
|
||||
done;
|
||||
fi;
|
||||
done;
|
||||
|
||||
# Install bjam tool
|
||||
${BSD_INSTALL_PROGRAM} ${BJAM} ${PREFIX}/bin/
|
||||
|
||||
# Install libraries
|
||||
${FIND} ${WRKSRC}/bin/boost/libs -type f -name "*.a"\
|
||||
-exec ${BSD_INSTALL_DATA} \{\} ${PREFIX}/lib \;
|
||||
|
||||
${FIND} ${WRKSRC}/bin/boost/libs -type f -name "*.so.1"\
|
||||
-exec ${BSD_INSTALL_DATA} \{\} ${PREFIX}/lib \;
|
||||
|
||||
# Create symlinks for shared libraries
|
||||
cd ${PREFIX}/lib;
|
||||
for i in libboost*.so.1; do
|
||||
${LN} -s $i ${i%%.1};
|
||||
done;
|
||||
|
||||
# Install headers
|
||||
cd ${WRKSRC} && ${FIND} boost -type d\
|
||||
-exec ${MKDIR} ${PREFIX}/include/\{\} \;
|
||||
cd ${WRKSRC} && ${FIND} boost -type f\
|
||||
-exec ${BSD_INSTALL_DATA} \{\} ${PREFIX}/include/\{\} \;
|
||||
|
||||
# Documentation & examples
|
||||
if [ -n ${NOPORTDOCS+xyz} ]; then
|
||||
${MKDIR} ${DOCSDIR} ${EXAMPLESDIR}
|
||||
|
||||
${FIND} ${WRKSRC} -type f -exec chmod 0444 {} \;
|
||||
cd ${WRKSRC} &&\
|
||||
${FIND} . -name "*.htm" -o -name "*.html" -o -name "*.css"\
|
||||
-o -name "*.jp*g" -o -name "*.png" -o -name "*.gif"\
|
||||
| ${TAR} cTf - - | ${TAR} xUCf ${DOCSDIR} -
|
||||
|
||||
cd ${WRKSRC}/libs && for dir in *; do
|
||||
if [ -d ${WRKSRC}/libs/${dir}/example ]; then
|
||||
${MKDIR} ${EXAMPLESDIR}/${dir};
|
||||
cd ${WRKSRC}/libs/${dir}/example && ${TAR} cf - * \
|
||||
| ${TAR} xUCf ${EXAMPLESDIR}/${dir} -;
|
||||
fi;
|
||||
done;
|
||||
fi;
|
Loading…
Reference in New Issue
Block a user