You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@activemq.apache.org by ta...@apache.org on 2009/06/05 23:43:03 UTC

svn commit: r782148 - in /activemq/activemq-cpp/trunk/activemq-cpp: build.conf build.sh m4/find_cppunit.m4

Author: tabish
Date: Fri Jun  5 21:43:02 2009
New Revision: 782148

URL: http://svn.apache.org/viewvc?rev=782148&view=rev
Log:
Updates the build script to add configuration options and supplies a sample config file.  Most of the most common config items can now be set in the config file to allow the maven build to be customized for CI builds.

Added:
    activemq/activemq-cpp/trunk/activemq-cpp/build.conf
Modified:
    activemq/activemq-cpp/trunk/activemq-cpp/build.sh
    activemq/activemq-cpp/trunk/activemq-cpp/m4/find_cppunit.m4

Added: activemq/activemq-cpp/trunk/activemq-cpp/build.conf
URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/trunk/activemq-cpp/build.conf?rev=782148&view=auto
==============================================================================
--- activemq/activemq-cpp/trunk/activemq-cpp/build.conf (added)
+++ activemq/activemq-cpp/trunk/activemq-cpp/build.conf Fri Jun  5 21:43:02 2009
@@ -0,0 +1,61 @@
+# ------------------------------------------------------------------------
+# 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.
+# ------------------------------------------------------------------------
+
+# ------------------------------------------------------------------------
+# Build Configuration File, used by the Build.sh script to configure how
+# the Library is built, where it is installed, etc.  This file is used in
+# combination with the build.sh script included with ActiveMQ-CPP.  The
+# values in the conf file can be overridden by a user by creating a user
+# specific conf file in the user's home folder named ".activemqcpprc".
+# ------------------------------------------------------------------------
+
+# Defines the location where the code is built and the configuration data
+# is stored, this location is deleted any time that the clean option is
+# passed to the build.sh script so don't set this to a directory like ./src
+# AMQCPP_BUILD_DIR="${PWD}/build"
+
+# Defines the install location for the ActiveMQ-CPP library and its headers
+# AMQCPP_INSTALL_PREFIX=/usr
+
+# Defines the library directory where the ActiveMQ-CPP library is placed.
+# This is normally set to AMQCPP_INSTALL_PREFIX/lib on a 64bit Fedora OS
+# for instance set this to AMQCPP_INSTALL_PREFIX/lib64 to place the 64bit
+# library in the correct library dir to match the architecture.
+# AMQCPP_LIBDIR=/usr/lib64
+
+# Defines the location of the APR distribution you wish to build and link
+# against. (Defines the value of --with-apr for the configure script).
+# AMQCPP_APR_DIST=/usr
+
+# Defines the location of the APR-Util distribution you wish to build and link
+# against. (Defines the value of --with-apr-util for the configure script).
+# AMQCPP_APU_DIST=/usr
+
+# Defines the location of the CPPUnit distribution you wish to build and link
+# against. (Defines the value of --with-cppunit for the configure script).
+# AMQCPP_CPPUNIT_DIST=/usr
+
+# Defines the location of the CPPUnit script cppunit-config is located, this
+# script can tell us where everything else for CPPUnit is installed.
+# (Defines the value of --with-cppunit-exec for the configure script).
+# AMQCPP_CPPUNIT_EXECDIR=/usr
+
+# Disable Shared library builds
+# AMQCPP_DISABLE_SHARED=true
+
+# Disable Static library builds
+# AMQCPP_DISABLE_STATIC=true

Modified: activemq/activemq-cpp/trunk/activemq-cpp/build.sh
URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/trunk/activemq-cpp/build.sh?rev=782148&r1=782147&r2=782148&view=diff
==============================================================================
--- activemq/activemq-cpp/trunk/activemq-cpp/build.sh (original)
+++ activemq/activemq-cpp/trunk/activemq-cpp/build.sh Fri Jun  5 21:43:02 2009
@@ -27,8 +27,8 @@
 fi
 
 # This is where we run all the build steps, configure, make, etc.
