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
+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 "$@"