mirror of https://github.com/lukechilds/komodo.git
Gavin Andresen
11 years ago
7 changed files with 102 additions and 54 deletions
@ -1,33 +1,66 @@ |
|||
--- |
|||
name: "boost" |
|||
suites: |
|||
- "lucid" |
|||
- "precise" |
|||
architectures: |
|||
- "i386" |
|||
- "amd64" |
|||
packages: |
|||
- "mingw32" |
|||
- "mingw-w64" |
|||
- "g++-mingw-w64" |
|||
- "faketime" |
|||
- "zip" |
|||
reference_datetime: "2011-01-30 00:00:00" |
|||
remotes: [] |
|||
files: |
|||
- "boost_1_50_0.tar.bz2" |
|||
- "boost_1_54_0.tar.bz2" |
|||
- "boost-mingw-gas-cross-compile-2013-03-03.patch" |
|||
script: | |
|||
# Defines |
|||
INSTALLPREFIX="$OUTDIR/staging/boost" |
|||
HOST=i686-w64-mingw32 |
|||
# Input Integrity Check |
|||
echo "047e927de336af106a24bceba30069980c191529fd76b8dff8eb9a328b48ae1d boost_1_54_0.tar.bz2" | shasum -c |
|||
echo "d2b7f6a1d7051faef3c9cf41a92fa3671d905ef1e1da920d07651a43299f6268 boost-mingw-gas-cross-compile-2013-03-03.patch" | shasum -c |
|||
|
|||
mkdir -p "$INSTALLPREFIX" |
|||
tar xjf boost_1_50_0.tar.bz2 |
|||
cd boost_1_50_0 |
|||
echo "using gcc : 4.4 : i586-mingw32msvc-g++ |
|||
tar xjf boost_1_54_0.tar.bz2 |
|||
cd boost_1_54_0 |
|||
GCCVERSION=$($HOST-g++ -E -dM $(mktemp --suffix=.h) | grep __VERSION__ | cut -d ' ' -f 3 | cut -d '"' -f 2) |
|||
echo "using gcc : $GCCVERSION : $HOST-g++ |
|||
: |
|||
<rc>i586-mingw32msvc-windres |
|||
<archiver>i586-mingw32msvc-ar |
|||
<rc>$HOST-windres |
|||
<archiver>$HOST-ar |
|||
<cxxflags>-frandom-seed=boost1 |
|||
<ranlib>$HOST-ranlib |
|||
;" > user-config.jam |
|||
./bootstrap.sh --without-icu |
|||
./bjam toolset=gcc target-os=windows threadapi=win32 threading=multi variant=release link=static --user-config=user-config.jam --without-mpi --without-python -sNO_BZIP2=1 -sNO_ZLIB=1 --layout=tagged --build-type=complete --prefix="$INSTALLPREFIX" $MAKEOPTS install |
|||
|
|||
# Workaround: Upstream boost dev refuses to include patch that would allow Free Software cross-compile toolchain to work |
|||
# This patch was authored by the Fedora package developer and ships in Fedora's mingw32-boost. |
|||
# Please obtain the exact patch that matches the above sha256sum from one of the following mirrors. |
|||
# |
|||
# Read History: https://svn.boost.org/trac/boost/ticket/7262 |
|||
# History Mirror: http://rose.makesad.us/~paulproteus/mirrors/7262%20Boost.Context%20fails%20to%20build%20using%20MinGW.html |
|||
# |
|||
# Patch: https://svn.boost.org/trac/boost/raw-attachment/ticket/7262/boost-mingw.patch |
|||
# Patch Mirror: http://wtogami.fedorapeople.org/boost-mingw-gas-cross-compile-2013-03-03.patch |
|||
# Patch Mirror: http://mindstalk.net/host/boost-mingw-gas-cross-compile-2013-03-03.patch |
|||
# Patch Mirror: http://rose.makesad.us/~paulproteus/mirrors/boost-mingw-gas-cross-compile-2013-03-03.patch |
|||
patch -p0 < ../boost-mingw-gas-cross-compile-2013-03-03.patch |
|||
|
|||
# Bug Workaround: boost-1.54.0 broke the ability to disable zlib |
|||
# https://svn.boost.org/trac/boost/ticket/9156 |
|||
sed -i 's^\[ ac.check-library /zlib//zlib : <library>/zlib//zlib^^' libs/iostreams/build/Jamfile.v2 |
|||
sed -i 's^<source>zlib.cpp <source>gzip.cpp \]^^' libs/iostreams/build/Jamfile.v2 |
|||
|
|||
# http://statmt.org/~s0565741/software/boost_1_52_0/libs/context/doc/html/context/requirements.html |
|||
# Note: Might need these options in the future for 64bit builds. |
|||
# "Please note that address-model=64 must be given to bjam command line on 64bit Windows for 64bit build; otherwise 32bit code will be generated." |
|||
# "For cross-compiling the lib you must specify certain additional properties at bjam command line: target-os, abi, binary-format, architecture and address-model." |
|||
./bjam toolset=gcc binary-format=pe target-os=windows threadapi=win32 threading=multi variant=release link=static --user-config=user-config.jam --without-mpi --without-python -sNO_BZIP2=1 -sNO_ZLIB=1 --layout=tagged --build-type=complete --prefix="$INSTALLPREFIX" $MAKEOPTS install |
|||
|
|||
cd "$INSTALLPREFIX" |
|||
export LD_PRELOAD=/usr/lib/faketime/libfaketime.so.1 |
|||
export FAKETIME=$REFERENCE_DATETIME |
|||
zip -r boost-win32-1.50.0-gitian3.zip * |
|||
cp boost-win32-1.50.0-gitian3.zip $OUTDIR |
|||
zip -r boost-win32-1.54.0-gitian-r6.zip * |
|||
cp boost-win32-1.54.0-gitian-r6.zip $OUTDIR |
|||
|
Loading…
Reference in new issue