-if [ -n builddir ] ; then
-   builddir="./build"
+if [ -z "$AMQCPP_BUILD_DIR" ] ; then
+   AMQCPP_BUILD_DIR="$PWD/build"
 fi
 
 check_Configure() {
@@ -40,7 +40,7 @@
         # even if we have a configure script, if the template has been updated we should
         # run it again to account for the changes, which also means we need to run a autogen
         # to create the actual script and associated autoconf artifacts.
-        if [ "./configure.ac" -ot "./configure" ] && [ -d $builddir ] ; then
+        if [ "./configure.ac" -ot "./configure" ] && [ -d $AMQCPP_BUILD_DIR ] ; then
             runconfigure=false
         else
             runconfigure=true
@@ -48,33 +48,81 @@
 
     fi
 
-    if [ "true" = $runconfigure ] ; then
+    if [ "x$runconfigure" -ne x ] ; then
         run_Configure
     fi
 
 }
 
 run_Configure() {
-    ./autogen.sh
 
-    if ! [ -d $builddir ] ; then
-        mkdir -p $builddir
+    if [ -z "$AMQCPP_DISABLE_SHARED" ] ; then
+        AMQCPP_DISABLE_SHARED=false;
+    fi
+    if [ -z "$AMQCPP_DISABLE_STATIC" ] ; then
+        AMQCPP_DISABLE_STATIC=false;
+    fi
+
+#    ./autogen.sh
+
+    local args
+
+    if ! [ -d "$AMQCPP_BUILD_DIR" ] ; then
+        mkdir -p $AMQCPP_BUILD_DIR
+    fi
+
+    if [ -n "$AMQCPP_INSTALL_PREFIX" ] ; then
+        args="$args --prefix=$AMQCPP_INSTALL_PREFIX"
+    fi
+
+    if [ -n "$AMQCPP_LIBDIR" ] ; then
+        args="$args --libdir=$AMQCPP_LIBDIR"
+    fi
+
+    if [ -n "$AMQCPP_APR_DIST" ] ; then
+        args="$args --with-apr=$AMQCPP_APR_DIST"
+    fi
+
+    if [ -n "$AMQCPP_APU_DIST" ] ; then
+        args="$args --with-aprutil=$AMQCPP_APU_DIST"
+    fi
+
+    if [ -n "$AMQCPP_CPPUNIT_DIST" ] ; then
+        args="$args --with-cppunit=$AMQCPP_CPPUNIT_DIST"
+    fi
+
+    if [ -n "$AMQCPP_CPPUNIT_EXECDIR" ] ; then
+        args="$args --with-cppunit-exec=$AMQCPP_CPPUNIT_EXECDIR"
+    fi
+
+    if $AMQCPP_DISABLE_SHARED && $AMQCPP_DISABLE_STATIC ; then
+        echo "AMQCPP_DISABLE_SHARED and $AMQCPP_DISABLE_STATIC can't both be set to true."
+        exit 1
+    fi
+
+    if $AMQCPP_DISABLE_SHARED ; then
+        args="$args --enable-shared=no"
+    fi
+
+    if $AMQCPP_DISABLE_STATIC ; then
+        args="$args --enable-static=no"
     fi
 
-    pushd $builddir
-    ../configure
+    pushd $AMQCPP_BUILD_DIR
+    echo "../configure $args"
+    ../configure $args
     popd
     exit
 }
 
 run_Clean() {
-    rm -rf $builddir
+    rm -rf $AMQCPP_BUILD_DIR
     exit
 }
 
 run_Make() {
     check_Configure
-    pushd $builddir
+    pushd $AMQCPP_BUILD_DIR
     make
     popd
     exit
@@ -82,7 +130,7 @@
 
 run_Check() {
     check_Configure
-    pushd $builddir
+    pushd $AMQCPP_BUILD_DIR
     make check
     popd
     exit
@@ -90,7 +138,7 @@
 
 run_Doxygen() {
     check_Configure
-    pushd $builddir
+    pushd $AMQCPP_BUILD_DIR
     make doxygen-run
     popd
     exit

Modified: activemq/activemq-cpp/trunk/activemq-cpp/m4/find_cppunit.m4
URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/trunk/activemq-cpp/m4/find_cppunit.m4?rev=782148&r1=782147&r2=782148&view=diff
==============================================================================
--- activemq/activemq-cpp/trunk/activemq-cpp/m4/find_cppunit.m4 (original)
+++ activemq/activemq-cpp/trunk/activemq-cpp/m4/find_cppunit.m4 Fri Jun  5 21:43:02 2009
@@ -21,9 +21,9 @@
 AC_DEFUN([AMQ_FIND_CPPUNIT],
 [
 
-AC_ARG_WITH(cppunit-prefix,[  --with-cppunit-prefix=PFX   Prefix where CppUnit is installed (optional)],
+AC_ARG_WITH(cppunit-prefix,[  --with-cppunit=PFX      Prefix where CppUnit is installed (optional)],
             cppunit_config_prefix="$withval", cppunit_config_prefix="")
-AC_ARG_WITH(cppunit-exec-prefix,[  --with-cppunit-exec-prefix=PFX  Exec prefix where CppUnit is installed (optional)],
+AC_ARG_WITH(cppunit-exec-prefix,[  --with-cppunit-exec=PFX Exec prefix where CppUnit is installed (optional)],
             cppunit_config_exec_prefix="$withval", cppunit_config_exec_prefix="")
 
   if test x$cppunit_config_exec_prefix != x ; then