Allow single architecture packages to be made
authorTodd Naugle <toddn@glw.com>
Thu, 24 Mar 2011 21:13:53 +0000 (21:13 +0000)
committerTodd Naugle <toddn@glw.com>
Thu, 24 Mar 2011 21:13:53 +0000 (21:13 +0000)
git-svn-id: svn://localhost/ardour2/branches/3.0@9200 d708f5d6-7413-0410-9779-e7cbd77b26cf

tools/linux_packaging/package
tools/linux_packaging/stage2.run

index be4ad86418e3c411d978c2efdc633bab52aed92e..16e145ec83facc4d5d646e4db2339386a036eae3 100755 (executable)
@@ -1,4 +1,4 @@
-#!/bin/bash
+\#!/bin/bash
 
 # package
 
@@ -7,6 +7,10 @@
 
 STRIP=1
 BUILDTYPE=""
+SINGLE_ARCH="F"
+X86_BUNDLE_OK="F"
+X86_64_BUNDLE_OK="F"
+
 
 if [ $# -eq 0 ] ; then
        echo ""  
@@ -36,6 +40,7 @@ while [ $# -gt 0 ] ; do
                shift ;;
 
        --nostrip) STRIP= ; shift ;;
+       --singlearch) SINGLE_ARCH="T" ; shift ;;
 
        *)
                #catch all for unknown arguments
@@ -69,28 +74,72 @@ fi
 if [ -z ${BUILDTYPE} ]; then
        X86_BUILD="${APPNAME}_x86-${release_version}_${svn_version}.tar.bz2"
        X86_64_BUILD="${APPNAME}_x86_64-${release_version}_${svn_version}.tar.bz2"
-       PACKAGE="${APPNAME}-${release_version}_${svn_version}"
 else
        X86_BUILD="${APPNAME}_x86-${release_version}_${svn_version}-${BUILDTYPE}.tar.bz2"
        X86_64_BUILD="${APPNAME}_x86_64-${release_version}_${svn_version}-${BUILDTYPE}.tar.bz2"
-       PACKAGE="${APPNAME}-${release_version}_${svn_version}-${BUILDTYPE}"
 fi 
 
 
 if [ ! -e ${X86_BUILD} ]; then
        echo ""
-       echo "!!! ERROR !!! - Can't locate x86 build file ${X86_BUILD}"
+       echo "Can't locate x86 bundle file ${X86_BUILD}"
        echo ""
-       exit 1
+else
+       X86_BUNDLE_OK="T"
 fi
 
 if [ ! -e ${X86_64_BUILD} ]; then
        echo ""
-       echo "!!! ERROR !!! - Can't locate x86_64 build file ${X86_64_BUILD}"
+       echo "Can't locate x86_64 bundle file ${X86_64_BUILD}"
        echo ""
-       exit 1
+else
+       X86_64_BUNDLE_OK="T"
+fi
+
+
+if [ "${X86_BUNDLE_OK}" = "F" ] || [ "${X86_64_BUNDLE_OK}" = "F" ]; then
+       if [ "${X86_BUNDLE_OK}" = "${X86_64_BUNDLE_OK}" ]; then
+               echo ""
+               echo "!!! ERROR !!! - Can't locate bundle files ${X86_BUILD} or ${X86_64_BUILD}"
+               echo ""
+               exit 1
+       elif [ "${SINGLE_ARCH}" = "T" ]; then
+               echo ""
+               echo "!!! Warning !!! - A single architecture package has been selected"
+               echo ""
+       else
+               echo ""
+               echo "!!! ERROR !!! - Missing bundle files."
+               echo ""
+               exit 1
+       fi
 fi
 
+
+
+if [ -z ${BUILDTYPE} ]; then
+       if [ "${SINGLE_ARCH}" = "T" ]; then
+               if [ "${X86_BUNDLE_OK}" = "T" ]; then
+                       PACKAGE="${APPNAME}_32bit-${release_version}_${svn_version}"
+               else
+                       PACKAGE="${APPNAME}_64bit-${release_version}_${svn_version}"
+               fi
+       else
+               PACKAGE="${APPNAME}-${release_version}_${svn_version}"
+       fi
+else
+       if [ "${SINGLE_ARCH}" = "T" ]; then
+               if [ "${X86_BUNDLE_OK}" = "T" ]; then
+                       PACKAGE="${APPNAME}_32bit-${release_version}_${svn_version}-${BUILDTYPE}"
+               else
+                       PACKAGE="${APPNAME}_64bit-${release_version}_${svn_version}-${BUILDTYPE}"
+               fi
+       else
+               PACKAGE="${APPNAME}-${release_version}_${svn_version}-${BUILDTYPE}"
+       fi
+fi 
+
+
 echo "Cleaning up any old package files for this build"
 #Get rid of any old packages of this same name.
 rm -f ${PACKAGE}.tar.bz2
@@ -99,8 +148,15 @@ rm -rf ${PACKAGE}
 
 echo "Creating new package dir..."
 mkdir ${PACKAGE}
-mv ${X86_BUILD} ${PACKAGE}
-mv ${X86_64_BUILD} ${PACKAGE}
+
+if [ "${X86_BUNDLE_OK}" = "T" ]; then
+       mv ${X86_BUILD} ${PACKAGE}
+fi
+
+if [ "${X86_64_BUNDLE_OK}" = "T" ]; then
+       mv ${X86_64_BUILD} ${PACKAGE}
+fi
+
 cp install.sh ${PACKAGE}
 cp stage2.run ${PACKAGE}/.stage2.run
 cp README ${PACKAGE}
index 2ea16250112b78527e373b4b104cfb20383de655..207df675c892903be0dc227a26c82d4e7800efbf 100755 (executable)
@@ -148,6 +148,14 @@ esac
 
 # untar the correct bundle for us to install
 echo "Unpacking bundle for $ARCH"
+
+if [ ! -e ${PGM_NAME}_${ARCH}-*.tar.bz2 ]; then
+       echo ""
+       echo "!!! ERROR !!! Can't locate ${ARCH} bundle file."
+       echo ""
+       exit 1
+fi
+
 tar -xjf ${PGM_NAME}_${ARCH}-*.tar.bz2
 BUNDLE_DIR=$(basename `find -maxdepth 1 -type d -name "${PGM_NAME}_${ARCH}-*"`)