53 lines
1.1 KiB
Bash
53 lines
1.1 KiB
Bash
|
#!/usr/bin/env bash
|
||
|
|
||
|
MASON_NAME=bzip2
|
||
|
MASON_VERSION=1.0.6
|
||
|
MASON_LIB_FILE=lib/libbz2.a
|
||
|
|
||
|
. ${MASON_DIR}/mason.sh
|
||
|
|
||
|
function mason_load_source {
|
||
|
mason_download \
|
||
|
http://www.bzip.org/1.0.6/bzip2-1.0.6.tar.gz \
|
||
|
e47e9034c4116f467618cfaaa4d3aca004094007
|
||
|
|
||
|
mason_extract_tar_gz
|
||
|
|
||
|
export MASON_BUILD_PATH=${MASON_ROOT}/.build/${MASON_NAME}-${MASON_VERSION}
|
||
|
}
|
||
|
|
||
|
function read_link() {
|
||
|
case "$(uname -s)" in
|
||
|
'Linux') readlink -f $1;;
|
||
|
'Darwin') readlink $1;;
|
||
|
*) echo 1;;
|
||
|
esac
|
||
|
}
|
||
|
|
||
|
function mason_compile {
|
||
|
make install PREFIX=${MASON_PREFIX} CC="$CC" CFLAGS="$CFLAGS" LDFLAGS="$LDFLAGS"
|
||
|
# symlinks are not portable, so now we recurse into /bin directory
|
||
|
# and fix them to be portable by being relative
|
||
|
cd ${MASON_PREFIX}/bin
|
||
|
for i in $(ls *); do
|
||
|
if [[ -L $i ]]; then
|
||
|
ln -sf $(basename $(read_link $i)) $i
|
||
|
fi
|
||
|
done
|
||
|
# TODO: android may need ranlib manual call
|
||
|
}
|
||
|
|
||
|
function mason_cflags {
|
||
|
echo "-I${MASON_PREFIX}/include"
|
||
|
}
|
||
|
|
||
|
function mason_ldflags {
|
||
|
echo "-L${MASON_PREFIX}/lib -lbz2"
|
||
|
}
|
||
|
|
||
|
function mason_clean {
|
||
|
make clean
|
||
|
}
|
||
|
|
||
|
mason_run "$@"
|