Portfile

# $Id: Portfile 20404 2006-11-03 02:13:21Z jberry@macports.org $

PortSystem 1.0

name boost
version 1.33.1
categories devel
maintainers nomaintainer@macports.org
description Collection of portable C++ source libraries
long_description Boost provides free portable peer-reviewed C++ \
libraries. The emphasis is on portable libraries \
which work well with the C++ Standard Library.
homepage http://www.boost.org
master_sites sourceforge
distname ${name}_[strsed ${version} {g/[.]/_/}]
use_bzip2 yes
checksums md5 2b999b2fb7798e1737d1fff8fac602ef
platforms darwin

depends_build bin:bjam:boost-jam

patchfiles patch-libs-test-build-Jamfile \
patch-tools-build-v1-allyourbase.jam

# Note: Boost will not build properly on Jaguar (to my knowledge)
# Additional note: MACOSX_DEPLOYMENT_TARGET of at least 10.3 necessary
# to allow dynamic lookup at runtime, preventing libtool to fail when
# building tests

platform darwin {
build.env-append MACOSX_DEPLOYMENT_TARGET=10.3
build.args-append -sTOOLS=darwin

destroot.env-append MACOSX_DEPLOYMENT_TARGET=10.3
destroot.args-append -sTOOLS=darwin
post-destroot {
cd ${destroot}${prefix}/lib
set libver [join [lrange [split ${version} {.}] 0 2] {_}]
foreach lib [glob *-${libver}.dylib] {
system "install_name_tool -id ${prefix}/lib/${lib} ${lib}"
}
foreach lib [glob *-${libver}.a *-${libver}.dylib] {
set libname [join [lrange [split [file rootname ${lib}] {-}] 0 end-1] {-}]
set libext [file extension ${lib}]
set liblink "${libname}${libext}"
if {![catch {set libtype [file type ${liblink}]}]} {
if {${libtype} == "link"} {
file delete -force ${liblink}
}
}
system "ln -s ${lib} ${liblink}"
}
}
}

use_configure no

build.cmd bjam
build.pre_args --prefix=${prefix}
build.args --without-python \
-sgPYTHON_CONFIG_CHECKED=true \
-sgNO_PYTHON_INSTALL=true

destroot.cmd bjam
destroot.pre_args --prefix=${destroot}${prefix}
destroot.args --without-python \
-sgPYTHON_CONFIG_CHECKED=true \
-sgNO_PYTHON_INSTALL=true
destroot.post_args install
post-destroot {
set incdirver [join [lrange [split ${version} {.}] 0 2] {_}]
system "ln -fs boost-${incdirver}/boost ${destroot}${prefix}/include/boost"
}

variant icu {
depends_lib lib:libicuuc:icu

build.args-append -sHAVE_ICU=1 \
-sICU_PATH=${prefix}

destroot.args-append -sHAVE_ICU=1 \
-sICU_PATH=${prefix}
}

variant python {
set pyversion 2.4

depends_lib lib:libpython${pyversion}:python[strsed ${pyversion} {g/[.]//}]

build.args-delete --without-python \
-sgPYTHON_CONFIG_CHECKED=true \
-sgNO_PYTHON_INSTALL=true
build.args-append -sPYTHON_ROOT=${prefix} \
-sPYTHON_VERSION=${pyversion} \
--with-python-root=${prefix}

destroot.args-delete --without-python \
-sgPYTHON_CONFIG_CHECKED=true \
-sgNO_PYTHON_INSTALL=true
destroot.args-append -sPYTHON_ROOT=${prefix} \
-sPYTHON_VERSION=${pyversion} \
--with-python-root=${prefix}
}

files