@@ -1,10 +1,11 @@ #!/bin/bash # Shell Script to make Mac OS X Releases of CACKey # Kenneth Van Alstyne # kenneth.l.vanalstyne@usace.army.mil # 20100712 +CACKEY_VERSION=`cat configure.ac | grep AC_INIT | cut -d " " -f 2 | sed 's_)__'` # Usage function usage() { echo "Usage: build_osx.sh " echo Where target is one of: @@ -18,10 +19,15 @@ exit $? } # Clean up function clean() { + for PMDOC in build/cackey_osx_build/*_pmbuild.pmdoc/*.in; do + PMDOC="`echo "${PMDOC}" | sed 's_.in__g'`" + rm -f "${PMDOC}" + done + rm -f build/cackey_osx_build/cackey.dylib rm -rf macbuild make distclean } # Directory creation function @@ -142,19 +148,26 @@ rm macbuild/${OSX}/libcackey*.dylib.* } # Function to build Mac OS X Packages pkgbuild() { + rm -f build/cackey_osx_build/cackey.dylib + ln macbuild/${OSX}/libcackey.dylib build/cackey_osx_build/cackey.dylib + for PMDOC in build/cackey_osx_build/${OSX}_pmbuild.pmdoc/*.in; do + PMDOC="`echo "${PMDOC}" | sed 's_.in__g'`" + sed "s|@@BUILDROOTDIR@@|$(pwd)|g" ${PMDOC}.in > ${PMDOC} + done if [ ${OSX} == "Panther" ]; then EXT=mpkg else EXT=pkg fi - /Developer/Applications/Utilities/PackageMaker.app/Contents/MacOS/PackageMaker -d build/cackey_osx_build/${OSX}_pmbuild.pmdoc -o macbuild/pkg/CACKey_${OSX}.${EXT} - tar --create --directory macbuild/pkg/ --file macbuild/pkg/CACKey_${OSX}.${EXT}.tar CACKey_${OSX}.${EXT} - gzip -9 macbuild/pkg/CACKey_${OSX}.${EXT}.tar - rm -rf macbuild/pkg/CACKey_${OSX}.${EXT} + /Developer/Applications/Utilities/PackageMaker.app/Contents/MacOS/PackageMaker -d build/cackey_osx_build/${OSX}_pmbuild.pmdoc -o macbuild/pkg/CACKey_${CACKEY_VERSION}_${OSX}.${EXT} + tar --create --directory macbuild/pkg/ --file macbuild/pkg/CACKey_${CACKEY_VERSION}_${OSX}.${EXT}.tar CACKey_${CACKEY_VERSION}_${OSX}.${EXT} + gzip -9 macbuild/pkg/CACKey_${CACKEY_VERSION}_${OSX}.${EXT}.tar + rm -rf macbuild/pkg/CACKey_${CACKEY_VERSION}_${OSX}.${EXT} + rm -f build/cackey_osx_build/cackey.dylib echo "${OSX} build complete" } # Take command line arguments and execute case "$1" in