diff options
author | Jörg Frings-Fürst <debian@jff-webhosting.net> | 2015-08-23 12:22:51 +0200 |
---|---|---|
committer | Jörg Frings-Fürst <debian@jff-webhosting.net> | 2015-08-23 12:22:51 +0200 |
commit | bc3604d9b226ac475a104cd8ae2ca2d1d4a27984 (patch) | |
tree | e796661f371a94a50edfdc693388bb911b253dfd /makeoemdnldbin.sh | |
parent | 509016be676f7915d635fa57144d2a441e3090ca (diff) | |
parent | c0b89ac5bfb90835ef01573267020e42d4fe070c (diff) |
Merge new upstream release
Diffstat (limited to 'makeoemdnldbin.sh')
-rwxr-xr-x | makeoemdnldbin.sh | 151 |
1 files changed, 151 insertions, 0 deletions
diff --git a/makeoemdnldbin.sh b/makeoemdnldbin.sh new file mode 100755 index 0000000..b77fb8b --- /dev/null +++ b/makeoemdnldbin.sh @@ -0,0 +1,151 @@ +#!/bin/sh +echo "Script to invoke Jam and then package spectro/oemdnld binary." + +# Typical environment variables: +# (NOTE some systems don't export these ENV vars. by default !!!) +# +# Platform $OSTYPE $MACHTYPE $HOSTTYPE +# +# Win2K [CMD.EXE] (none) (none) (none) +# +# Cygwin Win2K [bash] cygwin i686-pc-cygwin i686 +# +# OS X PPC 10.3 [zsh] darwin7.0 powerpc (none) +# +# OS X i386 10.4 [bash] darwin8.0 i386-apple-darwin8.0 i386 +# +# OS X i386 10.5 [bash] darwin9.0 i386-apple-darwin9.0 i386 +# +# OS X i386 10.6 [bash] darwin10.0 x86_64-apple-darwin10.0 x86_64 +# +# OS X i386 10.7 [bash] darwin11 x86_64-apple-darwin11 x86_64 +# +# Linux RH 4.0 [bash] linux-gnu i686-redhat-linux-gnu i686 +# +# Linux Fedora 7.1 [bash] linux-gnu i386-redhat-linux-gnu i386 +# Linux Ubuntu ??7 linux-gnu i486-pc-linux-gnu i686 +# +# Linux Fedora 7.1 64 bit [bash] linux-gnu x86_64-redhat-linux-gnu x86_64 +# Ubuntu 12.10 64 bit [bash] linux-gnu x86_64-pc-linux-gnu x86_64 +# +# FreeBSD 9.1 64 bit [bash] freebsd9.1 amd64-portbld-freebsd9.1 amd64 +# + +# We don't mark the binaries with the version, so that we don'y +# haveto keep the web page in sync with ArgyllCMS. + +echo "About to make OEMdnld binary distribution" + +TOPDIR=OEMdist + +# Make sure that some environment variable are visible to Jam: +export OSTYPE MACHTYPE HOSTTYPE + +# Make sure it's built and installed +if ! jam -q -fJambase -j${NUMBER_OF_PROCESSORS:-2} -sBUILTIN_TIFF=true -sBUILTIN_JPEG=true "<spectro>oemdnld" ; then + echo "Build failed!" + exit 1 +fi + +# Maybe we could get Jam to do the following ? + +if [ X$OS = "XWindows_NT" ] ; then + echo "We're on MSWindows!" + # Hack cross comile + if [ X$COMPILER = "XMINGW64" ] ; then + echo "We're cross compiling to MSWin 64 bit !" + PACKAGE=oemdnld_win64_exe.zip + EXE=.exe + unset USETAR + else + # ~~ should detect native 64 bit here ~~ + echo "We're on MSWin 32 bit !" + PACKAGE=oemdnld_win32_exe.zip + EXE=.exe + unset USETAR + fi +else if [ X$OSTYPE = "Xdarwin7.0" ] ; then + echo "We're on OSX 10.3 PPC!" + PACKAGE=oemdnld_osx10.3_ppc_bin.tgz + USETAR=true + EXE= +else if [ X$OSTYPE = "Xdarwin8.0" ] ; then + if [ X$MACHTYPE = "Xi386-apple-darwin8.0" ] ; then + echo "We're on OSX 10.4 i386!" + PACKAGE=oemdnld_osx10.4_i86_bin.tgz + else if [ X$MACHTYPE = "Xpowerpc-apple-darwin8.0" ] ; then + echo "We're on OSX 10.4 PPC!" + PACKAGE=oemdnld_osx10.4_ppc_bin.tgz + fi + fi + EXE= + USETAR=true +else if [ X$OSTYPE = "Xdarwin10.0" \ + -o X$OSTYPE = "Xdarwin11" ] ; then + if [ X$HOSTTYPE = "Xx86_64" ] ; then + echo "We're on OSX 10.6 x86_64!" + PACKAGE=oemdnld_osx10.6_x86_64_bin.tgz + fi + EXE= + USETAR=true +else if [ X$OSTYPE = "Xlinux-gnu" ] ; then + if [[ "$MACHTYPE" = x86_64-*-linux-gnu ]] ; then + echo "We're on Linux x86_64!" + PACKAGE=oemdnld_linux_x86_64_bin.tgz + else if [[ "$MACHTYPE" = *86-*-linux-gnu ]] ; then + echo "We're on Linux x86!" + PACKAGE=oemdnld_linux_x86_bin.tgz + fi + fi + EXE= + USETAR=true +fi +fi +fi +fi +fi + +if [ X$PACKAGE = "X" ] ; then + echo "Unknown host - build failed!" + exit 1 +fi + +echo "Making OEMdnld binary distribution $PACKAGE" + +rm -rf $TOPDIR +mkdir $TOPDIR + +# Collect the names of all the files that we're going to package + +allfiles="spectro/oemdnld${EXE}" + +# Copy all the files to the package top directory +for i in ${allfiles}; do + path=${i%/*} # extract path without filename + file=${i##*/} # extract filename + if [ $path = $i ] ; then + path= + fi + cp $i $TOPDIR/${file} +done + +# Create the package +rm -f $PACKAGE +if [ X$USETAR = "Xtrue" ] ; then + cd $TOPDIR + tar -czvf ../$PACKAGE * + # tar -xzf to extract + # tar -tzf to list + cd .. +else + cd $TOPDIR + zip -9 -r ../$PACKAGE * + # unzip to extract + # unzip -l to list + cd .. +fi +rm -rf $TOPDIR +echo "Done GNU Argyll binary distribution $PACKAGE" + +exit 0 + |