Merge commit 'a34a885031fcb1797621e8968497561a4837e06a' as 'third_party/mason'

This commit is contained in:
Dane Springmeyer
2016-10-28 12:21:21 -07:00
707 changed files with 29942 additions and 0 deletions
+23
View File
@@ -0,0 +1,23 @@
language: cpp
sudo: false
matrix:
include:
- os: osx
compiler: clang
- os: linux
compiler: clang
env:
global:
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
before_install:
script:
- ./mason build ${MASON_NAME} ${MASON_VERSION}
after_success:
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
+45
View File
@@ -0,0 +1,45 @@
#!/usr/bin/env bash
MASON_NAME=7z
MASON_VERSION=9.20.1
MASON_LIB_FILE=bin/7z
. ${MASON_DIR}/mason.sh
function mason_load_source {
mason_download \
https://downloads.sourceforge.net/project/p7zip/p7zip/9.20.1/p7zip_9.20.1_src_all.tar.bz2 \
30b1ff90105134947c67427bfc5c570857051f50
mason_extract_tar_bz2
export MASON_BUILD_PATH=${MASON_ROOT}/.build/p7zip_${MASON_VERSION}
}
function mason_prepare_compile {
if [ $(uname -s) = 'Darwin' ]; then
cp makefile.macosx_64bits makefile.machine
elif [ $(uname -s) = 'Linux' ]; then
cp makefile.linux_clang_amd64 makefile.linux
fi
}
function mason_compile {
make all3 -j${MASON_CONCURRENCY}
mkdir -p "${MASON_PREFIX}"
cp -rv bin "${MASON_PREFIX}"
}
function mason_cflags {
:
}
function mason_ldflags {
:
}
function mason_clean {
make clean
}
mason_run "$@"
+61
View File
@@ -0,0 +1,61 @@
#!/usr/bin/env bash
MASON_NAME=Qt
MASON_VERSION=system
MASON_SYSTEM_PACKAGE=true
. ${MASON_DIR}/mason.sh
QT_LIBS=(${2:-QtCore})
if hash qmake 2>/dev/null; then
QMAKE_CMD=qmake
#Some systems such as Fedora23 uses qmake-qt5
elif hash qmake-qt5 2>/dev/null; then
QMAKE_CMD=qmake-qt5
elif hash qmake-qt4 2>/dev/null; then
QMAKE_CMD=qmake-qt4
else
mason_error "Can't find qmake executable"
exit 1
fi
# Qt5 libs are called Qt5*, so we have to use the correct name to pkg-config
QT_VERSION_MAJOR=$($QMAKE_CMD -query QT_VERSION | cut -d. -f1)
if [ ${QT_VERSION_MAJOR} -gt 4 ] ; then
QT_LIBS=(${QT_LIBS[@]/#Qt/Qt${QT_VERSION_MAJOR}})
fi
for LIB in ${QT_LIBS[@]} ; do
if ! `pkg-config ${LIB} --exists` ; then
mason_error "Can't find ${LIB}"
exit 1
fi
done
function mason_system_version {
if [ ${QT_VERSION_MAJOR} -gt 4 ] ; then
pkg-config Qt${QT_VERSION_MAJOR}Core --modversion
else
pkg-config QtCore --modversion
fi
}
function mason_build {
:
}
# pkg-config on OS X returns "-framework\ QtCore", which results in invalid arguments.
function cleanup_args {
python -c "import sys, re; print re.sub(r'(-framework)\\\\', r'\\1', ' '.join(sys.argv[1:]))" "$@"
}
function mason_cflags {
echo ${MASON_CFLAGS} $(cleanup_args `pkg-config ${QT_LIBS[@]} --cflags`)
}
function mason_ldflags {
echo ${MASON_LDFLAGS} $(cleanup_args `pkg-config ${QT_LIBS[@]} --libs`)
}
mason_run "$@"
+15
View File
@@ -0,0 +1,15 @@
language: cpp
sudo: false
env:
global:
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
before_install:
script:
- ./mason build ${MASON_NAME} ${MASON_VERSION}
after_success:
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
+45
View File
@@ -0,0 +1,45 @@
#!/usr/bin/env bash
MASON_NAME=afl
MASON_VERSION=2.19b
MASON_LIB_FILE=bin/afl-fuzz
. ${MASON_DIR}/mason.sh
function mason_load_source {
mason_download \
http://lcamtuf.coredump.cx/afl/releases/afl-2.19b.tgz \
6627c7b7c873e26fb7fbb6fd574c93676442d8b2
mason_extract_tar_gz
export MASON_BUILD_PATH=${MASON_ROOT}/.build/${MASON_NAME}-${MASON_VERSION}
}
function mason_prepare_compile {
${MASON_DIR}/mason install clang 3.8.0
MASON_CLANG=$(${MASON_DIR}/mason prefix clang 3.8.0)
}
function mason_compile {
export PATH=${MASON_CLANG}/bin:$PATH CXX=clang++ CC=clang
make -j${MASON_CONCURRENCY}
cd llvm_mode
make -j${MASON_CONCURRENCY}
cd ..
PREFIX=${MASON_PREFIX} make install
}
function mason_cflags {
:
}
function mason_ldflags {
:
}
function mason_static_libs {
:
}
mason_run "$@"
@@ -0,0 +1,19 @@
language: cpp
sudo: false
os:
- linux
- osx
env:
global:
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
before_install:
script:
- ./mason build ${MASON_NAME} ${MASON_VERSION}
after_success:
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
+45
View File
@@ -0,0 +1,45 @@
#!/usr/bin/env bash
MASON_NAME=android-ndk
MASON_VERSION=arm-9-r10e
MASON_LIB_FILE=
. ${MASON_DIR}/mason.sh
function mason_load_source {
if [ ${MASON_PLATFORM} = 'osx' ]; then
mason_download \
http://dl.google.com/android/ndk/android-ndk-r10e-darwin-x86_64.bin \
dea2dd3939eea3289cab075804abb153014b78d3
elif [ ${MASON_PLATFORM} = 'linux' ]; then
mason_download \
http://dl.google.com/android/ndk/android-ndk-r10e-linux-x86_64.bin \
285606ba6882d27d99ed469fc5533cc3c93967f5
fi
mason_setup_build_dir
chmod +x ../.cache/${MASON_SLUG}
../.cache/${MASON_SLUG} > /dev/null
export MASON_BUILD_PATH=${MASON_ROOT}/.build/android-ndk-r10e
}
function mason_compile {
rm -rf ${MASON_PREFIX}
mkdir -p ${MASON_PREFIX}
${MASON_BUILD_PATH}/build/tools/make-standalone-toolchain.sh \
--toolchain="arm-linux-androideabi-4.9" \
--llvm-version="3.6" \
--package-dir="${MASON_BUILD_PATH}/package-dir/" \
--install-dir="${MASON_PREFIX}" \
--stl="libcxx" \
--arch="arm" \
--platform="android-9"
}
function mason_clean {
make clean
}
mason_run "$@"
@@ -0,0 +1,19 @@
language: cpp
sudo: false
os:
- linux
- osx
env:
global:
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
before_install:
script:
- ./mason build ${MASON_NAME} ${MASON_VERSION}
after_success:
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
+45
View File
@@ -0,0 +1,45 @@
#!/usr/bin/env bash
MASON_NAME=android-ndk
MASON_VERSION=arm-9-r11c
MASON_LIB_FILE=
. ${MASON_DIR}/mason.sh
function mason_load_source {
if [ ${MASON_PLATFORM} = 'osx' ]; then
mason_download \
http://dl.google.com/android/repository/android-ndk-r11c-darwin-x86_64.zip \
0c6fa2017dd5237f6270887c85feedc4aafb3aef
elif [ ${MASON_PLATFORM} = 'linux' ]; then
mason_download \
http://dl.google.com/android/repository/android-ndk-r11c-linux-x86_64.zip \
0c646e2fceb3ef853e1832f4aa3a0dc4c16d2229
fi
mason_setup_build_dir
rm -rf ./android-ndk-r11c
unzip -q ../.cache/${MASON_SLUG} $@
export MASON_BUILD_PATH=${MASON_ROOT}/.build/android-ndk-r11c
}
function mason_compile {
rm -rf ${MASON_PREFIX}
mkdir -p ${MASON_PREFIX}
${MASON_BUILD_PATH}/build/tools/make-standalone-toolchain.sh \
--toolchain="arm-linux-androideabi-clang" \
--use-llvm \
--package-dir="${MASON_BUILD_PATH}/package-dir/" \
--install-dir="${MASON_PREFIX}" \
--stl="libcxx" \
--arch="arm" \
--platform="android-9"
}
function mason_clean {
make clean
}
mason_run "$@"
@@ -0,0 +1,19 @@
language: cpp
sudo: false
os:
- linux
- osx
env:
global:
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
before_install:
script:
- ./mason build ${MASON_NAME} ${MASON_VERSION}
after_success:
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
+47
View File
@@ -0,0 +1,47 @@
#!/usr/bin/env bash
MASON_NAME=android-ndk
MASON_VERSION=arm-9-r12b
MASON_LIB_FILE=
. ${MASON_DIR}/mason.sh
function mason_load_source {
if [ ${MASON_PLATFORM} = 'osx' ]; then
mason_download \
http://dl.google.com/android/repository/android-ndk-r12b-darwin-x86_64.zip \
1a3bbdde35a240086b022cdf13ddcf40c27caa6e
elif [ ${MASON_PLATFORM} = 'linux' ]; then
mason_download \
http://dl.google.com/android/repository/android-ndk-r12b-linux-x86_64.zip \
c6286e131c233c25537a306eae0a29d50b352b91
fi
mason_setup_build_dir
rm -rf ./android-ndk-r12b
unzip -q ../.cache/${MASON_SLUG} $@
export MASON_BUILD_PATH=${MASON_ROOT}/.build/android-ndk-r12b
}
function mason_compile {
rm -rf ${MASON_PREFIX}
mkdir -p ${MASON_PREFIX}
${MASON_BUILD_PATH}/build/tools/make_standalone_toolchain.py \
--force \
--arch arm \
--api 9 \
--stl libc++ \
--install-dir "${MASON_PREFIX}"
# NDK r12 ships with .so files which are preferred when linking, but cause
# errors on devices when it's not present.
find "${MASON_PREFIX}" -name "libstdc++.so" -delete
}
function mason_clean {
make clean
}
mason_run "$@"
@@ -0,0 +1,19 @@
language: cpp
sudo: false
os:
- linux
- osx
env:
global:
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
before_install:
script:
- ./mason build ${MASON_NAME} ${MASON_VERSION}
after_success:
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
+43
View File
@@ -0,0 +1,43 @@
#!/usr/bin/env bash
MASON_NAME=android-ndk
MASON_VERSION=arm64-21-r10e-gcc
MASON_LIB_FILE=
. ${MASON_DIR}/mason.sh
function mason_load_source {
if [ ${MASON_PLATFORM} = 'osx' ]; then
mason_download \
http://dl.google.com/android/ndk/android-ndk-r10e-darwin-x86_64.bin \
dea2dd3939eea3289cab075804abb153014b78d3
elif [ ${MASON_PLATFORM} = 'linux' ]; then
mason_download \
http://dl.google.com/android/ndk/android-ndk-r10e-linux-x86_64.bin \
285606ba6882d27d99ed469fc5533cc3c93967f5
fi
mason_setup_build_dir
chmod +x ../.cache/${MASON_SLUG}
../.cache/${MASON_SLUG} > /dev/null
export MASON_BUILD_PATH=${MASON_ROOT}/.build/android-ndk-r10e
}
function mason_compile {
rm -rf ${MASON_PREFIX}
mkdir -p ${MASON_PREFIX}
${MASON_BUILD_PATH}/build/tools/make-standalone-toolchain.sh \
--toolchain="aarch64-linux-android-4.9" \
--package-dir="${MASON_BUILD_PATH}/package-dir/" \
--install-dir="${MASON_PREFIX}" \
--arch="arm64" \
--platform="android-21"
}
function mason_clean {
make clean
}
mason_run "$@"
@@ -0,0 +1,19 @@
language: cpp
sudo: false
os:
- linux
- osx
env:
global:
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
before_install:
script:
- ./mason build ${MASON_NAME} ${MASON_VERSION}
after_success:
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
+45
View File
@@ -0,0 +1,45 @@
#!/usr/bin/env bash
MASON_NAME=android-ndk
MASON_VERSION=arm64-21-r10e
MASON_LIB_FILE=
. ${MASON_DIR}/mason.sh
function mason_load_source {
if [ ${MASON_PLATFORM} = 'osx' ]; then
mason_download \
http://dl.google.com/android/ndk/android-ndk-r10e-darwin-x86_64.bin \
dea2dd3939eea3289cab075804abb153014b78d3
elif [ ${MASON_PLATFORM} = 'linux' ]; then
mason_download \
http://dl.google.com/android/ndk/android-ndk-r10e-linux-x86_64.bin \
285606ba6882d27d99ed469fc5533cc3c93967f5
fi
mason_setup_build_dir
chmod +x ../.cache/${MASON_SLUG}
../.cache/${MASON_SLUG} > /dev/null
export MASON_BUILD_PATH=${MASON_ROOT}/.build/android-ndk-r10e
}
function mason_compile {
rm -rf ${MASON_PREFIX}
mkdir -p ${MASON_PREFIX}
${MASON_BUILD_PATH}/build/tools/make-standalone-toolchain.sh \
--toolchain="aarch64-linux-android-4.9" \
--llvm-version="3.6" \
--package-dir="${MASON_BUILD_PATH}/package-dir/" \
--install-dir="${MASON_PREFIX}" \
--stl="libcxx" \
--arch="arm64" \
--platform="android-21"
}
function mason_clean {
make clean
}
mason_run "$@"
@@ -0,0 +1,19 @@
language: cpp
sudo: false
os:
- linux
- osx
env:
global:
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
before_install:
script:
- ./mason build ${MASON_NAME} ${MASON_VERSION}
after_success:
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
+45
View File
@@ -0,0 +1,45 @@
#!/usr/bin/env bash
MASON_NAME=android-ndk
MASON_VERSION=arm64-21-r11c
MASON_LIB_FILE=
. ${MASON_DIR}/mason.sh
function mason_load_source {
if [ ${MASON_PLATFORM} = 'osx' ]; then
mason_download \
http://dl.google.com/android/repository/android-ndk-r11c-darwin-x86_64.zip \
0c6fa2017dd5237f6270887c85feedc4aafb3aef
elif [ ${MASON_PLATFORM} = 'linux' ]; then
mason_download \
http://dl.google.com/android/repository/android-ndk-r11c-linux-x86_64.zip \
0c646e2fceb3ef853e1832f4aa3a0dc4c16d2229
fi
mason_setup_build_dir
rm -rf ./android-ndk-r11c
unzip -q ../.cache/${MASON_SLUG} $@
export MASON_BUILD_PATH=${MASON_ROOT}/.build/android-ndk-r11c
}
function mason_compile {
rm -rf ${MASON_PREFIX}
mkdir -p ${MASON_PREFIX}
${MASON_BUILD_PATH}/build/tools/make-standalone-toolchain.sh \
--toolchain="aarch64-linux-android-clang" \
--use-llvm \
--package-dir="${MASON_BUILD_PATH}/package-dir/" \
--install-dir="${MASON_PREFIX}" \
--stl="libcxx" \
--arch="arm64" \
--platform="android-21"
}
function mason_clean {
make clean
}
mason_run "$@"
@@ -0,0 +1,19 @@
language: cpp
sudo: false
os:
- linux
- osx
env:
global:
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
before_install:
script:
- ./mason build ${MASON_NAME} ${MASON_VERSION}
after_success:
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
+47
View File
@@ -0,0 +1,47 @@
#!/usr/bin/env bash
MASON_NAME=android-ndk
MASON_VERSION=arm64-21-r12b
MASON_LIB_FILE=
. ${MASON_DIR}/mason.sh
function mason_load_source {
if [ ${MASON_PLATFORM} = 'osx' ]; then
mason_download \
http://dl.google.com/android/repository/android-ndk-r12b-darwin-x86_64.zip \
1a3bbdde35a240086b022cdf13ddcf40c27caa6e
elif [ ${MASON_PLATFORM} = 'linux' ]; then
mason_download \
http://dl.google.com/android/repository/android-ndk-r12b-linux-x86_64.zip \
c6286e131c233c25537a306eae0a29d50b352b91
fi
mason_setup_build_dir
rm -rf ./android-ndk-r12b
unzip -q ../.cache/${MASON_SLUG} $@
export MASON_BUILD_PATH=${MASON_ROOT}/.build/android-ndk-r12b
}
function mason_compile {
rm -rf ${MASON_PREFIX}
mkdir -p ${MASON_PREFIX}
${MASON_BUILD_PATH}/build/tools/make_standalone_toolchain.py \
--force \
--arch arm64 \
--api 21 \
--stl libc++ \
--install-dir "${MASON_PREFIX}"
# NDK r12 ships with .so files which are preferred when linking, but cause
# errors on devices when it's not present.
find "${MASON_PREFIX}" -name "libstdc++.so" -delete
}
function mason_clean {
make clean
}
mason_run "$@"
@@ -0,0 +1,19 @@
language: cpp
sudo: false
os:
- linux
- osx
env:
global:
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
before_install:
script:
- ./mason build ${MASON_NAME} ${MASON_VERSION}
after_success:
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
+45
View File
@@ -0,0 +1,45 @@
#!/usr/bin/env bash
MASON_NAME=android-ndk
MASON_VERSION=mips-9-r10e
MASON_LIB_FILE=
. ${MASON_DIR}/mason.sh
function mason_load_source {
if [ ${MASON_PLATFORM} = 'osx' ]; then
mason_download \
http://dl.google.com/android/ndk/android-ndk-r10e-darwin-x86_64.bin \
dea2dd3939eea3289cab075804abb153014b78d3
elif [ ${MASON_PLATFORM} = 'linux' ]; then
mason_download \
http://dl.google.com/android/ndk/android-ndk-r10e-linux-x86_64.bin \
285606ba6882d27d99ed469fc5533cc3c93967f5
fi
mason_setup_build_dir
chmod +x ../.cache/${MASON_SLUG}
../.cache/${MASON_SLUG} > /dev/null
export MASON_BUILD_PATH=${MASON_ROOT}/.build/android-ndk-r10e
}
function mason_compile {
rm -rf ${MASON_PREFIX}
mkdir -p ${MASON_PREFIX}
${MASON_BUILD_PATH}/build/tools/make-standalone-toolchain.sh \
--toolchain="mipsel-linux-android-4.9" \
--llvm-version="3.6" \
--package-dir="${MASON_BUILD_PATH}/package-dir/" \
--install-dir="${MASON_PREFIX}" \
--stl="libcxx" \
--arch="mips" \
--platform="android-9"
}
function mason_clean {
make clean
}
mason_run "$@"
@@ -0,0 +1,19 @@
language: cpp
sudo: false
os:
- linux
- osx
env:
global:
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
before_install:
script:
- ./mason build ${MASON_NAME} ${MASON_VERSION}
after_success:
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
+45
View File
@@ -0,0 +1,45 @@
#!/usr/bin/env bash
MASON_NAME=android-ndk
MASON_VERSION=mips-9-r11c
MASON_LIB_FILE=
. ${MASON_DIR}/mason.sh
function mason_load_source {
if [ ${MASON_PLATFORM} = 'osx' ]; then
mason_download \
http://dl.google.com/android/repository/android-ndk-r11c-darwin-x86_64.zip \
0c6fa2017dd5237f6270887c85feedc4aafb3aef
elif [ ${MASON_PLATFORM} = 'linux' ]; then
mason_download \
http://dl.google.com/android/repository/android-ndk-r11c-linux-x86_64.zip \
0c646e2fceb3ef853e1832f4aa3a0dc4c16d2229
fi
mason_setup_build_dir
rm -rf ./android-ndk-r11c
unzip -q ../.cache/${MASON_SLUG} $@
export MASON_BUILD_PATH=${MASON_ROOT}/.build/android-ndk-r11c
}
function mason_compile {
rm -rf ${MASON_PREFIX}
mkdir -p ${MASON_PREFIX}
${MASON_BUILD_PATH}/build/tools/make-standalone-toolchain.sh \
--toolchain="mipsel-linux-android-clang" \
--use-llvm \
--package-dir="${MASON_BUILD_PATH}/package-dir/" \
--install-dir="${MASON_PREFIX}" \
--stl="libcxx" \
--arch="mips" \
--platform="android-9"
}
function mason_clean {
make clean
}
mason_run "$@"
@@ -0,0 +1,19 @@
language: cpp
sudo: false
os:
- linux
- osx
env:
global:
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
before_install:
script:
- ./mason build ${MASON_NAME} ${MASON_VERSION}
after_success:
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
+47
View File
@@ -0,0 +1,47 @@
#!/usr/bin/env bash
MASON_NAME=android-ndk
MASON_VERSION=mips-9-r12b
MASON_LIB_FILE=
. ${MASON_DIR}/mason.sh
function mason_load_source {
if [ ${MASON_PLATFORM} = 'osx' ]; then
mason_download \
http://dl.google.com/android/repository/android-ndk-r12b-darwin-x86_64.zip \
1a3bbdde35a240086b022cdf13ddcf40c27caa6e
elif [ ${MASON_PLATFORM} = 'linux' ]; then
mason_download \
http://dl.google.com/android/repository/android-ndk-r12b-linux-x86_64.zip \
c6286e131c233c25537a306eae0a29d50b352b91
fi
mason_setup_build_dir
rm -rf ./android-ndk-r12b
unzip -q ../.cache/${MASON_SLUG} $@
export MASON_BUILD_PATH=${MASON_ROOT}/.build/android-ndk-r12b
}
function mason_compile {
rm -rf ${MASON_PREFIX}
mkdir -p ${MASON_PREFIX}
${MASON_BUILD_PATH}/build/tools/make_standalone_toolchain.py \
--force \
--arch mips \
--api 9 \
--stl libc++ \
--install-dir "${MASON_PREFIX}"
# NDK r12 ships with .so files which are preferred when linking, but cause
# errors on devices when it's not present.
find "${MASON_PREFIX}" -name "libstdc++.so" -delete
}
function mason_clean {
make clean
}
mason_run "$@"
@@ -0,0 +1,19 @@
language: cpp
sudo: false
os:
- linux
- osx
env:
global:
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
before_install:
script:
- ./mason build ${MASON_NAME} ${MASON_VERSION}
after_success:
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
+45
View File
@@ -0,0 +1,45 @@
#!/usr/bin/env bash
MASON_NAME=android-ndk
MASON_VERSION=mips64-21-r10e
MASON_LIB_FILE=
. ${MASON_DIR}/mason.sh
function mason_load_source {
if [ ${MASON_PLATFORM} = 'osx' ]; then
mason_download \
http://dl.google.com/android/ndk/android-ndk-r10e-darwin-x86_64.bin \
dea2dd3939eea3289cab075804abb153014b78d3
elif [ ${MASON_PLATFORM} = 'linux' ]; then
mason_download \
http://dl.google.com/android/ndk/android-ndk-r10e-linux-x86_64.bin \
285606ba6882d27d99ed469fc5533cc3c93967f5
fi
mason_setup_build_dir
chmod +x ../.cache/${MASON_SLUG}
../.cache/${MASON_SLUG} > /dev/null
export MASON_BUILD_PATH=${MASON_ROOT}/.build/android-ndk-r10e
}
function mason_compile {
rm -rf ${MASON_PREFIX}
mkdir -p ${MASON_PREFIX}
${MASON_BUILD_PATH}/build/tools/make-standalone-toolchain.sh \
--toolchain="mips64el-linux-android-4.9" \
--llvm-version="3.6" \
--package-dir="${MASON_BUILD_PATH}/package-dir/" \
--install-dir="${MASON_PREFIX}" \
--stl="libcxx" \
--arch="mips64" \
--platform="android-21"
}
function mason_clean {
make clean
}
mason_run "$@"
@@ -0,0 +1,19 @@
language: cpp
sudo: false
os:
- linux
- osx
env:
global:
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
before_install:
script:
- ./mason build ${MASON_NAME} ${MASON_VERSION}
after_success:
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
+45
View File
@@ -0,0 +1,45 @@
#!/usr/bin/env bash
MASON_NAME=android-ndk
MASON_VERSION=mips64-21-r11c
MASON_LIB_FILE=
. ${MASON_DIR}/mason.sh
function mason_load_source {
if [ ${MASON_PLATFORM} = 'osx' ]; then
mason_download \
http://dl.google.com/android/repository/android-ndk-r11c-darwin-x86_64.zip \
0c6fa2017dd5237f6270887c85feedc4aafb3aef
elif [ ${MASON_PLATFORM} = 'linux' ]; then
mason_download \
http://dl.google.com/android/repository/android-ndk-r11c-linux-x86_64.zip \
0c646e2fceb3ef853e1832f4aa3a0dc4c16d2229
fi
mason_setup_build_dir
rm -rf ./android-ndk-r11c
unzip -q ../.cache/${MASON_SLUG} $@
export MASON_BUILD_PATH=${MASON_ROOT}/.build/android-ndk-r11c
}
function mason_compile {
rm -rf ${MASON_PREFIX}
mkdir -p ${MASON_PREFIX}
${MASON_BUILD_PATH}/build/tools/make-standalone-toolchain.sh \
--toolchain="mips64el-linux-android-clang" \
--use-llvm \
--package-dir="${MASON_BUILD_PATH}/package-dir/" \
--install-dir="${MASON_PREFIX}" \
--stl="libcxx" \
--arch="mips64" \
--platform="android-21"
}
function mason_clean {
make clean
}
mason_run "$@"
@@ -0,0 +1,19 @@
language: cpp
sudo: false
os:
- linux
- osx
env:
global:
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
before_install:
script:
- ./mason build ${MASON_NAME} ${MASON_VERSION}
after_success:
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
+47
View File
@@ -0,0 +1,47 @@
#!/usr/bin/env bash
MASON_NAME=android-ndk
MASON_VERSION=mips64-21-r12b
MASON_LIB_FILE=
. ${MASON_DIR}/mason.sh
function mason_load_source {
if [ ${MASON_PLATFORM} = 'osx' ]; then
mason_download \
http://dl.google.com/android/repository/android-ndk-r12b-darwin-x86_64.zip \
1a3bbdde35a240086b022cdf13ddcf40c27caa6e
elif [ ${MASON_PLATFORM} = 'linux' ]; then
mason_download \
http://dl.google.com/android/repository/android-ndk-r12b-linux-x86_64.zip \
c6286e131c233c25537a306eae0a29d50b352b91
fi
mason_setup_build_dir
rm -rf ./android-ndk-r12b
unzip -q ../.cache/${MASON_SLUG} $@
export MASON_BUILD_PATH=${MASON_ROOT}/.build/android-ndk-r12b
}
function mason_compile {
rm -rf ${MASON_PREFIX}
mkdir -p ${MASON_PREFIX}
${MASON_BUILD_PATH}/build/tools/make_standalone_toolchain.py \
--force \
--arch mips64 \
--api 21 \
--stl libc++ \
--install-dir "${MASON_PREFIX}"
# NDK r12 ships with .so files which are preferred when linking, but cause
# errors on devices when it's not present.
find "${MASON_PREFIX}" -name "libstdc++.so" -delete
}
function mason_clean {
make clean
}
mason_run "$@"
@@ -0,0 +1,19 @@
language: cpp
sudo: false
os:
- linux
- osx
env:
global:
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
before_install:
script:
- ./mason build ${MASON_NAME} ${MASON_VERSION}
after_success:
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
+49
View File
@@ -0,0 +1,49 @@
#!/usr/bin/env bash
MASON_NAME=android-ndk
MASON_VERSION=x86-9-r10e
MASON_LIB_FILE=
. ${MASON_DIR}/mason.sh
function mason_load_source {
if [ ${MASON_PLATFORM} = 'osx' ]; then
mason_download \
http://dl.google.com/android/ndk/android-ndk-r10e-darwin-x86_64.bin \
dea2dd3939eea3289cab075804abb153014b78d3
elif [ ${MASON_PLATFORM} = 'linux' ]; then
mason_download \
http://dl.google.com/android/ndk/android-ndk-r10e-linux-x86_64.bin \
285606ba6882d27d99ed469fc5533cc3c93967f5
fi
mason_setup_build_dir
chmod +x ../.cache/${MASON_SLUG}
../.cache/${MASON_SLUG} > /dev/null
export MASON_BUILD_PATH=${MASON_ROOT}/.build/android-ndk-r10e
}
function mason_compile {
rm -rf ${MASON_PREFIX}
mkdir -p ${MASON_PREFIX}
${MASON_BUILD_PATH}/build/tools/make-standalone-toolchain.sh \
--toolchain="x86-4.9" \
--llvm-version="3.6" \
--package-dir="${MASON_BUILD_PATH}/package-dir/" \
--install-dir="${MASON_PREFIX}" \
--stl="libcxx" \
--arch="x86" \
--platform="android-9"
mkdir -p ${MASON_PREFIX}/prebuilt/android-x86/gdbserver
cp -Rv ${MASON_BUILD_PATH}/prebuilt/android-x86/gdbserver/* \
${MASON_PREFIX}/prebuilt/android-x86/gdbserver/
}
function mason_clean {
make clean
}
mason_run "$@"
@@ -0,0 +1,19 @@
language: cpp
sudo: false
os:
- linux
- osx
env:
global:
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
before_install:
script:
- ./mason build ${MASON_NAME} ${MASON_VERSION}
after_success:
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
+45
View File
@@ -0,0 +1,45 @@
#!/usr/bin/env bash
MASON_NAME=android-ndk
MASON_VERSION=x86-9-r11c
MASON_LIB_FILE=
. ${MASON_DIR}/mason.sh
function mason_load_source {
if [ ${MASON_PLATFORM} = 'osx' ]; then
mason_download \
http://dl.google.com/android/repository/android-ndk-r11c-darwin-x86_64.zip \
0c6fa2017dd5237f6270887c85feedc4aafb3aef
elif [ ${MASON_PLATFORM} = 'linux' ]; then
mason_download \
http://dl.google.com/android/repository/android-ndk-r11c-linux-x86_64.zip \
0c646e2fceb3ef853e1832f4aa3a0dc4c16d2229
fi
mason_setup_build_dir
rm -rf ./android-ndk-r11c
unzip -q ../.cache/${MASON_SLUG} $@
export MASON_BUILD_PATH=${MASON_ROOT}/.build/android-ndk-r11c
}
function mason_compile {
rm -rf ${MASON_PREFIX}
mkdir -p ${MASON_PREFIX}
${MASON_BUILD_PATH}/build/tools/make-standalone-toolchain.sh \
--toolchain="x86-clang" \
--use-llvm \
--package-dir="${MASON_BUILD_PATH}/package-dir/" \
--install-dir="${MASON_PREFIX}" \
--stl="libcxx" \
--arch="x86" \
--platform="android-9"
}
function mason_clean {
make clean
}
mason_run "$@"
@@ -0,0 +1,19 @@
language: cpp
sudo: false
os:
- linux
- osx
env:
global:
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
before_install:
script:
- ./mason build ${MASON_NAME} ${MASON_VERSION}
after_success:
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
+47
View File
@@ -0,0 +1,47 @@
#!/usr/bin/env bash
MASON_NAME=android-ndk
MASON_VERSION=x86-9-r12b
MASON_LIB_FILE=
. ${MASON_DIR}/mason.sh
function mason_load_source {
if [ ${MASON_PLATFORM} = 'osx' ]; then
mason_download \
http://dl.google.com/android/repository/android-ndk-r12b-darwin-x86_64.zip \
1a3bbdde35a240086b022cdf13ddcf40c27caa6e
elif [ ${MASON_PLATFORM} = 'linux' ]; then
mason_download \
http://dl.google.com/android/repository/android-ndk-r12b-linux-x86_64.zip \
c6286e131c233c25537a306eae0a29d50b352b91
fi
mason_setup_build_dir
rm -rf ./android-ndk-r12b
unzip -q ../.cache/${MASON_SLUG} $@
export MASON_BUILD_PATH=${MASON_ROOT}/.build/android-ndk-r12b
}
function mason_compile {
rm -rf ${MASON_PREFIX}
mkdir -p ${MASON_PREFIX}
${MASON_BUILD_PATH}/build/tools/make_standalone_toolchain.py \
--force \
--arch x86 \
--api 9 \
--stl libc++ \
--install-dir "${MASON_PREFIX}"
# NDK r12 ships with .so files which are preferred when linking, but cause
# errors on devices when it's not present.
find "${MASON_PREFIX}" -name "libstdc++.so" -delete
}
function mason_clean {
make clean
}
mason_run "$@"
@@ -0,0 +1,19 @@
language: cpp
sudo: false
os:
- linux
- osx
env:
global:
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
before_install:
script:
- ./mason build ${MASON_NAME} ${MASON_VERSION}
after_success:
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
+45
View File
@@ -0,0 +1,45 @@
#!/usr/bin/env bash
MASON_NAME=android-ndk
MASON_VERSION=x86_64-21-r10e
MASON_LIB_FILE=
. ${MASON_DIR}/mason.sh
function mason_load_source {
if [ ${MASON_PLATFORM} = 'osx' ]; then
mason_download \
http://dl.google.com/android/ndk/android-ndk-r10e-darwin-x86_64.bin \
dea2dd3939eea3289cab075804abb153014b78d3
elif [ ${MASON_PLATFORM} = 'linux' ]; then
mason_download \
http://dl.google.com/android/ndk/android-ndk-r10e-linux-x86_64.bin \
285606ba6882d27d99ed469fc5533cc3c93967f5
fi
mason_setup_build_dir
chmod +x ../.cache/${MASON_SLUG}
../.cache/${MASON_SLUG} > /dev/null
export MASON_BUILD_PATH=${MASON_ROOT}/.build/android-ndk-r10e
}
function mason_compile {
rm -rf ${MASON_PREFIX}
mkdir -p ${MASON_PREFIX}
${MASON_BUILD_PATH}/build/tools/make-standalone-toolchain.sh \
--toolchain="x86_64-4.9" \
--llvm-version="3.6" \
--package-dir="${MASON_BUILD_PATH}/package-dir/" \
--install-dir="${MASON_PREFIX}" \
--stl="libcxx" \
--arch="x86_64" \
--platform="android-21"
}
function mason_clean {
make clean
}
mason_run "$@"
@@ -0,0 +1,19 @@
language: cpp
sudo: false
os:
- linux
- osx
env:
global:
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
before_install:
script:
- ./mason build ${MASON_NAME} ${MASON_VERSION}
after_success:
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
+45
View File
@@ -0,0 +1,45 @@
#!/usr/bin/env bash
MASON_NAME=android-ndk
MASON_VERSION=x86_64-21-r11c
MASON_LIB_FILE=
. ${MASON_DIR}/mason.sh
function mason_load_source {
if [ ${MASON_PLATFORM} = 'osx' ]; then
mason_download \
http://dl.google.com/android/repository/android-ndk-r11c-darwin-x86_64.zip \
0c6fa2017dd5237f6270887c85feedc4aafb3aef
elif [ ${MASON_PLATFORM} = 'linux' ]; then
mason_download \
http://dl.google.com/android/repository/android-ndk-r11c-linux-x86_64.zip \
0c646e2fceb3ef853e1832f4aa3a0dc4c16d2229
fi
mason_setup_build_dir
rm -rf ./android-ndk-r11c
unzip -q ../.cache/${MASON_SLUG} $@
export MASON_BUILD_PATH=${MASON_ROOT}/.build/android-ndk-r11c
}
function mason_compile {
rm -rf ${MASON_PREFIX}
mkdir -p ${MASON_PREFIX}
${MASON_BUILD_PATH}/build/tools/make-standalone-toolchain.sh \
--toolchain="x86_64-clang" \
--use-llvm \
--package-dir="${MASON_BUILD_PATH}/package-dir/" \
--install-dir="${MASON_PREFIX}" \
--stl="libcxx" \
--arch="x86_64" \
--platform="android-21"
}
function mason_clean {
make clean
}
mason_run "$@"
@@ -0,0 +1,19 @@
language: cpp
sudo: false
os:
- linux
- osx
env:
global:
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
before_install:
script:
- ./mason build ${MASON_NAME} ${MASON_VERSION}
after_success:
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
+47
View File
@@ -0,0 +1,47 @@
#!/usr/bin/env bash
MASON_NAME=android-ndk
MASON_VERSION=x86_64-21-r12b
MASON_LIB_FILE=
. ${MASON_DIR}/mason.sh
function mason_load_source {
if [ ${MASON_PLATFORM} = 'osx' ]; then
mason_download \
http://dl.google.com/android/repository/android-ndk-r12b-darwin-x86_64.zip \
1a3bbdde35a240086b022cdf13ddcf40c27caa6e
elif [ ${MASON_PLATFORM} = 'linux' ]; then
mason_download \
http://dl.google.com/android/repository/android-ndk-r12b-linux-x86_64.zip \
c6286e131c233c25537a306eae0a29d50b352b91
fi
mason_setup_build_dir
rm -rf ./android-ndk-r12b
unzip -q ../.cache/${MASON_SLUG} $@
export MASON_BUILD_PATH=${MASON_ROOT}/.build/android-ndk-r12b
}
function mason_compile {
rm -rf ${MASON_PREFIX}
mkdir -p ${MASON_PREFIX}
${MASON_BUILD_PATH}/build/tools/make_standalone_toolchain.py \
--force \
--arch x86_64 \
--api 21 \
--stl libc++ \
--install-dir "${MASON_PREFIX}"
# NDK r12 ships with .so files which are preferred when linking, but cause
# errors on devices when it's not present.
find "${MASON_PREFIX}" -name "libstdc++.so" -delete
}
function mason_clean {
make clean
}
mason_run "$@"
+50
View File
@@ -0,0 +1,50 @@
language: cpp
sudo: false
matrix:
exclude:
- os: linux
include:
- os: osx
osx_image: xcode7
env: MASON_PLATFORM=ios
compiler: clang
- os: osx
osx_image: xcode7
env: MASON_PLATFORM=osx
compiler: clang
- os: linux
env: MASON_PLATFORM=linux
compiler: clang
addons:
apt:
sources:
- ubuntu-toolchain-r-test
- llvm-toolchain-precise-3.7
- george-edison55-precise-backports
packages:
- clang-3.7
- cmake
- cmake-data
env:
global:
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
cache: apt
before_install:
- if [[ ${MASON_PLATFORM} == "osx" || ${MASON_PLATFORM} == "ios" ]]; then brew install cmake ; fi
before_script:
- if [[ ${MASON_PLATFORM} == "linux" && ${CXX} == "clang++" ]]; then export CXX="clang++-3.7" CC="clang-3.7" ; fi
script:
- ./mason build ${MASON_NAME} ${MASON_VERSION}
after_success:
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
+63
View File
@@ -0,0 +1,63 @@
#!/usr/bin/env bash
MASON_NAME=benchmark
MASON_VERSION=1.0.0
MASON_LIB_FILE=lib/libbenchmark.a
. ${MASON_DIR}/mason.sh
function mason_load_source {
mason_download \
https://github.com/google/benchmark/archive/v1.0.0.tar.gz \
dcf87e5faead951fd1e9ab103cb36a7c8ebe4837
mason_extract_tar_gz
export MASON_BUILD_PATH=${MASON_ROOT}/.build/benchmark-${MASON_VERSION}
}
function mason_compile {
rm -rf build
mkdir -p build
cd build
if [ ${MASON_PLATFORM} == 'ios' ] ; then
# Make sure CMake thinks we're cross-compiling and manually set the exit codes
# because CMake can't run the test programs
echo "set (CMAKE_SYSTEM_NAME Darwin)" > toolchain.cmake
cmake \
-DCMAKE_TOOLCHAIN_FILE=toolchain.cmake \
-DRUN_HAVE_STD_REGEX=1 \
-DRUN_HAVE_POSIX_REGEX=0 \
-DRUN_HAVE_STEADY_CLOCK=0 \
-DCMAKE_CXX_FLAGS="${CFLAGS:-}" \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX="${MASON_PREFIX}" \
-DBENCHMARK_ENABLE_LTO=ON \
-DBENCHMARK_ENABLE_TESTING=OFF \
..
else
cmake \
${MASON_CMAKE_TOOLCHAIN} \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX="${MASON_PREFIX}" \
-DBENCHMARK_ENABLE_LTO=ON \
-DBENCHMARK_ENABLE_TESTING=OFF \
..
fi
make install -j${MASON_CONCURRENCY}
}
function mason_cflags {
echo -isystem ${MASON_PREFIX}/include
}
function mason_ldflags {
echo -lpthread
}
function mason_static_libs {
echo ${MASON_PREFIX}/${MASON_LIB_FILE}
}
mason_run "$@"
+30
View File
@@ -0,0 +1,30 @@
language: generic
sudo: false
addons:
apt:
sources:
- ubuntu-toolchain-r-test
- llvm-toolchain-precise-3.7
packages:
- clang-3.7
matrix:
include:
- os: linux
compiler: clang
env: CXX=clang++-3.7 CC=clang-3.7
env:
global:
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
before_install:
script:
- ./mason build ${MASON_NAME} ${MASON_VERSION}
after_success:
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
+45
View File
@@ -0,0 +1,45 @@
#!/usr/bin/env bash
MASON_NAME=binutils
MASON_VERSION=2.26
MASON_LIB_FILE=bin/ld
. ${MASON_DIR}/mason.sh
function mason_load_source {
mason_download \
http://ftp.gnu.org/gnu/binutils/${MASON_NAME}-${MASON_VERSION}.tar.bz2 \
05b22d6ef8003e76f7d05500363a3ee8cc66a7ae
mason_extract_tar_bz2
export MASON_BUILD_PATH=${MASON_ROOT}/.build/${MASON_NAME}-${MASON_VERSION}
}
function mason_compile {
./configure \
--prefix=${MASON_PREFIX} \
${MASON_HOST_ARG} \
--enable-static \
--disable-shared \
--disable-dependency-tracking
make -j${MASON_CONCURRENCY}
make install
}
function mason_strip_ldflags {
shift # -L...
shift # -lpng16
echo "$@"
}
function mason_ldflags {
mason_strip_ldflags $(`mason_pkgconfig` --static --libs)
}
function mason_clean {
make clean
}
mason_run "$@"
+19
View File
@@ -0,0 +1,19 @@
language: cpp
sudo: false
os:
- linux
- osx
env:
global:
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
before_install:
script:
- ./mason build ${MASON_NAME} ${MASON_VERSION}
after_success:
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
+49
View File
@@ -0,0 +1,49 @@
#!/usr/bin/env bash
MASON_NAME=boost
MASON_VERSION=1.57.0
MASON_HEADER_ONLY=true
. ${MASON_DIR}/mason.sh
BOOST_ROOT=${MASON_PREFIX}
function mason_load_source {
mason_download \
http://downloads.sourceforge.net/project/boost/boost/1.57.0/boost_1_57_0.tar.bz2 \
397306fa6d0858c4885fbba7d43a0164dcb7f53e
mason_extract_tar_bz2 boost_1_57_0/boost
MASON_BUILD_PATH=${MASON_ROOT}/.build/boost_1_57_0
}
function mason_prefix {
echo "${BOOST_ROOT}"
}
function mason_compile {
mkdir -p ${BOOST_ROOT}/include
mv ${MASON_ROOT}/.build/boost_1_57_0/boost ${BOOST_ROOT}/include
# work around NDK bug https://code.google.com/p/android/issues/detail?id=79483
patch ${BOOST_ROOT}/include/boost/core/demangle.hpp <<< "19a20,21
> #if !defined(__ANDROID__)
>
25a28,29
> #endif
>
"
}
function mason_cflags {
echo "-I${BOOST_ROOT}/include"
}
function mason_ldflags {
:
}
mason_run "$@"
+19
View File
@@ -0,0 +1,19 @@
language: cpp
sudo: false
os:
- linux
- osx
env:
global:
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
before_install:
script:
- ./mason build ${MASON_NAME} ${MASON_VERSION}
after_success:
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
+49
View File
@@ -0,0 +1,49 @@
#!/usr/bin/env bash
MASON_NAME=boost
MASON_VERSION=1.58.0
MASON_HEADER_ONLY=true
. ${MASON_DIR}/mason.sh
BOOST_ROOT=${MASON_PREFIX}
function mason_load_source {
mason_download \
http://downloads.sourceforge.net/project/boost/boost/1.58.0/boost_1_58_0.tar.bz2 \
43e46651e762e4daf72a5d21dca86ae151e65378
mason_extract_tar_bz2 boost_1_58_0/boost
MASON_BUILD_PATH=${MASON_ROOT}/.build/boost_1_58_0
}
function mason_prefix {
echo "${BOOST_ROOT}"
}
function mason_compile {
mkdir -p ${BOOST_ROOT}/include
mv ${MASON_ROOT}/.build/boost_1_58_0/boost ${BOOST_ROOT}/include
# work around NDK bug https://code.google.com/p/android/issues/detail?id=79483
patch ${BOOST_ROOT}/include/boost/core/demangle.hpp <<< "19a20,21
> #if !defined(__ANDROID__)
>
25a28,29
> #endif
>
"
}
function mason_cflags {
echo "-I${BOOST_ROOT}/include"
}
function mason_ldflags {
:
}
mason_run "$@"
+19
View File
@@ -0,0 +1,19 @@
language: cpp
sudo: false
os:
- linux
- osx
env:
global:
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
before_install:
script:
- ./mason build ${MASON_NAME} ${MASON_VERSION}
after_success:
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
+49
View File
@@ -0,0 +1,49 @@
#!/usr/bin/env bash
MASON_NAME=boost
MASON_VERSION=1.59.0
MASON_HEADER_ONLY=true
. ${MASON_DIR}/mason.sh
BOOST_ROOT=${MASON_PREFIX}
function mason_load_source {
mason_download \
http://downloads.sourceforge.net/project/boost/boost/1.59.0/boost_1_59_0.tar.bz2 \
ff2e48f4d7e3c4b393d41e07a2f5d923b990967d
mason_extract_tar_bz2 boost_1_59_0/boost
MASON_BUILD_PATH=${MASON_ROOT}/.build/boost_1_59_0
}
function mason_prefix {
echo "${BOOST_ROOT}"
}
function mason_compile {
mkdir -p ${BOOST_ROOT}/include
mv ${MASON_ROOT}/.build/boost_1_59_0/boost ${BOOST_ROOT}/include
# work around NDK bug https://code.google.com/p/android/issues/detail?id=79483
patch ${BOOST_ROOT}/include/boost/core/demangle.hpp <<< "19a20,21
> #if !defined(__ANDROID__)
>
25a28,29
> #endif
>
"
}
function mason_cflags {
echo "-I${BOOST_ROOT}/include"
}
function mason_ldflags {
:
}
mason_run "$@"
+13
View File
@@ -0,0 +1,13 @@
language: cpp
sudo: false
env:
global:
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
script:
- ./mason build ${MASON_NAME} ${MASON_VERSION}
after_success:
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
+49
View File
@@ -0,0 +1,49 @@
#!/usr/bin/env bash
MASON_NAME=boost
MASON_VERSION=1.60.0
MASON_HEADER_ONLY=true
. ${MASON_DIR}/mason.sh
BOOST_ROOT=${MASON_PREFIX}
function mason_load_source {
mason_download \
http://downloads.sourceforge.net/project/boost/boost/1.60.0/boost_1_60_0.tar.bz2 \
40a65135d34c3e3a3cdbe681f06745c086e5b941
mason_extract_tar_bz2 boost_1_60_0/boost
MASON_BUILD_PATH=${MASON_ROOT}/.build/boost_1_60_0
}
function mason_prefix {
echo "${BOOST_ROOT}"
}
function mason_compile {
mkdir -p ${BOOST_ROOT}/include
mv ${MASON_ROOT}/.build/boost_1_60_0/boost ${BOOST_ROOT}/include
# work around NDK bug https://code.google.com/p/android/issues/detail?id=79483
patch ${BOOST_ROOT}/include/boost/core/demangle.hpp <<< "19a20,21
> #if !defined(__ANDROID__)
>
25a28,29
> #endif
>
"
}
function mason_cflags {
echo "-I${BOOST_ROOT}/include"
}
function mason_ldflags {
:
}
mason_run "$@"
+13
View File
@@ -0,0 +1,13 @@
language: cpp
sudo: false
env:
global:
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
script:
- ./mason build ${MASON_NAME} ${MASON_VERSION}
after_success:
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
+8
View File
@@ -0,0 +1,8 @@
#!/usr/bin/env bash
export MASON_VERSION=1.61.0
export BOOST_VERSION=${MASON_VERSION//./_}
export BOOST_TOOLSET="clang"
export BOOST_TOOLSET_CXX="clang++"
export BOOST_ARCH="x86"
export BOOST_SHASUM=0a72c541e468d76a957adc14e54688dd695d566f
+64
View File
@@ -0,0 +1,64 @@
#!/usr/bin/env bash
function mason_load_source {
mason_download \
http://downloads.sourceforge.net/project/boost/boost/${MASON_VERSION}/boost_${BOOST_VERSION}.tar.bz2 \
${BOOST_SHASUM}
export MASON_BUILD_PATH=${MASON_ROOT}/.build/boost_${BOOST_VERSION}
mason_extract_tar_bz2
}
function gen_config() {
echo "using $1 : : $(which $2)" > user-config.jam
if [[ "${AR:-false}" != false ]] || [[ "${RANLIB:-false}" != false ]]; then
echo ' : ' >> user-config.jam
if [[ "${AR:-false}" != false ]]; then
echo "<archiver>${AR} " >> user-config.jam
fi
if [[ "${RANLIB:-false}" != false ]]; then
echo "<ranlib>${RANLIB} " >> user-config.jam
fi
fi
echo ' ;' >> user-config.jam
}
function mason_compile {
gen_config ${BOOST_TOOLSET} ${BOOST_TOOLSET_CXX}
if [[ ! -f ./b2 ]] ; then
./bootstrap.sh
fi
./b2 \
--with-${BOOST_LIBRARY} \
--prefix=${MASON_PREFIX} \
-j${MASON_CONCURRENCY} \
-d0 \
--ignore-site-config --user-config=user-config.jam \
architecture="${BOOST_ARCH}" \
toolset="${BOOST_TOOLSET}" \
link=static \
variant=release \
linkflags="${LDFLAGS:-" "}" \
cxxflags="${CXXFLAGS:-" "}" \
stage
mkdir -p $(dirname ${MASON_PREFIX}/${MASON_LIB_FILE})
mv stage/${MASON_LIB_FILE} ${MASON_PREFIX}/${MASON_LIB_FILE}
}
function mason_prefix {
echo "${MASON_PREFIX}"
}
function mason_cflags {
echo "-I${MASON_PREFIX}/include"
}
function mason_ldflags {
local LOCAL_LDFLAGS
LOCAL_LDFLAGS="-L${MASON_PREFIX}/lib"
if [[ ${BOOST_LIBRARY:-false} != false ]]; then
LOCAL_LDFLAGS="${LOCAL_LDFLAGS} -l${BOOST_LIBRARY}"
fi
echo $LOCAL_LDFLAGS
}
+54
View File
@@ -0,0 +1,54 @@
#!/usr/bin/env bash
HERE="$( cd "$( dirname "${BASH_SOURCE[0]}" )" > /dev/null && pwd )"
# inherit from boost base (used for all boost library packages)
source ${HERE}/base.sh
# this package is the one that is header-only
MASON_NAME=boost
MASON_HEADER_ONLY=true
unset MASON_LIB_FILE
# setup mason env
. ${MASON_DIR}/mason.sh
# source common build functions
source ${HERE}/common.sh
# override default unpacking to just unpack headers
function mason_load_source {
mason_download \
http://downloads.sourceforge.net/project/boost/boost/${MASON_VERSION}/boost_${BOOST_VERSION}.tar.bz2 \
${BOOST_SHASUM}
mason_extract_tar_bz2 boost_${BOOST_VERSION}/boost
MASON_BUILD_PATH=${MASON_ROOT}/.build/boost_${BOOST_VERSION}
}
# override default "compile" target for just the header install
function mason_compile {
mkdir -p ${MASON_PREFIX}/include
cp -r ${MASON_ROOT}/.build/boost_${BOOST_VERSION}/boost ${MASON_PREFIX}/include
# work around NDK bug https://code.google.com/p/android/issues/detail?id=79483
patch ${MASON_PREFIX}/include/boost/core/demangle.hpp <<< "19a20,21
> #if !defined(__ANDROID__)
>
25a28,29
> #endif
>
"
# work around https://github.com/Project-OSRM/node-osrm/issues/191
patch ${MASON_PREFIX}/include/boost/interprocess/detail/os_file_functions.hpp <<< "471c471
< return ::open(name, (int)mode);
---
> return ::open(name, (int)mode,S_IRUSR|S_IWUSR);
"
}
mason_run "$@"
+60
View File
@@ -0,0 +1,60 @@
#!/usr/bin/env bash
MASON_NAME=boost
MASON_VERSION=system
MASON_SYSTEM_PACKAGE=true
. ${MASON_DIR}/mason.sh
if [ -d '/usr/local/include/boost' ]; then
BOOST_ROOT='/usr/local'
elif [ -d '/usr/include/boost' ]; then
BOOST_ROOT='/usr'
else
mason_error "Cannot find Boost"
exit 1
fi
function mason_system_version {
# Use host compiler to produce a binary that can run on the host
HOST_CXX=`MASON_PLATFORM= mason env CXX`
HOST_CFLAGS=`MASON_PLATFORM= mason env CFLAGS`
mkdir -p "${MASON_PREFIX}"
cd "${MASON_PREFIX}"
if [ ! -f version ]; then
echo "#include <boost/version.hpp>
#include <stdio.h>
int main() {
printf(\"%d.%d.%d\", BOOST_VERSION / 100000, BOOST_VERSION / 100 % 1000, BOOST_VERSION % 100);
return 0;
}
" > version.cpp && ${HOST_CXX} ${HOST_CFLAGS} version.cpp $(mason_cflags) -o version
fi
./version
}
function mason_build {
if [ ${MASON_PLATFORM} = 'ios' ]; then
mkdir -p ${MASON_PREFIX}/include
ln -sf ${BOOST_ROOT}/include/boost ${MASON_PREFIX}/include/
else
mkdir -p ${MASON_PREFIX}/{include,lib}
ln -sf ${BOOST_ROOT}/include/boost ${MASON_PREFIX}/include/
ln -sf ${BOOST_ROOT}/lib/libboost_* ${MASON_PREFIX}/lib/
fi
}
function mason_cflags {
echo "-I${MASON_PREFIX}/include"
}
function mason_ldflags {
if [ ${MASON_PLATFORM} = 'ios' ]; then
echo ""
else
echo "-L${MASON_PREFIX}/lib"
fi
}
mason_run "$@"
@@ -0,0 +1,24 @@
language: cpp
sudo: false
matrix:
include:
- os: osx
compiler: clang
- os: linux
compiler: clang
env:
global:
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
before_install:
- source ./scripts/setup_cpp11_toolchain.sh
script:
- ./mason build ${MASON_NAME} ${MASON_VERSION}
after_success:
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
@@ -0,0 +1,12 @@
--- libs/python/src/converter/builtin_converters.cpp 2012-12-07 11:51:06.000000000 -0800
+++ libs/python/src/converter/builtin_converters.cpp 2014-04-01 17:24:37.000000000 -0700
@@ -32,7 +32,9 @@
void shared_ptr_deleter::operator()(void const*)
{
+ PyGILState_STATE gil = PyGILState_Ensure();
owner.reset();
+ PyGILState_Release(gil);
}
namespace
+147
View File
@@ -0,0 +1,147 @@
#!/usr/bin/env bash
BOOST_VERSION1="1.49.0"
BOOST_VERSION2="1_49_0"
BOOST_LIBRARY="regex"
BOOST_ARCH="x86"
if [[ $(uname -s) == 'Darwin' ]]; then
BOOST_TOOLSET="darwin"
else
BOOST_TOOLSET="gcc"
fi
MASON_NAME=boost_liball
MASON_VERSION=1.49.0
# this boost package has multiple libraries to we
# reference this empty file as a placeholder for all of them
MASON_LIB_FILE=lib/libboost_placeholder.txt
. ${MASON_DIR}/mason.sh
function mason_load_source {
mason_download \
http://downloads.sourceforge.net/project/boost/boost/${BOOST_VERSION1}/boost_${BOOST_VERSION2}.tar.bz2 \
1175031e7689f17591363d907f9dad3be0559dee
export MASON_BUILD_PATH=${MASON_ROOT}/.build/boost_${BOOST_VERSION2}
mason_extract_tar_bz2
}
function gen_config() {
echo "using $1 : : $(which $2)" > user-config.jam
if [[ "${AR:-false}" != false ]] || [[ "${RANLIB:-false}" != false ]]; then
echo ' : ' >> user-config.jam
if [[ "${AR:-false}" != false ]]; then
echo "<archiver>${AR} " >> user-config.jam
fi
if [[ "${RANLIB:-false}" != false ]]; then
echo "<ranlib>${RANLIB} " >> user-config.jam
fi
fi
echo ' ;' >> user-config.jam
}
function mason_prepare_compile {
${MASON_DIR}/mason install icu 54.1
MASON_ICU=$(${MASON_DIR}/mason prefix icu 54.1)
BOOST_LDFLAGS="-L${MASON_ICU}/lib -licuuc -licui18n -licudata"
}
function write_python_config() {
# usage:
# write_python_config <user-config.jam> <version> <base> <variant>
PYTHON_VERSION=$2
# note: apple pythons need '/System'
PYTHON_BASE=$3
# note: python 3 uses 'm'
PYTHON_VARIANT=$4
if [[ ${UNAME} == 'Darwin' ]]; then
echo "
using python
: ${PYTHON_VERSION} # version
: ${PYTHON_BASE}/Library/Frameworks/Python.framework/Versions/${PYTHON_VERSION}/bin/python${PYTHON_VERSION}${PYTHON_VARIANT} # cmd-or-prefix
: ${PYTHON_BASE}/Library/Frameworks/Python.framework/Versions/${PYTHON_VERSION}/include/python${PYTHON_VERSION}${PYTHON_VARIANT} # includes
: ${PYTHON_BASE}/Library/Frameworks/Python.framework/Versions/${PYTHON_VERSION}/lib/python${PYTHON_VERSION}/config${PYTHON_VARIANT} # a lib actually symlink
: <toolset>${BOOST_TOOLSET} # condition
;
" >> $1
else
if [[ ${UNAME} == 'FreeBSD' ]]; then
echo "
using python
: ${PYTHON_VERSION} # version
: /usr/local/bin/python${PYTHON_VERSION}${PYTHON_VARIANT} # cmd-or-prefix
: /usr/local/include/python${PYTHON_VERSION} # includes
: /usr/local/lib/python${PYTHON_VERSION}/config${PYTHON_VARIANT}
: <toolset>${BOOST_TOOLSET} # condition
;
" >> $1
else
echo "
using python
: ${PYTHON_VERSION} # version
: /usr/bin/python${PYTHON_VERSION}${PYTHON_VARIANT} # cmd-or-prefix
: /usr/include/python${PYTHON_VERSION} # includes
: /usr/lib/python${PYTHON_VERSION}/config${PYTHON_VARIANT}
: <toolset>${BOOST_TOOLSET} # condition
;
" >> $1
fi
fi
}
function mason_compile {
if [[ -f ../../../patch.diff ]]; then
patch -N -p0 < ../../../patch.diff
else
# patch to workaround crashes in python.input
# https://github.com/mapnik/mapnik/issues/1968
mason_step "Loading patch 'https://github.com/mapbox/mason/blob/${MASON_SLUG}/patch.diff'..."
curl --retry 3 -s -f -# -L \
https://raw.githubusercontent.com/mapbox/mason/${MASON_SLUG}/patch.diff \
-O || (mason_error "Could not find patch for ${MASON_SLUG}" && exit 1)
patch -N -p0 < ./patch.diff
fi
gen_config ${BOOST_TOOLSET} g++
perl -i -p -e "s/\-march=i386/\-m64/g;" ./tools/build/v2/tools/gcc.jam
write_python_config user-config.jam "2.7" "/System" ""
if [[ ! -f ./b2 ]] ; then
./bootstrap.sh
fi
CXXFLAGS="${CXXFLAGS} -fvisibility=hidden"
./b2 \
--with-regex \
--with-system \
--with-thread \
--with-filesystem \
--with-program_options \
--with-python \
--prefix=${MASON_PREFIX} \
-j${MASON_CONCURRENCY} \
-sHAVE_ICU=1 -sICU_PATH=${MASON_ICU} \
linkflags="${BOOST_LDFLAGS}" \
cxxflags="${CXXFLAGS:-" "}" \
-d0 \
--ignore-site-config --user-config=user-config.jam \
architecture="${BOOST_ARCH}" \
address-model=64 \
toolset="${BOOST_TOOLSET}" \
link=static \
variant=release \
install
mkdir -p ${MASON_PREFIX}/lib/
touch ${MASON_PREFIX}/lib/libboost_placeholder.txt
}
function mason_ldflags {
echo "-lboost_regex -lboost_system -lboost_thread -lboost_filesystem -lboost_program_options -lboost_python"
}
function mason_clean {
make clean
}
mason_run "$@"
@@ -0,0 +1,24 @@
language: cpp
sudo: false
matrix:
include:
- os: osx
compiler: clang
- os: linux
compiler: clang
env:
global:
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
before_install:
- source ./scripts/setup_cpp11_toolchain.sh
script:
- ./mason build ${MASON_NAME} ${MASON_VERSION}
after_success:
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
@@ -0,0 +1,12 @@
--- libs/python/src/converter/builtin_converters.cpp 2012-12-07 11:51:06.000000000 -0800
+++ libs/python/src/converter/builtin_converters.cpp 2014-04-01 17:24:37.000000000 -0700
@@ -32,7 +32,9 @@
void shared_ptr_deleter::operator()(void const*)
{
+ PyGILState_STATE gil = PyGILState_Ensure();
owner.reset();
+ PyGILState_Release(gil);
}
namespace
+140
View File
@@ -0,0 +1,140 @@
#!/usr/bin/env bash
BOOST_VERSION1="1.58.0"
BOOST_VERSION2="1_58_0"
BOOST_LIBRARY="regex"
BOOST_TOOLSET="clang"
BOOST_ARCH="x86"
MASON_NAME=boost_liball
MASON_VERSION=1.58.0
# this boost package has multiple libraries to we
# reference this empty file as a placeholder for all of them
MASON_LIB_FILE=lib/libboost_placeholder.txt
. ${MASON_DIR}/mason.sh
function mason_load_source {
mason_download \
http://downloads.sourceforge.net/project/boost/boost/1.58.0/boost_1_58_0.tar.bz2 \
43e46651e762e4daf72a5d21dca86ae151e65378
export MASON_BUILD_PATH=${MASON_ROOT}/.build/boost_${BOOST_VERSION2}
mason_extract_tar_bz2
}
function gen_config() {
echo "using $1 : : $(which $2)" > user-config.jam
if [[ "${AR:-false}" != false ]] || [[ "${RANLIB:-false}" != false ]]; then
echo ' : ' >> user-config.jam
if [[ "${AR:-false}" != false ]]; then
echo "<archiver>${AR} " >> user-config.jam
fi
if [[ "${RANLIB:-false}" != false ]]; then
echo "<ranlib>${RANLIB} " >> user-config.jam
fi
fi
echo ' ;' >> user-config.jam
}
function mason_prepare_compile {
${MASON_DIR}/mason install icu 54.1
MASON_ICU=$(${MASON_DIR}/mason prefix icu 54.1)
BOOST_LDFLAGS="-L${MASON_ICU}/lib -licuuc -licui18n -licudata"
}
function write_python_config() {
# usage:
# write_python_config <user-config.jam> <version> <base> <variant>
PYTHON_VERSION=$2
# note: apple pythons need '/System'
PYTHON_BASE=$3
# note: python 3 uses 'm'
PYTHON_VARIANT=$4
if [[ ${UNAME} == 'Darwin' ]]; then
echo "
using python
: ${PYTHON_VERSION} # version
: ${PYTHON_BASE}/Library/Frameworks/Python.framework/Versions/${PYTHON_VERSION}/bin/python${PYTHON_VERSION}${PYTHON_VARIANT} # cmd-or-prefix
: ${PYTHON_BASE}/Library/Frameworks/Python.framework/Versions/${PYTHON_VERSION}/include/python${PYTHON_VERSION}${PYTHON_VARIANT} # includes
: ${PYTHON_BASE}/Library/Frameworks/Python.framework/Versions/${PYTHON_VERSION}/lib/python${PYTHON_VERSION}/config${PYTHON_VARIANT} # a lib actually symlink
: <toolset>${BOOST_TOOLSET} # condition
;
" >> $1
else
if [[ ${UNAME} == 'FreeBSD' ]]; then
echo "
using python
: ${PYTHON_VERSION} # version
: /usr/local/bin/python${PYTHON_VERSION}${PYTHON_VARIANT} # cmd-or-prefix
: /usr/local/include/python${PYTHON_VERSION} # includes
: /usr/local/lib/python${PYTHON_VERSION}/config${PYTHON_VARIANT}
: <toolset>${BOOST_TOOLSET} # condition
;
" >> $1
else
echo "
using python
: ${PYTHON_VERSION} # version
: /usr/bin/python${PYTHON_VERSION}${PYTHON_VARIANT} # cmd-or-prefix
: /usr/include/python${PYTHON_VERSION} # includes
: /usr/lib/python${PYTHON_VERSION}/config${PYTHON_VARIANT}
: <toolset>${BOOST_TOOLSET} # condition
;
" >> $1
fi
fi
}
function mason_compile {
if [[ -f ../../../patch.diff ]]; then
patch -N -p0 < ../../../patch.diff
else
# patch to workaround crashes in python.input
# https://github.com/mapnik/mapnik/issues/1968
mason_step "Loading patch 'https://github.com/mapbox/mason/blob/${MASON_SLUG}/patch.diff'..."
curl --retry 3 -s -f -# -L \
https://raw.githubusercontent.com/mapbox/mason/${MASON_SLUG}/patch.diff \
-O || (mason_error "Could not find patch for ${MASON_SLUG}" && exit 1)
patch -N -p0 < ./patch.diff
fi
gen_config ${BOOST_TOOLSET} clang++
if [[ ! -f ./b2 ]] ; then
./bootstrap.sh
fi
CXXFLAGS="${CXXFLAGS} -fvisibility=hidden"
./b2 \
--with-regex \
--with-system \
--with-thread \
--with-filesystem \
--with-program_options \
--with-python \
--prefix=${MASON_PREFIX} \
-j${MASON_CONCURRENCY} \
-sHAVE_ICU=1 -sICU_PATH=${MASON_ICU} \
linkflags="${LDFLAGS:-" "} ${BOOST_LDFLAGS}" \
cxxflags="${CXXFLAGS:-" "}" \
-d0 \
--ignore-site-config --user-config=user-config.jam \
architecture="${BOOST_ARCH}" \
toolset="${BOOST_TOOLSET}" \
link=static \
variant=release \
install
mkdir -p ${MASON_PREFIX}/lib/
touch ${MASON_PREFIX}/lib/libboost_placeholder.txt
}
function mason_ldflags {
:
}
function mason_clean {
make clean
}
mason_run "$@"
@@ -0,0 +1,28 @@
language: cpp
sudo: false
matrix:
include:
- os: osx
osx_image: xcode6
compiler: clang
- os: osx
osx_image: xcode7
compiler: clang
- os: linux
compiler: clang
env:
global:
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
before_install:
- source ./scripts/setup_cpp11_toolchain.sh
script:
- ./mason build ${MASON_NAME} ${MASON_VERSION}
after_success:
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
@@ -0,0 +1,22 @@
--- libs/python/src/converter/builtin_converters.cpp 2012-12-07 11:51:06.000000000 -0800
+++ libs/python/src/converter/builtin_converters.cpp 2014-04-01 17:24:37.000000000 -0700
@@ -32,7 +32,9 @@
void shared_ptr_deleter::operator()(void const*)
{
+ PyGILState_STATE gil = PyGILState_Ensure();
owner.reset();
+ PyGILState_Release(gil);
}
namespace
--- libs/filesystem/src/operations.cpp 2015-05-01 18:49:26.000000000 -0700
+++ libs/filesystem/src/operations.cpp 2015-05-01 18:49:22.000000000 -0700
@@ -1416,6 +1416,7 @@
// - See the fchmodat() Linux man page:
// "http://man7.org/linux/man-pages/man2/fchmodat.2.html"
# if defined(AT_FDCWD) && defined(AT_SYMLINK_NOFOLLOW) \
+ && !(defined(__APPLE__)) \
&& !(defined(__SUNPRO_CC) || defined(__sun) || defined(sun)) \
&& !(defined(linux) || defined(__linux) || defined(__linux__))
if (::fchmodat(AT_FDCWD, p.c_str(), mode_cast(prms),
+140
View File
@@ -0,0 +1,140 @@
#!/usr/bin/env bash
BOOST_VERSION1="1.59.0"
BOOST_VERSION2="1_59_0"
BOOST_LIBRARY="regex"
BOOST_TOOLSET="clang"
BOOST_ARCH="x86"
MASON_NAME=boost_liball
MASON_VERSION=1.59.0
# this boost package has multiple libraries to we
# reference this empty file as a placeholder for all of them
MASON_LIB_FILE=lib/libboost_placeholder.txt
. ${MASON_DIR}/mason.sh
function mason_load_source {
mason_download \
http://downloads.sourceforge.net/project/boost/boost/1.59.0/boost_1_59_0.tar.bz2 \
ff2e48f4d7e3c4b393d41e07a2f5d923b990967d
export MASON_BUILD_PATH=${MASON_ROOT}/.build/boost_${BOOST_VERSION2}
mason_extract_tar_bz2
}
function gen_config() {
echo "using $1 : : $(which $2)" > user-config.jam
if [[ "${AR:-false}" != false ]] || [[ "${RANLIB:-false}" != false ]]; then
echo ' : ' >> user-config.jam
if [[ "${AR:-false}" != false ]]; then
echo "<archiver>${AR} " >> user-config.jam
fi
if [[ "${RANLIB:-false}" != false ]]; then
echo "<ranlib>${RANLIB} " >> user-config.jam
fi
fi
echo ' ;' >> user-config.jam
}
function mason_prepare_compile {
${MASON_DIR}/mason install icu 55.1
MASON_ICU=$(${MASON_DIR}/mason prefix icu 55.1)
BOOST_LDFLAGS="-L${MASON_ICU}/lib -licuuc -licui18n -licudata"
}
function write_python_config() {
# usage:
# write_python_config <user-config.jam> <version> <base> <variant>
PYTHON_VERSION=$2
# note: apple pythons need '/System'
PYTHON_BASE=$3
# note: python 3 uses 'm'
PYTHON_VARIANT=$4
if [[ ${UNAME} == 'Darwin' ]]; then
echo "
using python
: ${PYTHON_VERSION} # version
: ${PYTHON_BASE}/Library/Frameworks/Python.framework/Versions/${PYTHON_VERSION}/bin/python${PYTHON_VERSION}${PYTHON_VARIANT} # cmd-or-prefix
: ${PYTHON_BASE}/Library/Frameworks/Python.framework/Versions/${PYTHON_VERSION}/include/python${PYTHON_VERSION}${PYTHON_VARIANT} # includes
: ${PYTHON_BASE}/Library/Frameworks/Python.framework/Versions/${PYTHON_VERSION}/lib/python${PYTHON_VERSION}/config${PYTHON_VARIANT} # a lib actually symlink
: <toolset>${BOOST_TOOLSET} # condition
;
" >> $1
else
if [[ ${UNAME} == 'FreeBSD' ]]; then
echo "
using python
: ${PYTHON_VERSION} # version
: /usr/local/bin/python${PYTHON_VERSION}${PYTHON_VARIANT} # cmd-or-prefix
: /usr/local/include/python${PYTHON_VERSION} # includes
: /usr/local/lib/python${PYTHON_VERSION}/config${PYTHON_VARIANT}
: <toolset>${BOOST_TOOLSET} # condition
;
" >> $1
else
echo "
using python
: ${PYTHON_VERSION} # version
: /usr/bin/python${PYTHON_VERSION}${PYTHON_VARIANT} # cmd-or-prefix
: /usr/include/python${PYTHON_VERSION} # includes
: /usr/lib/python${PYTHON_VERSION}/config${PYTHON_VARIANT}
: <toolset>${BOOST_TOOLSET} # condition
;
" >> $1
fi
fi
}
function mason_compile {
if [[ -f ../../../patch.diff ]]; then
patch -N -p0 < ../../../patch.diff
else
# patch to workaround crashes in python.input
# https://github.com/mapnik/mapnik/issues/1968
mason_step "Loading patch 'https://github.com/mapbox/mason/blob/${MASON_SLUG}/patch.diff'..."
curl --retry 3 -s -f -# -L \
https://raw.githubusercontent.com/mapbox/mason/${MASON_SLUG}/patch.diff \
-O || (mason_error "Could not find patch for ${MASON_SLUG}" && exit 1)
patch -N -p0 < ./patch.diff
fi
gen_config ${BOOST_TOOLSET} clang++
if [[ ! -f ./b2 ]] ; then
./bootstrap.sh
fi
CXXFLAGS="${CXXFLAGS} -fvisibility=hidden"
./b2 \
--with-regex \
--with-system \
--with-thread \
--with-filesystem \
--with-program_options \
--with-python \
--prefix=${MASON_PREFIX} \
-j${MASON_CONCURRENCY} \
-sHAVE_ICU=1 -sICU_PATH=${MASON_ICU} \
linkflags="${LDFLAGS:-" "} ${BOOST_LDFLAGS}" \
cxxflags="${CXXFLAGS:-" "}" \
-d0 \
--ignore-site-config --user-config=user-config.jam \
architecture="${BOOST_ARCH}" \
toolset="${BOOST_TOOLSET}" \
link=static \
variant=release \
install
mkdir -p ${MASON_PREFIX}/lib/
touch ${MASON_PREFIX}/lib/libboost_placeholder.txt
}
function mason_ldflags {
:
}
function mason_clean {
make clean
}
mason_run "$@"
@@ -0,0 +1,37 @@
language: cpp
sudo: false
matrix:
include:
- os: osx
osx_image: xcode6
compiler: clang
- os: osx
osx_image: xcode7
compiler: clang
- os: linux
compiler: clang
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- g++-5
env:
global:
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
before_install:
- export CC=/usr/bin/gcc-5
- export CXX=/usr/bin/g++-5
- export MASON_CONCURRENCY_OVERRIDE=2
script:
- ./mason build ${MASON_NAME} ${MASON_VERSION}
after_success:
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
@@ -0,0 +1,10 @@
--- libs/filesystem/src/operations.cpp 2015-05-01 18:49:26.000000000 -0700
+++ libs/filesystem/src/operations.cpp 2015-05-01 18:49:22.000000000 -0700
@@ -1416,6 +1416,7 @@
// - See the fchmodat() Linux man page:
// "http://man7.org/linux/man-pages/man2/fchmodat.2.html"
# if defined(AT_FDCWD) && defined(AT_SYMLINK_NOFOLLOW) \
+ && !(defined(__APPLE__)) \
&& !(defined(__SUNPRO_CC) || defined(__sun) || defined(sun)) \
&& !(defined(linux) || defined(__linux) || defined(__linux__))
if (::fchmodat(AT_FDCWD, p.c_str(), mode_cast(prms),
+96
View File
@@ -0,0 +1,96 @@
#!/usr/bin/env bash
BOOST_VERSION1="1.59.0"
BOOST_VERSION2="1_59_0"
BOOST_LIBRARY="regex"
BOOST_TOOLSET="clang"
BOOST_ARCH="x86"
MASON_NAME=boost_liball_osrm
MASON_VERSION=1.59.0
# this boost package has multiple libraries to we
# reference this empty file as a placeholder for all of them
MASON_LIB_FILE=lib/libboost_placeholder.txt
. ${MASON_DIR}/mason.sh
export CXX=${CXX:-clang++}
export MASON_CONCURRENCY_OVERRIDE=${MASON_CONCURRENCY_OVERRIDE:-${MASON_CONCURRENCY}}
function mason_load_source {
mason_download \
http://downloads.sourceforge.net/project/boost/boost/1.59.0/boost_1_59_0.tar.bz2 \
ff2e48f4d7e3c4b393d41e07a2f5d923b990967d
export MASON_BUILD_PATH=${MASON_ROOT}/.build/boost_${BOOST_VERSION2}
mason_extract_tar_bz2
}
function gen_config() {
echo "using $1 : : $(which $2)" > user-config.jam
if [[ "${AR:-false}" != false ]] || [[ "${RANLIB:-false}" != false ]]; then
echo ' : ' >> user-config.jam
if [[ "${AR:-false}" != false ]]; then
echo "<archiver>${AR} " >> user-config.jam
fi
if [[ "${RANLIB:-false}" != false ]]; then
echo "<ranlib>${RANLIB} " >> user-config.jam
fi
fi
echo ' ;' >> user-config.jam
}
function mason_compile {
if [[ -f ../../../patch.diff ]]; then
patch -N -p0 < ../../../patch.diff
else
# patch to workaround crashes in python.input
# https://github.com/mapnik/mapnik/issues/1968
mason_step "Loading patch 'https://github.com/mapbox/mason/blob/${MASON_SLUG}/patch.diff'..."
curl --retry 3 -s -f -# -L \
https://raw.githubusercontent.com/mapbox/mason/${MASON_SLUG}/patch.diff \
-O || (mason_error "Could not find patch for ${MASON_SLUG}" && exit 1)
patch -N -p0 < ./patch.diff
fi
gen_config ${BOOST_TOOLSET} ${CXX}
if [[ ! -f ./b2 ]] ; then
./bootstrap.sh
fi
CXXFLAGS="${CXXFLAGS} -fvisibility=hidden"
./b2 \
--with-regex \
--with-system \
--with-thread \
--with-filesystem \
--with-program_options \
--with-test \
--with-date_time \
--with-iostreams \
--prefix=${MASON_PREFIX} \
-j${MASON_CONCURRENCY_OVERRIDE} \
-sHAVE_ICU=0 \
linkflags="${LDFLAGS:-" "} ${BOOST_LDFLAGS}" \
cxxflags="${CXXFLAGS:-" "}" \
-d0 \
--ignore-site-config --user-config=user-config.jam \
architecture="${BOOST_ARCH}" \
toolset="${BOOST_TOOLSET}" \
link=static \
variant=release \
install
mkdir -p ${MASON_PREFIX}/lib/
touch ${MASON_PREFIX}/lib/libboost_placeholder.txt
}
function mason_ldflags {
:
}
function mason_clean {
make clean
}
mason_run "$@"
@@ -0,0 +1,27 @@
language: generic
matrix:
include:
- os: osx
osx_image: xcode7.3
- os: linux
sudo: false
env: CXX=clang++-3.5 CC=clang-3.5
addons:
apt:
sources:
- ubuntu-toolchain-r-test
- llvm-toolchain-precise-3.5
packages:
- clang-3.5
env:
global:
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
script:
- ./mason build ${MASON_NAME} ${MASON_VERSION}
after_success:
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
+26
View File
@@ -0,0 +1,26 @@
#!/usr/bin/env bash
# dynamically determine the path to this package
HERE="$( cd "$( dirname "${BASH_SOURCE[0]}" )" > /dev/null && pwd )"
# key properties unique to this library
THIS_DIR=$(basename $(dirname $HERE))
BOOST_LIBRARY=${THIS_DIR#boost_lib}
MASON_NAME=boost_lib${BOOST_LIBRARY}
MASON_LIB_FILE=lib/libboost_${BOOST_LIBRARY}.a
# hack for inconsistently named test lib
if [[ ${MASON_LIB_FILE} == "lib/libboost_test.a" ]]; then
MASON_LIB_FILE=lib/libboost_unit_test_framework.a
fi
# inherit from boost base (used for all boost library packages)
BASE_PATH=${HERE}/../../boost/$(basename $HERE)
source ${BASE_PATH}/base.sh
# setup mason env
. ${MASON_DIR}/mason.sh
# source common build functions
source ${BASE_PATH}/common.sh
mason_run "$@"
@@ -0,0 +1,27 @@
language: generic
matrix:
include:
- os: osx
osx_image: xcode7.3
- os: linux
sudo: false
env: CXX=clang++-3.5 CC=clang-3.5
addons:
apt:
sources:
- ubuntu-toolchain-r-test
- llvm-toolchain-precise-3.5
packages:
- clang-3.5
env:
global:
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
script:
- ./mason build ${MASON_NAME} ${MASON_VERSION}
after_success:
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
+26
View File
@@ -0,0 +1,26 @@
#!/usr/bin/env bash
# dynamically determine the path to this package
HERE="$( cd "$( dirname "${BASH_SOURCE[0]}" )" > /dev/null && pwd )"
# key properties unique to this library
THIS_DIR=$(basename $(dirname $HERE))
BOOST_LIBRARY=${THIS_DIR#boost_lib}
MASON_NAME=boost_lib${BOOST_LIBRARY}
MASON_LIB_FILE=lib/libboost_${BOOST_LIBRARY}.a
# hack for inconsistently named test lib
if [[ ${MASON_LIB_FILE} == "lib/libboost_test.a" ]]; then
MASON_LIB_FILE=lib/libboost_unit_test_framework.a
fi
# inherit from boost base (used for all boost library packages)
BASE_PATH=${HERE}/../../boost/$(basename $HERE)
source ${BASE_PATH}/base.sh
# setup mason env
. ${MASON_DIR}/mason.sh
# source common build functions
source ${BASE_PATH}/common.sh
mason_run "$@"
@@ -0,0 +1,24 @@
language: cpp
sudo: false
matrix:
include:
- os: osx
compiler: clang
- os: linux
compiler: clang
env:
global:
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
before_install:
- source ./scripts/setup_cpp11_toolchain.sh
script:
- ./mason build ${MASON_NAME} ${MASON_VERSION}
after_success:
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
+70
View File
@@ -0,0 +1,70 @@
#!/usr/bin/env bash
BOOST_VERSION1="1.57.0"
BOOST_VERSION2="1_57_0"
BOOST_LIBRARY="date_time"
BOOST_TOOLSET="clang"
BOOST_ARCH="x86"
MASON_NAME=boost_lib${BOOST_LIBRARY}
MASON_VERSION=1.57.0
MASON_LIB_FILE=lib/libboost_${BOOST_LIBRARY}.a
. ${MASON_DIR}/mason.sh
function mason_load_source {
mason_download \
http://downloads.sourceforge.net/project/boost/boost/${BOOST_VERSION1}/boost_${BOOST_VERSION2}.tar.bz2 \
397306fa6d0858c4885fbba7d43a0164dcb7f53e
export MASON_BUILD_PATH=${MASON_ROOT}/.build/boost_${BOOST_VERSION2}
mason_extract_tar_bz2
}
function gen_config() {
echo "using $1 : : $(which $2)" > user-config.jam
if [[ "${AR:-false}" != false ]] || [[ "${RANLIB:-false}" != false ]]; then
echo ' : ' >> user-config.jam
if [[ "${AR:-false}" != false ]]; then
echo "<archiver>${AR} " >> user-config.jam
fi
if [[ "${RANLIB:-false}" != false ]]; then
echo "<ranlib>${RANLIB} " >> user-config.jam
fi
fi
echo ' ;' >> user-config.jam
}
function mason_compile {
gen_config ${BOOST_TOOLSET} clang++
if [[ ! -f ./b2 ]] ; then
./bootstrap.sh
fi
CXXFLAGS="${CXXFLAGS} -fvisibility=hidden"
./b2 \
--with-${BOOST_LIBRARY} \
--prefix=${MASON_PREFIX} \
-j${MASON_CONCURRENCY} \
-d0 \
--ignore-site-config --user-config=user-config.jam \
architecture="${BOOST_ARCH}" \
toolset="${BOOST_TOOLSET}" \
link=static \
variant=release \
linkflags="${LDFLAGS:-" "}" \
cxxflags="${CXXFLAGS:-" "}" \
stage
mkdir -p $(dirname ${MASON_PREFIX}/${MASON_LIB_FILE})
mv stage/${MASON_LIB_FILE} ${MASON_PREFIX}/${MASON_LIB_FILE}
}
function mason_ldflags {
echo "-lboost_${BOOST_LIBRARY}"
}
function mason_clean {
make clean
}
mason_run "$@"
@@ -0,0 +1,27 @@
language: generic
matrix:
include:
- os: osx
osx_image: xcode7.3
- os: linux
sudo: false
env: CXX=clang++-3.5 CC=clang-3.5
addons:
apt:
sources:
- ubuntu-toolchain-r-test
- llvm-toolchain-precise-3.5
packages:
- clang-3.5
env:
global:
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
script:
- ./mason build ${MASON_NAME} ${MASON_VERSION}
after_success:
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
+26
View File
@@ -0,0 +1,26 @@
#!/usr/bin/env bash
# dynamically determine the path to this package
HERE="$( cd "$( dirname "${BASH_SOURCE[0]}" )" > /dev/null && pwd )"
# key properties unique to this library
THIS_DIR=$(basename $(dirname $HERE))
BOOST_LIBRARY=${THIS_DIR#boost_lib}
MASON_NAME=boost_lib${BOOST_LIBRARY}
MASON_LIB_FILE=lib/libboost_${BOOST_LIBRARY}.a
# hack for inconsistently named test lib
if [[ ${MASON_LIB_FILE} == "lib/libboost_test.a" ]]; then
MASON_LIB_FILE=lib/libboost_unit_test_framework.a
fi
# inherit from boost base (used for all boost library packages)
BASE_PATH=${HERE}/../../boost/$(basename $HERE)
source ${BASE_PATH}/base.sh
# setup mason env
. ${MASON_DIR}/mason.sh
# source common build functions
source ${BASE_PATH}/common.sh
mason_run "$@"
@@ -0,0 +1,32 @@
language: C
sudo: false
matrix:
include:
- os: osx
compiler: clang
- os: linux
compiler: clang
env:
global:
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
addons:
apt:
sources:
- ubuntu-toolchain-r-test
- llvm-toolchain-precise-3.5
packages:
- clang-3.5
before_install:
script:
- export CXX="clang++-3.5"
- ./mason build ${MASON_NAME} ${MASON_VERSION}
after_success:
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
@@ -0,0 +1,22 @@
--- libs/python/src/converter/builtin_converters.cpp 2012-12-07 11:51:06.000000000 -0800
+++ libs/python/src/converter/builtin_converters.cpp 2014-04-01 17:24:37.000000000 -0700
@@ -32,7 +32,9 @@
void shared_ptr_deleter::operator()(void const*)
{
+ PyGILState_STATE gil = PyGILState_Ensure();
owner.reset();
+ PyGILState_Release(gil);
}
namespace
--- libs/filesystem/src/operations.cpp 2015-05-01 18:49:26.000000000 -0700
+++ libs/filesystem/src/operations.cpp 2015-05-01 18:49:22.000000000 -0700
@@ -1416,6 +1416,7 @@
// - See the fchmodat() Linux man page:
// "http://man7.org/linux/man-pages/man2/fchmodat.2.html"
# if defined(AT_FDCWD) && defined(AT_SYMLINK_NOFOLLOW) \
+ && !(defined(__APPLE__)) \
&& !(defined(__SUNPRO_CC) || defined(__sun) || defined(sun)) \
&& !(defined(linux) || defined(__linux) || defined(__linux__))
if (::fchmodat(AT_FDCWD, p.c_str(), mode_cast(prms),
+133
View File
@@ -0,0 +1,133 @@
#!/usr/bin/env bash
BOOST_VERSION1="1.59.0"
BOOST_VERSION2="1_59_0"
BOOST_LIBRARY="regex"
BOOST_TOOLSET="clang"
BOOST_ARCH="x86"
MASON_NAME=boost_libeverything
MASON_VERSION=1.59.0
# this boost package has multiple libraries to we
# reference this empty file as a placeholder for all of them
MASON_LIB_FILE=lib/libboost_placeholder.txt
. ${MASON_DIR}/mason.sh
function mason_load_source {
mason_download \
http://downloads.sourceforge.net/project/boost/boost/1.59.0/boost_1_59_0.tar.bz2 \
ff2e48f4d7e3c4b393d41e07a2f5d923b990967d
export MASON_BUILD_PATH=${MASON_ROOT}/.build/boost_${BOOST_VERSION2}
mason_extract_tar_bz2
}
function gen_config() {
echo "using $1 : : $(which $2)" > user-config.jam
if [[ "${AR:-false}" != false ]] || [[ "${RANLIB:-false}" != false ]]; then
echo ' : ' >> user-config.jam
if [[ "${AR:-false}" != false ]]; then
echo "<archiver>${AR} " >> user-config.jam
fi
if [[ "${RANLIB:-false}" != false ]]; then
echo "<ranlib>${RANLIB} " >> user-config.jam
fi
fi
echo ' ;' >> user-config.jam
}
function mason_prepare_compile {
${MASON_DIR}/mason install icu 55.1
MASON_ICU=$(${MASON_DIR}/mason prefix icu 55.1)
BOOST_LDFLAGS="-L${MASON_ICU}/lib -licuuc -licui18n -licudata"
}
function write_python_config() {
# usage:
# write_python_config <user-config.jam> <version> <base> <variant>
PYTHON_VERSION=$2
# note: apple pythons need '/System'
PYTHON_BASE=$3
# note: python 3 uses 'm'
PYTHON_VARIANT=$4
if [[ ${UNAME} == 'Darwin' ]]; then
echo "
using python
: ${PYTHON_VERSION} # version
: ${PYTHON_BASE}/Library/Frameworks/Python.framework/Versions/${PYTHON_VERSION}/bin/python${PYTHON_VERSION}${PYTHON_VARIANT} # cmd-or-prefix
: ${PYTHON_BASE}/Library/Frameworks/Python.framework/Versions/${PYTHON_VERSION}/include/python${PYTHON_VERSION}${PYTHON_VARIANT} # includes
: ${PYTHON_BASE}/Library/Frameworks/Python.framework/Versions/${PYTHON_VERSION}/lib/python${PYTHON_VERSION}/config${PYTHON_VARIANT} # a lib actually symlink
: <toolset>${BOOST_TOOLSET} # condition
;
" >> $1
else
if [[ ${UNAME} == 'FreeBSD' ]]; then
echo "
using python
: ${PYTHON_VERSION} # version
: /usr/local/bin/python${PYTHON_VERSION}${PYTHON_VARIANT} # cmd-or-prefix
: /usr/local/include/python${PYTHON_VERSION} # includes
: /usr/local/lib/python${PYTHON_VERSION}/config${PYTHON_VARIANT}
: <toolset>${BOOST_TOOLSET} # condition
;
" >> $1
else
echo "
using python
: ${PYTHON_VERSION} # version
: /usr/bin/python${PYTHON_VERSION}${PYTHON_VARIANT} # cmd-or-prefix
: /usr/include/python${PYTHON_VERSION} # includes
: /usr/lib/python${PYTHON_VERSION}/config${PYTHON_VARIANT}
: <toolset>${BOOST_TOOLSET} # condition
;
" >> $1
fi
fi
}
function mason_compile {
if [[ -f ../../../patch.diff ]]; then
patch -N -p0 < ../../../patch.diff
else
# patch to workaround crashes in python.input
# https://github.com/mapnik/mapnik/issues/1968
mason_step "Loading patch 'https://github.com/mapbox/mason/blob/${MASON_SLUG}/patch.diff'..."
curl --retry 3 -s -f -# -L \
https://raw.githubusercontent.com/mapbox/mason/${MASON_SLUG}/patch.diff \
-O || (mason_error "Could not find patch for ${MASON_SLUG}" && exit 1)
patch -N -p0 < ./patch.diff
fi
gen_config ${BOOST_TOOLSET} clang++
if [[ ! -f ./b2 ]] ; then
./bootstrap.sh
fi
CXXFLAGS="${CXXFLAGS} -fvisibility=hidden"
./b2 \
--prefix=${MASON_PREFIX} \
-j${MASON_CONCURRENCY} \
-sHAVE_ICU=1 -sICU_PATH=${MASON_ICU} \
linkflags="${LDFLAGS:-" "} ${BOOST_LDFLAGS}" \
cxxflags="${CXXFLAGS:-" "}" \
-d0 \
--ignore-site-config --user-config=user-config.jam \
architecture="${BOOST_ARCH}" \
toolset="${BOOST_TOOLSET}" \
variant=release \
install
mkdir -p ${MASON_PREFIX}/lib/
touch ${MASON_PREFIX}/lib/libboost_placeholder.txt
}
function mason_ldflags {
:
}
function mason_clean {
make clean
}
mason_run "$@"
@@ -0,0 +1,24 @@
language: cpp
sudo: false
matrix:
include:
- os: osx
compiler: clang
- os: linux
compiler: clang
env:
global:
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
before_install:
- source ./scripts/setup_cpp11_toolchain.sh
script:
- ./mason build ${MASON_NAME} ${MASON_VERSION}
after_success:
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
@@ -0,0 +1,10 @@
--- libs/filesystem/src/operations.cpp 2015-05-01 18:49:26.000000000 -0700
+++ libs/filesystem/src/operations.cpp 2015-05-01 18:49:22.000000000 -0700
@@ -1416,6 +1416,7 @@
// - See the fchmodat() Linux man page:
// "http://man7.org/linux/man-pages/man2/fchmodat.2.html"
# if defined(AT_FDCWD) && defined(AT_SYMLINK_NOFOLLOW) \
+ && !(defined(__APPLE__)) \
&& !(defined(__SUNPRO_CC) || defined(__sun) || defined(sun)) \
&& !(defined(linux) || defined(__linux) || defined(__linux__))
if (::fchmodat(AT_FDCWD, p.c_str(), mode_cast(prms),
+76
View File
@@ -0,0 +1,76 @@
#!/usr/bin/env bash
BOOST_VERSION1="1.57.0"
BOOST_VERSION2="1_57_0"
BOOST_LIBRARY="filesystem"
BOOST_TOOLSET="clang"
BOOST_ARCH="x86"
MASON_NAME=boost_lib${BOOST_LIBRARY}
MASON_VERSION=1.57.0
MASON_LIB_FILE=lib/libboost_${BOOST_LIBRARY}.a
. ${MASON_DIR}/mason.sh
function mason_load_source {
mason_download \
http://downloads.sourceforge.net/project/boost/boost/${BOOST_VERSION1}/boost_${BOOST_VERSION2}.tar.bz2 \
397306fa6d0858c4885fbba7d43a0164dcb7f53e
export MASON_BUILD_PATH=${MASON_ROOT}/.build/boost_${BOOST_VERSION2}
mason_extract_tar_bz2
}
function gen_config() {
echo "using $1 : : $(which $2)" > user-config.jam
if [[ "${AR:-false}" != false ]] || [[ "${RANLIB:-false}" != false ]]; then
echo ' : ' >> user-config.jam
if [[ "${AR:-false}" != false ]]; then
echo "<archiver>${AR} " >> user-config.jam
fi
if [[ "${RANLIB:-false}" != false ]]; then
echo "<ranlib>${RANLIB} " >> user-config.jam
fi
fi
echo ' ;' >> user-config.jam
}
function mason_compile {
mason_step "Loading patch 'https://github.com/mapbox/mason/blob/${MASON_SLUG}/patch.diff'..."
curl --retry 3 -s -f -# -L \
https://raw.githubusercontent.com/mapbox/mason/${MASON_SLUG}/patch.diff \
-O || (mason_error "Could not find patch for ${MASON_SLUG}" && exit 1)
patch -N -p0 < ./patch.diff
gen_config ${BOOST_TOOLSET} clang++
if [[ ! -f ./b2 ]] ; then
./bootstrap.sh
fi
CXXFLAGS="${CXXFLAGS} -fvisibility=hidden"
./b2 \
--with-${BOOST_LIBRARY} \
--prefix=${MASON_PREFIX} \
-j${MASON_CONCURRENCY} \
-d0 \
--ignore-site-config --user-config=user-config.jam \
architecture="${BOOST_ARCH}" \
toolset="${BOOST_TOOLSET}" \
link=static \
variant=release \
linkflags="${LDFLAGS:-" "}" \
cxxflags="${CXXFLAGS:-" "}" \
stage
mkdir -p $(dirname ${MASON_PREFIX}/${MASON_LIB_FILE})
mv stage/${MASON_LIB_FILE} ${MASON_PREFIX}/${MASON_LIB_FILE}
}
function mason_ldflags {
echo "-lboost_${BOOST_LIBRARY}"
}
function mason_clean {
make clean
}
mason_run "$@"
@@ -0,0 +1,27 @@
language: generic
matrix:
include:
- os: osx
osx_image: xcode7.3
- os: linux
sudo: false
env: CXX=clang++-3.5 CC=clang-3.5
addons:
apt:
sources:
- ubuntu-toolchain-r-test
- llvm-toolchain-precise-3.5
packages:
- clang-3.5
env:
global:
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
script:
- ./mason build ${MASON_NAME} ${MASON_VERSION}
after_success:
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
+26
View File
@@ -0,0 +1,26 @@
#!/usr/bin/env bash
# dynamically determine the path to this package
HERE="$( cd "$( dirname "${BASH_SOURCE[0]}" )" > /dev/null && pwd )"
# key properties unique to this library
THIS_DIR=$(basename $(dirname $HERE))
BOOST_LIBRARY=${THIS_DIR#boost_lib}
MASON_NAME=boost_lib${BOOST_LIBRARY}
MASON_LIB_FILE=lib/libboost_${BOOST_LIBRARY}.a
# hack for inconsistently named test lib
if [[ ${MASON_LIB_FILE} == "lib/libboost_test.a" ]]; then
MASON_LIB_FILE=lib/libboost_unit_test_framework.a
fi
# inherit from boost base (used for all boost library packages)
BASE_PATH=${HERE}/../../boost/$(basename $HERE)
source ${BASE_PATH}/base.sh
# setup mason env
. ${MASON_DIR}/mason.sh
# source common build functions
source ${BASE_PATH}/common.sh
mason_run "$@"
@@ -0,0 +1,24 @@
language: cpp
sudo: false
matrix:
include:
- os: osx
compiler: clang
- os: linux
compiler: clang
env:
global:
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
before_install:
- source ./scripts/setup_cpp11_toolchain.sh
script:
- ./mason build ${MASON_NAME} ${MASON_VERSION}
after_success:
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
+70
View File
@@ -0,0 +1,70 @@
#!/usr/bin/env bash
BOOST_VERSION1="1.57.0"
BOOST_VERSION2="1_57_0"
BOOST_LIBRARY="iostreams"
BOOST_TOOLSET="clang"
BOOST_ARCH="x86"
MASON_NAME=boost_lib${BOOST_LIBRARY}
MASON_VERSION=1.57.0
MASON_LIB_FILE=lib/libboost_${BOOST_LIBRARY}.a
. ${MASON_DIR}/mason.sh
function mason_load_source {
mason_download \
http://downloads.sourceforge.net/project/boost/boost/${BOOST_VERSION1}/boost_${BOOST_VERSION2}.tar.bz2 \
397306fa6d0858c4885fbba7d43a0164dcb7f53e
export MASON_BUILD_PATH=${MASON_ROOT}/.build/boost_${BOOST_VERSION2}
mason_extract_tar_bz2
}
function gen_config() {
echo "using $1 : : $(which $2)" > user-config.jam
if [[ "${AR:-false}" != false ]] || [[ "${RANLIB:-false}" != false ]]; then
echo ' : ' >> user-config.jam
if [[ "${AR:-false}" != false ]]; then
echo "<archiver>${AR} " >> user-config.jam
fi
if [[ "${RANLIB:-false}" != false ]]; then
echo "<ranlib>${RANLIB} " >> user-config.jam
fi
fi
echo ' ;' >> user-config.jam
}
function mason_compile {
gen_config ${BOOST_TOOLSET} clang++
if [[ ! -f ./b2 ]] ; then
./bootstrap.sh
fi
CXXFLAGS="${CXXFLAGS} -fvisibility=hidden"
./b2 \
--with-${BOOST_LIBRARY} \
--prefix=${MASON_PREFIX} \
-j${MASON_CONCURRENCY} \
-d0 \
--ignore-site-config --user-config=user-config.jam \
architecture="${BOOST_ARCH}" \
toolset="${BOOST_TOOLSET}" \
link=static \
variant=release \
linkflags="${LDFLAGS:-" "}" \
cxxflags="${CXXFLAGS:-" "}" \
stage
mkdir -p $(dirname ${MASON_PREFIX}/${MASON_LIB_FILE})
mv stage/${MASON_LIB_FILE} ${MASON_PREFIX}/${MASON_LIB_FILE}
}
function mason_ldflags {
echo "-lboost_${BOOST_LIBRARY}"
}
function mason_clean {
make clean
}
mason_run "$@"
@@ -0,0 +1,27 @@
language: generic
matrix:
include:
- os: osx
osx_image: xcode7.3
- os: linux
sudo: false
env: CXX=clang++-3.5 CC=clang-3.5
addons:
apt:
sources:
- ubuntu-toolchain-r-test
- llvm-toolchain-precise-3.5
packages:
- clang-3.5
env:
global:
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
script:
- ./mason build ${MASON_NAME} ${MASON_VERSION}
after_success:
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
+26
View File
@@ -0,0 +1,26 @@
#!/usr/bin/env bash
# dynamically determine the path to this package
HERE="$( cd "$( dirname "${BASH_SOURCE[0]}" )" > /dev/null && pwd )"
# key properties unique to this library
THIS_DIR=$(basename $(dirname $HERE))
BOOST_LIBRARY=${THIS_DIR#boost_lib}
MASON_NAME=boost_lib${BOOST_LIBRARY}
MASON_LIB_FILE=lib/libboost_${BOOST_LIBRARY}.a
# hack for inconsistently named test lib
if [[ ${MASON_LIB_FILE} == "lib/libboost_test.a" ]]; then
MASON_LIB_FILE=lib/libboost_unit_test_framework.a
fi
# inherit from boost base (used for all boost library packages)
BASE_PATH=${HERE}/../../boost/$(basename $HERE)
source ${BASE_PATH}/base.sh
# setup mason env
. ${MASON_DIR}/mason.sh
# source common build functions
source ${BASE_PATH}/common.sh
mason_run "$@"
@@ -0,0 +1,24 @@
language: cpp
sudo: false
matrix:
include:
- os: osx
compiler: clang
- os: linux
compiler: clang
env:
global:
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
before_install:
- source ./scripts/setup_cpp11_toolchain.sh
script:
- ./mason build ${MASON_NAME} ${MASON_VERSION}
after_success:
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
+69
View File
@@ -0,0 +1,69 @@
#!/usr/bin/env bash
BOOST_VERSION1="1.57.0"
BOOST_VERSION2="1_57_0"
BOOST_LIBRARY="program_options"
BOOST_TOOLSET="clang"
BOOST_ARCH="x86"
MASON_NAME=boost_lib${BOOST_LIBRARY}
MASON_VERSION=1.57.0
MASON_LIB_FILE=lib/libboost_${BOOST_LIBRARY}.a
. ${MASON_DIR}/mason.sh
function mason_load_source {
mason_download \
http://downloads.sourceforge.net/project/boost/boost/${BOOST_VERSION1}/boost_${BOOST_VERSION2}.tar.bz2 \
397306fa6d0858c4885fbba7d43a0164dcb7f53e
export MASON_BUILD_PATH=${MASON_ROOT}/.build/boost_${BOOST_VERSION2}
mason_extract_tar_bz2
}
function gen_config() {
echo "using $1 : : $(which $2)" > user-config.jam
if [[ "${AR:-false}" != false ]] || [[ "${RANLIB:-false}" != false ]]; then
echo ' : ' >> user-config.jam
if [[ "${AR:-false}" != false ]]; then
echo "<archiver>${AR} " >> user-config.jam
fi
if [[ "${RANLIB:-false}" != false ]]; then
echo "<ranlib>${RANLIB} " >> user-config.jam
fi
fi
echo ' ;' >> user-config.jam
}
function mason_compile {
gen_config ${BOOST_TOOLSET} clang++
if [[ ! -f ./b2 ]] ; then
./bootstrap.sh
fi
./b2 \
--with-${BOOST_LIBRARY} \
--prefix=${MASON_PREFIX} \
-j${MASON_CONCURRENCY} \
-d0 \
--ignore-site-config --user-config=user-config.jam \
architecture="${BOOST_ARCH}" \
toolset="${BOOST_TOOLSET}" \
link=static \
variant=release \
linkflags="${LDFLAGS:-" "}" \
cxxflags="${CXXFLAGS:-" "}" \
stage
mkdir -p $(dirname ${MASON_PREFIX}/${MASON_LIB_FILE})
mv stage/${MASON_LIB_FILE} ${MASON_PREFIX}/${MASON_LIB_FILE}
}
function mason_ldflags {
echo "-lboost_${BOOST_LIBRARY}"
}
function mason_clean {
make clean
}
mason_run "$@"
@@ -0,0 +1,25 @@
language: cpp
sudo: false
matrix:
include:
- os: osx
osx_image: xcode7
compiler: clang
- os: linux
compiler: clang
env:
global:
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
before_install:
- source ./scripts/setup_cpp11_toolchain.sh
script:
- ./mason build ${MASON_NAME} ${MASON_VERSION}
after_success:
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
+73
View File
@@ -0,0 +1,73 @@
#!/usr/bin/env bash
BOOST_VERSION1="1.59.0"
BOOST_VERSION2="1_59_0"
BOOST_LIBRARY="program_options"
BOOST_TOOLSET="clang"
BOOST_ARCH="x86"
MASON_NAME=boost_lib${BOOST_LIBRARY}
MASON_VERSION=${BOOST_VERSION1}
MASON_LIB_FILE=lib/libboost_${BOOST_LIBRARY}.a
. ${MASON_DIR}/mason.sh
function mason_load_source {
mason_download \
http://downloads.sourceforge.net/project/boost/boost/${BOOST_VERSION1}/boost_${BOOST_VERSION2}.tar.bz2 \
ff2e48f4d7e3c4b393d41e07a2f5d923b990967d
export MASON_BUILD_PATH=${MASON_ROOT}/.build/boost_${BOOST_VERSION2}
mason_extract_tar_bz2
}
function gen_config() {
echo "using $1 : : $(which $2)" > user-config.jam
if [[ "${AR:-false}" != false ]] || [[ "${RANLIB:-false}" != false ]]; then
echo ' : ' >> user-config.jam
if [[ "${AR:-false}" != false ]]; then
echo "<archiver>${AR} " >> user-config.jam
fi
if [[ "${RANLIB:-false}" != false ]]; then
echo "<ranlib>${RANLIB} " >> user-config.jam
fi
fi
echo ' ;' >> user-config.jam
}
function mason_compile {
gen_config ${BOOST_TOOLSET} clang++
if [[ ! -f ./b2 ]] ; then
./bootstrap.sh
fi
./b2 \
--with-${BOOST_LIBRARY} \
--prefix=${MASON_PREFIX} \
-j${MASON_CONCURRENCY} \
-d0 \
--ignore-site-config --user-config=user-config.jam \
architecture="${BOOST_ARCH}" \
toolset="${BOOST_TOOLSET}" \
link=static \
variant=release \
linkflags="${LDFLAGS:-" "}" \
cxxflags="${CXXFLAGS:-" "}" \
stage
mkdir -p $(dirname ${MASON_PREFIX}/${MASON_LIB_FILE})
mv stage/${MASON_LIB_FILE} ${MASON_PREFIX}/${MASON_LIB_FILE}
}
function mason_cflags {
:
}
function mason_ldflags {
:
}
function mason_clean {
make clean
}
mason_run "$@"
@@ -0,0 +1,27 @@
language: generic
matrix:
include:
- os: osx
osx_image: xcode7.3
- os: linux
sudo: false
env: CXX=clang++-3.5 CC=clang-3.5
addons:
apt:
sources:
- ubuntu-toolchain-r-test
- llvm-toolchain-precise-3.5
packages:
- clang-3.5
env:
global:
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
script:
- ./mason build ${MASON_NAME} ${MASON_VERSION}
after_success:
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
+73
View File
@@ -0,0 +1,73 @@
#!/usr/bin/env bash
BOOST_VERSION1="1.60.0"
BOOST_VERSION2="1_60_0"
BOOST_LIBRARY="program_options"
BOOST_TOOLSET="clang"
BOOST_ARCH="x86"
MASON_NAME=boost_lib${BOOST_LIBRARY}
MASON_VERSION=${BOOST_VERSION1}
MASON_LIB_FILE=lib/libboost_${BOOST_LIBRARY}.a
. ${MASON_DIR}/mason.sh
function mason_load_source {
mason_download \
http://downloads.sourceforge.net/project/boost/boost/${BOOST_VERSION1}/boost_${BOOST_VERSION2}.tar.bz2 \
40a65135d34c3e3a3cdbe681f06745c086e5b941
export MASON_BUILD_PATH=${MASON_ROOT}/.build/boost_${BOOST_VERSION2}
mason_extract_tar_bz2
}
function gen_config() {
echo "using $1 : : $(which $2)" > user-config.jam
if [[ "${AR:-false}" != false ]] || [[ "${RANLIB:-false}" != false ]]; then
echo ' : ' >> user-config.jam
if [[ "${AR:-false}" != false ]]; then
echo "<archiver>${AR} " >> user-config.jam
fi
if [[ "${RANLIB:-false}" != false ]]; then
echo "<ranlib>${RANLIB} " >> user-config.jam
fi
fi
echo ' ;' >> user-config.jam
}
function mason_compile {
gen_config ${BOOST_TOOLSET} clang++
if [[ ! -f ./b2 ]] ; then
./bootstrap.sh
fi
./b2 \
--with-${BOOST_LIBRARY} \
--prefix=${MASON_PREFIX} \
-j${MASON_CONCURRENCY} \
-d0 \
--ignore-site-config --user-config=user-config.jam \
architecture="${BOOST_ARCH}" \
toolset="${BOOST_TOOLSET}" \
link=static \
variant=release \
linkflags="${LDFLAGS:-" "}" \
cxxflags="${CXXFLAGS:-" "}" \
stage
mkdir -p $(dirname ${MASON_PREFIX}/${MASON_LIB_FILE})
mv stage/${MASON_LIB_FILE} ${MASON_PREFIX}/${MASON_LIB_FILE}
}
function mason_cflags {
:
}
function mason_ldflags {
:
}
function mason_clean {
make clean
}
mason_run "$@"
@@ -0,0 +1,27 @@
language: generic
matrix:
include:
- os: osx
osx_image: xcode7.3
- os: linux
sudo: false
env: CXX=clang++-3.5 CC=clang-3.5
addons:
apt:
sources:
- ubuntu-toolchain-r-test
- llvm-toolchain-precise-3.5
packages:
- clang-3.5
env:
global:
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
script:
- ./mason build ${MASON_NAME} ${MASON_VERSION}
after_success:
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
+26
View File
@@ -0,0 +1,26 @@
#!/usr/bin/env bash
# dynamically determine the path to this package
HERE="$( cd "$( dirname "${BASH_SOURCE[0]}" )" > /dev/null && pwd )"
# key properties unique to this library
THIS_DIR=$(basename $(dirname $HERE))
BOOST_LIBRARY=${THIS_DIR#boost_lib}
MASON_NAME=boost_lib${BOOST_LIBRARY}
MASON_LIB_FILE=lib/libboost_${BOOST_LIBRARY}.a
# hack for inconsistently named test lib
if [[ ${MASON_LIB_FILE} == "lib/libboost_test.a" ]]; then
MASON_LIB_FILE=lib/libboost_unit_test_framework.a
fi
# inherit from boost base (used for all boost library packages)
BASE_PATH=${HERE}/../../boost/$(basename $HERE)
source ${BASE_PATH}/base.sh
# setup mason env
. ${MASON_DIR}/mason.sh
# source common build functions
source ${BASE_PATH}/common.sh
mason_run "$@"

Some files were not shown because too many files have changed in this diff Show More