Several changes to acprep to help me prepare a universal binary on OS X for
distribution.
This commit is contained in:
parent
721effa6ba
commit
b010b2fc78
4 changed files with 57 additions and 10 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
|
@ -7,6 +7,7 @@
|
||||||
*.ky
|
*.ky
|
||||||
*.la
|
*.la
|
||||||
*.lo
|
*.lo
|
||||||
|
*.loT
|
||||||
*.log
|
*.log
|
||||||
*.o
|
*.o
|
||||||
*.pg
|
*.pg
|
||||||
|
|
|
||||||
56
acprep
56
acprep
|
|
@ -27,12 +27,17 @@ autoreconf --force --install
|
||||||
|
|
||||||
SWITCHES=""
|
SWITCHES=""
|
||||||
|
|
||||||
|
BOOST_SUFFIX=""
|
||||||
|
|
||||||
INCDIRS="-isystem /usr/local/include"
|
INCDIRS="-isystem /usr/local/include"
|
||||||
INCDIRS="$INCDIRS -isystem /opt/local/include"
|
INCDIRS="$INCDIRS -isystem /opt/local/include"
|
||||||
|
INCDIRS="$INCDIRS -isystem /opt/local/include/libofx"
|
||||||
INCDIRS="$INCDIRS -isystem /usr/local/include/boost-1_35"
|
INCDIRS="$INCDIRS -isystem /usr/local/include/boost-1_35"
|
||||||
|
|
||||||
LIBDIRS="-L/usr/local/lib -L/opt/local/lib"
|
|
||||||
LDFLAGS=""
|
LDFLAGS=""
|
||||||
|
LIBDIRS="-L/usr/local/lib -L/opt/local/lib"
|
||||||
|
|
||||||
|
ARCHFLAGS="-arch i386 -arch ppc -isysroot /Developer/SDKs/MacOSX10.5.sdk"
|
||||||
|
|
||||||
PYTHON_HOME="/usr"
|
PYTHON_HOME="/usr"
|
||||||
|
|
||||||
|
|
@ -45,9 +50,6 @@ elif [ $SYSTEM = Solaris ]; then
|
||||||
CXXFLAGS="-pthreads"
|
CXXFLAGS="-pthreads"
|
||||||
elif [ $SYSTEM = Darwin ]; then
|
elif [ $SYSTEM = Darwin ]; then
|
||||||
CXXFLAGS=""
|
CXXFLAGS=""
|
||||||
#CXXFLAGS="-arch i386 -arch ppc -isysroot /Developer/SDKs/MacOSX10.5.sdk"
|
|
||||||
#LDFLAGS="$LDFLAGS -arch i386 -arch ppc -Wl,-syslibroot,/Developer/SDKs/MacOSX10.5.sdk"
|
|
||||||
#SWITCHES="$SWITCHES --disable-dependency-tracking"
|
|
||||||
else
|
else
|
||||||
CXXFLAGS=""
|
CXXFLAGS=""
|
||||||
fi
|
fi
|
||||||
|
|
@ -163,15 +165,33 @@ CXXFLAGS="$CXXFLAGS -Wwrite-strings"
|
||||||
#
|
#
|
||||||
# $ ./myacprep
|
# $ ./myacprep
|
||||||
#
|
#
|
||||||
|
# --release
|
||||||
|
#
|
||||||
|
# This is the opposite of --devel: it means you wish to build in a release
|
||||||
|
# scenario, preparing a universal binary and building against the non-debug
|
||||||
|
# versions of Boost and CppUnit.
|
||||||
|
#
|
||||||
|
# NOTE: I do not expect anyone but me to use --devel or --release, so don't be
|
||||||
|
# surprised if it doesn't work as advertised. In that case, look for me in
|
||||||
|
# the #ledger channel on the IRC server irc.freenode.net.
|
||||||
|
|
||||||
|
DO_BUILD=false
|
||||||
|
|
||||||
while [ -n "$1" ]; do
|
while [ -n "$1" ]; do
|
||||||
case "$1" in
|
case "$1" in
|
||||||
--devel)
|
--devel)
|
||||||
#SWITCHES="$SWITCHES --disable-shared --enable-pch"
|
# jww (2008-08-07): Sadly, PCH does not work with Boost+gcc4.0 on
|
||||||
|
# OS X. It does work with gcc4.2, but then _GLIBCXX_DEBUG fails.
|
||||||
SWITCHES="$SWITCHES --disable-shared"
|
SWITCHES="$SWITCHES --disable-shared"
|
||||||
|
#SWITCHES="$SWITCHES --disable-shared --enable-pch"
|
||||||
|
|
||||||
# The use of this flag requires that Boost be also build with
|
# The use of this flag requires that Boost be also build with
|
||||||
# _GLIBCXX_DEBUG.
|
# _GLIBCXX_DEBUG.
|
||||||
CPPFLAGS="$CPPFLAGS -D_GLIBCXX_DEBUG=1"
|
CPPFLAGS="$CPPFLAGS -D_GLIBCXX_DEBUG=1"
|
||||||
|
CPPFLAGS="-isystem /usr/local/stow/cppunit-debug/include $CPPFLAGS"
|
||||||
|
|
||||||
|
BOOST_SUFFIX="-d-1_35" # I built mine with _GLIBCXX_DEBUG
|
||||||
|
|
||||||
#LDFLAGS="-Wl,-read_only_relocs,suppress"
|
#LDFLAGS="-Wl,-read_only_relocs,suppress"
|
||||||
#LIBS=""
|
#LIBS=""
|
||||||
#if [ -f /opt/local/lib/libexpat.a ]; then
|
#if [ -f /opt/local/lib/libexpat.a ]; then
|
||||||
|
|
@ -183,6 +203,7 @@ while [ -n "$1" ]; do
|
||||||
#if [ -f /usr/lib/gcc/i686-apple-darwin9/4.2.1/libgcc_static.a ]; then
|
#if [ -f /usr/lib/gcc/i686-apple-darwin9/4.2.1/libgcc_static.a ]; then
|
||||||
# LIBS="$LIBS /usr/lib/gcc/i686-apple-darwin9/4.2.1/libgcc_static.a"
|
# LIBS="$LIBS /usr/lib/gcc/i686-apple-darwin9/4.2.1/libgcc_static.a"
|
||||||
#fi
|
#fi
|
||||||
|
|
||||||
shift 1 ;;
|
shift 1 ;;
|
||||||
|
|
||||||
--debug)
|
--debug)
|
||||||
|
|
@ -195,7 +216,7 @@ while [ -n "$1" ]; do
|
||||||
|
|
||||||
--boost)
|
--boost)
|
||||||
shift 1
|
shift 1
|
||||||
SWITCHES="$SWITCHES --with-boost-suffix=$1"
|
BOOST_SUFFIX="-$1"
|
||||||
shift 1 ;;
|
shift 1 ;;
|
||||||
|
|
||||||
--gcov)
|
--gcov)
|
||||||
|
|
@ -226,6 +247,18 @@ while [ -n "$1" ]; do
|
||||||
LOCAL=true
|
LOCAL=true
|
||||||
shift 1 ;;
|
shift 1 ;;
|
||||||
|
|
||||||
|
--build)
|
||||||
|
DO_BUILD=true
|
||||||
|
shift 1 ;;
|
||||||
|
|
||||||
|
--release)
|
||||||
|
SWITCHES="$SWITCHES --disable-dependency-tracking --disable-shared"
|
||||||
|
CPPFLAGS="-isystem /usr/local/stow/cppunit/include $CPPFLAGS"
|
||||||
|
CXXFLAGS="$CXXFLAGS $ARCHFLAGS"
|
||||||
|
LDFLAGS="$LDFLAGS $ARCHFLAGS -Wl,-syslibroot,/Developer/SDKs/MacOSX10.5.sdk"
|
||||||
|
|
||||||
|
shift 1 ;;
|
||||||
|
|
||||||
*)
|
*)
|
||||||
break ;;
|
break ;;
|
||||||
esac
|
esac
|
||||||
|
|
@ -244,7 +277,8 @@ fi
|
||||||
|
|
||||||
"$HERE/configure" --srcdir="$HERE" CXX="$CXX" \
|
"$HERE/configure" --srcdir="$HERE" CXX="$CXX" \
|
||||||
CPPFLAGS="$CPPFLAGS" CXXFLAGS="$CXXFLAGS $local_cxxflags" \
|
CPPFLAGS="$CPPFLAGS" CXXFLAGS="$CXXFLAGS $local_cxxflags" \
|
||||||
LDFLAGS="$LDFLAGS" LIBS="$LIBS" $SWITCHES "$@"
|
LDFLAGS="$LDFLAGS" LIBS="$LIBS" $SWITCHES \
|
||||||
|
--with-boost-suffix="$BOOST_SUFFIX"
|
||||||
|
|
||||||
# Alter the Makefile so that it's not nearly so verbose. This makes errors
|
# Alter the Makefile so that it's not nearly so verbose. This makes errors
|
||||||
# and warnings much easier to spot.
|
# and warnings much easier to spot.
|
||||||
|
|
@ -254,3 +288,11 @@ if [ -f Makefile ]; then
|
||||||
perl -i -pe 's/^\tmv -f/\t\@mv -f/;' Makefile
|
perl -i -pe 's/^\tmv -f/\t\@mv -f/;' Makefile
|
||||||
perl -i -pe 's/^\t(\$\((.*?)LINK\).*)/\t\@echo " " LD \$\@;$1 > \/dev\/null/;' Makefile
|
perl -i -pe 's/^\t(\$\((.*?)LINK\).*)/\t\@echo " " LD \$\@;$1 > \/dev\/null/;' Makefile
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# If the --build flag was passed, start a build right away with the right
|
||||||
|
# options.
|
||||||
|
|
||||||
|
if [ $DO_BUILD = true ]; then
|
||||||
|
echo "make ARCHFLAGS=\"$ARCHFLAGS\" \"$@\"" > make.sh
|
||||||
|
sh -x make.sh
|
||||||
|
fi
|
||||||
|
|
|
||||||
|
|
@ -42,7 +42,7 @@ AM_CONDITIONAL(USE_PCH, test x$pch = xtrue)
|
||||||
|
|
||||||
AC_ARG_WITH(boost-suffix,
|
AC_ARG_WITH(boost-suffix,
|
||||||
[ --with-boost-suffix=X Append X to the Boost library names],
|
[ --with-boost-suffix=X Append X to the Boost library names],
|
||||||
[BOOST_SUFFIX="-${withval}"],
|
[BOOST_SUFFIX="${withval}"],
|
||||||
[BOOST_SUFFIX=""])
|
[BOOST_SUFFIX=""])
|
||||||
|
|
||||||
AC_SUBST([BOOST_SUFFIX], $BOOST_SUFFIX)
|
AC_SUBST([BOOST_SUFFIX], $BOOST_SUFFIX)
|
||||||
|
|
|
||||||
8
myacprep
8
myacprep
|
|
@ -1,5 +1,9 @@
|
||||||
#!/bin/sh
|
#!/bin/bash
|
||||||
|
|
||||||
# This is how I run acprep on my OS X Leopard machine.
|
# This is how I run acprep on my OS X Leopard machine.
|
||||||
|
|
||||||
./acprep --local --devel --debug --boost d-1_35 --python
|
if [[ "$1" = "--release" ]]; then
|
||||||
|
./acprep --local --python "$@"
|
||||||
|
else
|
||||||
|
./acprep --local --devel --debug --python "$@"
|
||||||
|
fi
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue