5 # This will collect up the x86 and x86_64 bundles created by build
6 # and package them together with an installer script.
14 BUILD_ROOT=../../build
16 if [ $# -eq 0 ] ; then
18 echo "ERROR - Please specify build type"
25 while [ $# -gt 0 ] ; do
30 # top level build targets
44 MAKESELF=`which makeself`;
47 --singlearch) SINGLE_ARCH="T" ; shift ;;
49 --gcc5abi) GCC5ABI="T" ; shift ;;
52 #catch all for unknown arguments
54 echo "!!! ERROR !!! - Unknown argument $1"
61 . ../define_versions.sh
63 if [ x$DEBUG = xT ]; then
67 X86_BUNDLE="${APPNAME}_x86-${release_version}"
68 X86_64_BUNDLE="${APPNAME}_x86_64-${release_version}"
70 if [ ! -z ${BUILDTYPE} ]; then
71 X86_BUNDLE="${X86_BUNDLE}-${BUILDTYPE}"
72 X86_64_BUNDLE="${X86_64_BUNDLE}-${BUILDTYPE}"
75 if [ ! -e ${X86_BUNDLE}.tar.bz2 ] ; then
77 echo "Can't locate x86 bundle file ${X86_BUNDLE}.tar.bz2"
79 elif [ ! -e ${X86_BUNDLE}.size ] ; then
81 echo "Can't locate x86 bundle size file ${X86_BUNDLE}.size"
87 if [ ! -e ${X86_64_BUNDLE}.tar.bz2 ]; then
89 echo "Can't locate x86_64 bundle file ${X86_64_BUNDLE}.tar.bz2"
91 elif [ ! -e ${X86_64_BUNDLE}.size ]; then
93 echo "Can't locate x86 bundle size file ${X86_BUNDLE}.size"
100 if [ "${X86_BUNDLE_OK}" = "F" ] || [ "${X86_64_BUNDLE_OK}" = "F" ]; then
101 if [ "${X86_BUNDLE_OK}" = "${X86_64_BUNDLE_OK}" ]; then
103 echo "!!! ERROR !!! - Can't locate bundle files ${X86_BUNDLE} or ${X86_64_BUNDLE}"
106 elif [ "${SINGLE_ARCH}" = "T" ]; then
108 echo "!!! Warning !!! - A single architecture package has been selected"
112 echo "!!! ERROR !!! - Missing bundle files."
120 if [ -z ${BUILDTYPE} ]; then
121 if [ "${SINGLE_ARCH}" = "T" ]; then
122 if [ "${X86_BUNDLE_OK}" = "T" ]; then
123 PACKAGE="${APPNAME}_32bit-${release_version}"
125 PACKAGE="${APPNAME}_64bit-${release_version}"
128 PACKAGE="${APPNAME}-${release_version}"
131 if [ "${SINGLE_ARCH}" = "T" ]; then
132 if [ "${X86_BUNDLE_OK}" = "T" ]; then
133 PACKAGE="${APPNAME}_32bit-${release_version}-${BUILDTYPE}"
135 PACKAGE="${APPNAME}_64bit-${release_version}-${BUILDTYPE}"
138 PACKAGE="${APPNAME}-${release_version}-${BUILDTYPE}"
142 if [ "$GCC5ABI" = "T" ]; then
143 PACKAGE="${PACKAGE}-gcc5"
146 echo "Cleaning up any old package files for this build"
147 #Get rid of any old packages of this same name.
148 rm -f ${PACKAGE}.tar.bz2
152 echo "Creating new package dir..."
155 if [ "${X86_BUNDLE_OK}" = "T" ]; then
156 mv ${X86_BUNDLE}.tar.bz2 ${PACKAGE}
157 mv ${X86_BUNDLE}.size ${PACKAGE}/.${X86_BUNDLE}.size
160 if [ "${X86_64_BUNDLE_OK}" = "T" ]; then
161 mv ${X86_64_BUNDLE}.tar.bz2 ${PACKAGE}
162 mv ${X86_64_BUNDLE}.size ${PACKAGE}/.${X86_64_BUNDLE}.size
165 cp install.sh ${PACKAGE}
166 cp stage2.run ${PACKAGE}/.stage2.run
169 # gcc4/5 ABI test tool
170 if [ -e $BUILD_ROOT/tools/gccabicheck/gcc-glibmm-abi-check ]; then
171 cp $BUILD_ROOT/tools/gccabicheck/gcc-glibmm-abi-check ${PACKAGE}/.gcc-glibmm-abi-check
173 echo "!!!ERROR !!! gcc-glibmm-abi-check program is missing. packager will exit without being complete"
179 if test -n "$MAKESELF"; then
180 echo "Creating self-extracting installer"
181 $MAKESELF --nocomp ${PACKAGE}/ ${PACKAGE}.run ${APPNAME} ./install.sh
183 echo "Creating tarball..."
184 tar -cf ${PACKAGE}.tar ${PACKAGE}