From 9d2896016bce60efc91005abe90f663201dc4a1c Mon Sep 17 00:00:00 2001 From: Gregory Burd Date: Wed, 2 Oct 2013 14:41:06 -0400 Subject: [PATCH] A few build automation changes/fixes. --- Makefile | 4 +--- c_src/build_deps.sh | 30 ++++++++++++------------------ rebar.config | 4 ++-- 3 files changed, 15 insertions(+), 23 deletions(-) diff --git a/Makefile b/Makefile index 8e86444..83bd55b 100644 --- a/Makefile +++ b/Makefile @@ -52,19 +52,17 @@ endif .PHONY: all compile doc clean test dialyzer typer shell distclean pdf \ update-deps clean-common-test-data rebuild -all: deps compile test +all: deps compile # ============================================================================= # Rules to build the system # ============================================================================= deps: - c_src/build_deps.sh get-deps $(REBAR) get-deps $(REBAR) compile update-deps: - c_src/build_deps.sh update-deps $(REBAR) update-deps $(REBAR) compile diff --git a/c_src/build_deps.sh b/c_src/build_deps.sh index a435913..505967d 100755 --- a/c_src/build_deps.sh +++ b/c_src/build_deps.sh @@ -11,10 +11,10 @@ unset POSIX_SHELL # clear it so if we invoke other scripts, they run as ksh as w set -e WT_REPO=http://github.com/wiredtiger/wiredtiger.git -#WT_BRANCH=develop -#WT_DIR=wiredtiger-`basename $WT_BRANCH` -WT_REF="tags/1.6.4" -WT_DIR=wiredtiger-`basename $WT_REF` +WT_BRANCH=develop +WT_DIR=wiredtiger-`basename $WT_BRANCH` +#WT_REF="tags/1.6.4" +#WT_DIR=wiredtiger-`basename $WT_REF` SNAPPY_VSN="1.0.4" SNAPPY_DIR=snappy-$SNAPPY_VSN @@ -26,8 +26,7 @@ export BASEDIR="$PWD" which gmake 1>/dev/null 2>/dev/null && MAKE=gmake MAKE=${MAKE:-make} -export CFLAGS="$CFLAGS -I $BASEDIR/system/include" -export CXXFLAGS="$CXXFLAGS -I $BASEDIR/system/include" +export CPPFLAGS="$CPPLAGS -I $BASEDIR/system/include -O3 -mtune=native -march=native" export LDFLAGS="$LDFLAGS -L$BASEDIR/system/lib" export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$BASEDIR/system/lib:$LD_LIBRARY_PATH" @@ -58,7 +57,7 @@ get_wt () wt_configure () { (cd $BASEDIR/$WT_DIR/build_posix - CFLAGS+=-g ../configure --with-pic \ + CFLAGS+=-g $BASEDIR/$WT_DIR/configure --with-pic \ --enable-snappy \ --prefix=${BASEDIR}/system || exit 1) } @@ -107,11 +106,6 @@ build_snappy () ) } -install_shared_lib () -{ - cp -p -P $1 ${BASEDIR}/../priv/`basename ${1%.*}.so` -} - case "$1" in clean) [ -e $BASEDIR/$WT_DIR/build_posix/Makefile ] && \ @@ -147,12 +141,12 @@ case "$1" in # Build WiredTiger [ -d $WT_DIR ] || get_wt; [ -d $BASEDIR/$WT_DIR ] || (echo "Missing WiredTiger source directory" && exit 1) - test -f $BASEDIR/system/lib/libwiredtiger-[0-9].[0-9].[0-9].$SUFFIXES -a \ - -f $BASEDIR/system/lib/libwiredtiger_snappy.$SUFFIXES || build_wt; + test -f $BASEDIR/system/lib/libwiredtiger-[0-9].[0-9].[0-9].${SUFFIXES} -a \ + -f $BASEDIR/system/lib/libwiredtiger_snappy.${SUFFIXES} || build_wt; [ -d $BASEDIR/../priv ] || mkdir ${BASEDIR}/../priv - cp -p -P $BASEDIR/system/bin/wt ${BASEDIR}/../priv - install_shared_lib ${BASEDIR}/system/lib/libwiredtiger-[0-9].[0-9].[0-9].$SUFFIXES - install_shared_lib ${BASEDIR}/system/lib/libwiredtiger_snappy.$SUFFIXES* - install_shared_lib ${BASEDIR}/system/lib/libsnappy.$SUFFIXES* + cp -p -P $BASEDIR/system/bin/wt ${BASEDIR}/../priv + cp -p -P ${BASEDIR}/system/lib/libwiredtiger-[0-9].[0-9].[0-9].${SUFFIXES} ${BASEDIR}/../priv + cp -p -P ${BASEDIR}/system/lib/libwiredtiger_snappy.${SUFFIXES} ${BASEDIR}/../priv + cp -p -P ${BASEDIR}/system/lib/libsnappy.${SUFFIXES}* ${BASEDIR}/../priv ;; esac diff --git a/rebar.config b/rebar.config index 52c1c94..ecdc6ea 100644 --- a/rebar.config +++ b/rebar.config @@ -38,8 +38,8 @@ {port_specs, [{"priv/wterl.so", ["c_src/*.c"]}]}. {port_env, [ - {"DRV_CFLAGS", "$DRV_CFLAGS -fPIC -Wall -Wextra -Werror -I c_src/system/include"}, - {"DRV_LDFLAGS", "$DRV_LDFLAGS -Wl,-rpath,lib/wterl/priv:priv -Lc_src/system/lib -lwiredtiger"} + {"DRV_CFLAGS", "$DRV_CFLAGS -fPIC -Wall -Wextra -Werror -O3 -march=native -mtune=native -I c_src/system/include"}, + {"DRV_LDFLAGS", "$DRV_LDFLAGS -Wl,-rpath,lib/wterl/priv:lib/wterl-0.9.0/priv:priv -Lc_src/system/lib -lwiredtiger"} ]}. {pre_hooks, [{compile, "c_src/build_deps.sh compile"}]}.