diff options
Diffstat (limited to 'tools/buildbot/slaves/svn-x64-macosx/svnbuild.sh')
-rwxr-xr-x | tools/buildbot/slaves/svn-x64-macosx/svnbuild.sh | 101 |
1 files changed, 101 insertions, 0 deletions
diff --git a/tools/buildbot/slaves/svn-x64-macosx/svnbuild.sh b/tools/buildbot/slaves/svn-x64-macosx/svnbuild.sh new file mode 100755 index 0000000..4f1e4e9 --- /dev/null +++ b/tools/buildbot/slaves/svn-x64-macosx/svnbuild.sh @@ -0,0 +1,101 @@ +#!/bin/bash + +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. + +set -e +set -x + +scripts=$(cd $(dirname "$0") && pwd) + +. ${scripts}/setenv.sh + +${scripts}/mkramdisk.sh ${volume_name} ${ramconf} + +# These are the default APR and Serf config options +serfconfig="--with-serf=${SVNBB_SERF} --with-apxs=/usr/sbin/apxs" + +# An optional parameter tells build scripts which version of APR to use +if [ ! -z "$1" ]; then + aprdir=$(eval 'echo $SVNBB_'"$1") +fi +if [ ! -z "${aprdir}" -a -d "${aprdir}" ]; then + aprconfig="--with-apr=${aprdir} --with-apr-util=${aprdir}" + serfconfig=" --without-serf --without-apxs" +fi + +# +# Step 0: Create a directory for the test log files +# +if [ -d "${abssrc}/.test-logs" ]; then + rm -fr "${abssrc}/.test-logs" +fi +mkdir "${abssrc}/.test-logs" || exit 1 + +# +# Step 1: get the latest and greatest amalgamanted SQLite +# + +echo "============ get-deps.sh sqlite" +cd ${abssrc} +rm -fr sqlite-amalgamation +./get-deps.sh sqlite + +# +# Step 2: Regenerate build scripts +# + +echo "============ autogen.sh" +cd ${abssrc} +./autogen.sh + +svnminor=$(awk '/define *SVN_VER_MINOR/ { print $3 }' subversion/include/svn_version.h) + +# --enable-optimize adds -flto which breaks the 1.8 C tests because +# they link main() from a library. +if [ ${svnminor} -gt 8 ]; then + optimizeconfig=' --enable-optimize' +fi + +# +# Step 3: Configure +# + +echo "============ configure" +cd ${absbld} +env CC=clang CXX=clang++ \ +${abssrc}/configure \ + --prefix="${absbld}/.install-prefix" \ + --disable-debug${optimizeconfig} \ + --disable-nls \ + --disable-mod-activation \ + ${aprconfig}${serfconfig} \ + --with-swig="${SVNBB_SWIG}" \ + --with-berkeley-db=db.h:"${SVNBB_BDB}/include":${SVNBB_BDB}/lib:db \ + --enable-javahl \ + --without-jikes \ + --with-junit="${SVNBB_JUNIT}" + +test -f config.log && mv config.log "${abssrc}/.test-logs/config.log" + +# +# Step 4: build +# + +echo "============ make" +cd ${absbld} +make -j${SVNBB_PARALLEL} |