1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152
|
#!/bin/sh -ex
# create directory for distributions
DISTDIR=distall
mkdir $DISTDIR
TMPFILE=`mktemp` || exit 1
# Linux 32-bit
make cleanup
make amalgamation=yes cairo=no m32=yes MACHINE=i386 \
CPPFLAGS='-fno-stack-protector -U_FORTIFY_SOURCE -D_GNU_SOURCE' $*
make amalgamation=yes cairo=no m32=yes MACHINE=i386 \
CPPFLAGS='-fno-stack-protector -U_FORTIFY_SOURCE -D_GNU_SOURCE' manuals
make amalgamation=yes cairo=no m32=yes MACHINE=i386 \
CPPFLAGS='-fno-stack-protector -U_FORTIFY_SOURCE -D_GNU_SOURCE' dist > $TMPFILE
DISTRIBUTION=`tail -n 1 $TMPFILE`
cp -f $DISTRIBUTION $DISTDIR
# Linux 64-bit (barbone)
make clean
make 64bit=yes wrapmemcpy=yes \
CPPFLAGS='-fno-stack-protector -U_FORTIFY_SOURCE -D_GNU_SOURCE' \
amalgamation=yes cairo=no $*
make 64bit=yes wrapmemcpy=yes \
CPPFLAGS='-fno-stack-protector -U_FORTIFY_SOURCE -D_GNU_SOURCE' \
amalgamation=yes cairo=no DISTSUFFIX=-barebone dist > $TMPFILE
DISTRIBUTION=`tail -n 1 $TMPFILE`
cp -f $DISTRIBUTION $DISTDIR
# Linux 64-bit (complete)
make clean
make 64bit=yes wrapmemcpy=yes \
CPPFLAGS='-fno-stack-protector -U_FORTIFY_SOURCE -D_GNU_SOURCE' \
amalgamation=yes $*
make 64bit=yes wrapmemcpy=yes \
CPPFLAGS='-fno-stack-protector -U_FORTIFY_SOURCE -D_GNU_SOURCE' \
amalgamation=yes DISTSUFFIX=-complete dist > $TMPFILE
DISTRIBUTION=`tail -n 1 $TMPFILE`
cp -f $DISTRIBUTION $DISTDIR
# ARMv7_hf
# on Ubuntu: sudo apt-get install gcc-arm-linux-gnueabihf
make clean
make MACHINE=ARMv7 \
64bit=no \
CC=arm-linux-gnueabihf-gcc \
AR=arm-linux-gnueabihf-ar \
STRIP=arm-linux-gnueabihf-strip \
amalgamation=yes \
cairo=no \
errorcheck=no \
$*
make MACHINE=ARMv7 \
64bit=no \
CC=arm-linux-gnueabihf-gcc \
AR=arm-linux-gnueabihf-ar \
STRIP=arm-linux-gnueabihf-strip \
amalgamation=yes \
cairo=no \
errorcheck=no \
dist > $TMPFILE
DISTRIBUTION=`tail -n 1 $TMPFILE`
cp -f $DISTRIBUTION $DISTDIR
# ARMv6_hf
# on Linux:
# cd && mkdir -p arm && cd arm
# git clone --depth 1 https://github.com/raspberrypi/tools.git
make clean
make MACHINE=ARMv6 \
CC="ccache $HOME/arm/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin/arm-linux-gnueabihf-gcc" \
AR=$HOME/arm/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin/arm-linux-gnueabihf-ar \
STRIP=$HOME/arm/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin/arm-linux-gnueabihf-strip \
amalgamation=yes \
64bit=no \
cairo=no \
errorcheck=no \
$*
make MACHINE=ARMv6 \
CC="ccache $HOME/arm/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin/arm-linux-gnueabihf-gcc" \
AR=$HOME/arm/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin/arm-linux-gnueabihf-ar \
STRIP=$HOME/arm/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin/arm-linux-gnueabihf-strip \
amalgamation=yes \
64bit=no \
cairo=no \
errorcheck=no \
dist > $TMPFILE
DISTRIBUTION=`tail -n 1 $TMPFILE`
cp -f $DISTRIBUTION $DISTDIR
# Darwin 32-bit
# https://launchpad.net/~flosoft/+archive/cross-apple
make clean
make SYSTEM=Darwin \
MACHINE=i386 \
CC=i686-apple-darwin10-gcc \
AR=i686-apple-darwin10-ar \
RANLIB=i686-apple-darwin10-ranlib \
STRIP=i686-apple-darwin10-strip \
amalgamation=yes \
64bit=no \
cairo=no \
errorcheck=no \
$*
make SYSTEM=Darwin \
MACHINE=i386 \
CC=i686-apple-darwin10-gcc \
AR=i686-apple-darwin10-ar \
RANLIB=i686-apple-darwin10-ranlib \
STRIP=i686-apple-darwin10-strip \
amalgamation=yes \
64bit=no \
cairo=no \
errorcheck=no \
dist > $TMPFILE
DISTRIBUTION=`tail -n 1 $TMPFILE`
cp -f $DISTRIBUTION $DISTDIR
# Darwin 64-bit
# https://launchpad.net/~flosoft/+archive/cross-apple
make clean
make SYSTEM=Darwin \
MACHINE=i386 \
64bit=yes \
CC=i686-apple-darwin10-gcc \
AR=i686-apple-darwin10-ar \
RANLIB=i686-apple-darwin10-ranlib \
STRIP=i686-apple-darwin10-strip \
amalgamation=yes \
cairo=no \
errorcheck=no \
$*
make SYSTEM=Darwin \
MACHINE=i386 \
64bit=yes \
CC=i686-apple-darwin10-gcc \
AR=i686-apple-darwin10-ar \
RANLIB=i686-apple-darwin10-ranlib \
STRIP=i686-apple-darwin10-strip \
amalgamation=yes \
cairo=no \
errorcheck=no \
dist > $TMPFILE
DISTRIBUTION=`tail -n 1 $TMPFILE`
cp -f $DISTRIBUTION $DISTDIR
|