Mercurial > mxe-octave
annotate mk-dist @ 3387:0779856e1186
Add desktop shortcut and octave-versionxxxxx-installer.exe naming.
* makeinst-script.mk: change installer name to octave-VERSION.exe,
add checkbox option to create deskyop shortcuts.
* mk-dist: when in stable mode use folder name of octave-VERSION.
author | John Donoghue <john.donoghue@ieee.org> |
---|---|
date | Fri, 03 Jan 2014 02:14:54 -0500 |
parents | 7b62537d0f8a |
children | 58b5ed5a0247 |
rev | line source |
---|---|
2921
f129bd6b8d6b
script for building a tar.bz2 file with Octave and dependncies
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
1 #! /bin/bash |
f129bd6b8d6b
script for building a tar.bz2 file with Octave and dependncies
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
2 |
f129bd6b8d6b
script for building a tar.bz2 file with Octave and dependncies
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
3 set -e |
f129bd6b8d6b
script for building a tar.bz2 file with Octave and dependncies
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
4 |
3316
f11beaa3e1f0
mk-dist: Don't set -j option to 9 by default. Use --jobs or settings.mk file to override.
Rik <rik@octave.org>
parents:
3274
diff
changeset
|
5 ## Override with --jobs option or set JOBS variable in settings.mk |
f11beaa3e1f0
mk-dist: Don't set -j option to 9 by default. Use --jobs or settings.mk file to override.
Rik <rik@octave.org>
parents:
3274
diff
changeset
|
6 jobs=0 |
2945 | 7 |
2957 | 8 OCTAVE_TARGET=octave |
3387
0779856e1186
Add desktop shortcut and octave-versionxxxxx-installer.exe naming.
John Donoghue <john.donoghue@ieee.org>
parents:
3374
diff
changeset
|
9 TOPDIR=$(pwd) |
0779856e1186
Add desktop shortcut and octave-versionxxxxx-installer.exe naming.
John Donoghue <john.donoghue@ieee.org>
parents:
3374
diff
changeset
|
10 PATH=$TOPDIR/usr/bin:$PATH |
0779856e1186
Add desktop shortcut and octave-versionxxxxx-installer.exe naming.
John Donoghue <john.donoghue@ieee.org>
parents:
3374
diff
changeset
|
11 TARGET=i686-pc-mingw32 |
0779856e1186
Add desktop shortcut and octave-versionxxxxx-installer.exe naming.
John Donoghue <john.donoghue@ieee.org>
parents:
3374
diff
changeset
|
12 PREFIX=/usr/$TARGET |
0779856e1186
Add desktop shortcut and octave-versionxxxxx-installer.exe naming.
John Donoghue <john.donoghue@ieee.org>
parents:
3374
diff
changeset
|
13 STRIP=$TARGET-strip |
0779856e1186
Add desktop shortcut and octave-versionxxxxx-installer.exe naming.
John Donoghue <john.donoghue@ieee.org>
parents:
3374
diff
changeset
|
14 DATE=$(date +%Y-%m-%d-%H-%M) |
0779856e1186
Add desktop shortcut and octave-versionxxxxx-installer.exe naming.
John Donoghue <john.donoghue@ieee.org>
parents:
3374
diff
changeset
|
15 OCTAVE_DIST_DIR=$TOPDIR/dist/octave-$DATE |
0779856e1186
Add desktop shortcut and octave-versionxxxxx-installer.exe naming.
John Donoghue <john.donoghue@ieee.org>
parents:
3374
diff
changeset
|
16 INSTALLER_PKG= |
0779856e1186
Add desktop shortcut and octave-versionxxxxx-installer.exe naming.
John Donoghue <john.donoghue@ieee.org>
parents:
3374
diff
changeset
|
17 |
0779856e1186
Add desktop shortcut and octave-versionxxxxx-installer.exe naming.
John Donoghue <john.donoghue@ieee.org>
parents:
3374
diff
changeset
|
18 OCTAVE_VERSION=`head -1 $TOPDIR/octave/octave-version` |
2987
eb1643bd900c
mk-dist: new argument, --no-strip
John W. Eaton <jwe@octave.org>
parents:
2965
diff
changeset
|
19 |
eb1643bd900c
mk-dist: new argument, --no-strip
John W. Eaton <jwe@octave.org>
parents:
2965
diff
changeset
|
20 strip=yes |
2992
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
2987
diff
changeset
|
21 installer=no |
2945 | 22 while [ $# -gt 0 ]; do |
23 case "$1" in | |
24 --jobs) | |
25 shift | |
26 if [ $# -gt 0 ]; then | |
27 jobs=$1 | |
28 shift | |
29 else | |
30 echo "mk-dist: expecting argument for --jobs option" 1>&2 | |
31 exit 1 | |
32 fi | |
33 ;; | |
2957 | 34 --stable) |
3387
0779856e1186
Add desktop shortcut and octave-versionxxxxx-installer.exe naming.
John Donoghue <john.donoghue@ieee.org>
parents:
3374
diff
changeset
|
35 # for stable, use octave-version as the folder |
2957 | 36 OCTAVE_TARGET=stable-octave |
3387
0779856e1186
Add desktop shortcut and octave-versionxxxxx-installer.exe naming.
John Donoghue <john.donoghue@ieee.org>
parents:
3374
diff
changeset
|
37 OCTAVE_DIST_DIR=$TOPDIR/dist/octave-$OCTAVE_VERSION |
2957 | 38 shift |
39 ;; | |
2987
eb1643bd900c
mk-dist: new argument, --no-strip
John W. Eaton <jwe@octave.org>
parents:
2965
diff
changeset
|
40 --no-strip) |
eb1643bd900c
mk-dist: new argument, --no-strip
John W. Eaton <jwe@octave.org>
parents:
2965
diff
changeset
|
41 strip=no |
eb1643bd900c
mk-dist: new argument, --no-strip
John W. Eaton <jwe@octave.org>
parents:
2965
diff
changeset
|
42 shift |
eb1643bd900c
mk-dist: new argument, --no-strip
John W. Eaton <jwe@octave.org>
parents:
2965
diff
changeset
|
43 ;; |
2992
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
2987
diff
changeset
|
44 --installer) |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
2987
diff
changeset
|
45 installer=yes |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
2987
diff
changeset
|
46 echo "making installer" |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
2987
diff
changeset
|
47 shift |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
2987
diff
changeset
|
48 ;; |
2945 | 49 *) |
50 echo "mk-dist: unrecognized option: $1" 1>&2 | |
51 exit 1 | |
52 ;; | |
53 esac | |
54 done | |
55 | |
2992
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
2987
diff
changeset
|
56 if [ $installer = "yes" ]; then |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
2987
diff
changeset
|
57 echo "Adding installer to build dependancies" |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
2987
diff
changeset
|
58 INSTALLER_PKG="nsis" |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
2987
diff
changeset
|
59 fi |
2921
f129bd6b8d6b
script for building a tar.bz2 file with Octave and dependncies
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
60 |
f129bd6b8d6b
script for building a tar.bz2 file with Octave and dependncies
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
61 echo "deleting previous dist directory..." |
2962
486c081fd0b5
mk-dist: create octave file with date info
John W. Eaton <jwe@octave.org>
parents:
2958
diff
changeset
|
62 rm -rf $TOPDIR/dist |
486c081fd0b5
mk-dist: create octave file with date info
John W. Eaton <jwe@octave.org>
parents:
2958
diff
changeset
|
63 mkdir -p $OCTAVE_DIST_DIR |
2921
f129bd6b8d6b
script for building a tar.bz2 file with Octave and dependncies
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
64 |
f129bd6b8d6b
script for building a tar.bz2 file with Octave and dependncies
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
65 echo "building octave and dependencies..." |
3316
f11beaa3e1f0
mk-dist: Don't set -j option to 9 by default. Use --jobs or settings.mk file to override.
Rik <rik@octave.org>
parents:
3274
diff
changeset
|
66 if [ $jobs -gt 0 ]; then |
3374
7b62537d0f8a
Add transfig package
John Donoghue <john.donoghue@ieee.org>
parents:
3373
diff
changeset
|
67 make $OCTAVE_TARGET $INSTALLER_PKG msys-base native-gcc native-binutils octave-forge-packages npp units transfig JOBS=$jobs |
3316
f11beaa3e1f0
mk-dist: Don't set -j option to 9 by default. Use --jobs or settings.mk file to override.
Rik <rik@octave.org>
parents:
3274
diff
changeset
|
68 else |
3374
7b62537d0f8a
Add transfig package
John Donoghue <john.donoghue@ieee.org>
parents:
3373
diff
changeset
|
69 make $OCTAVE_TARGET $INSTALLER_PKG msys-base native-gcc native-binutils octave-forge-packages npp units transfig |
3316
f11beaa3e1f0
mk-dist: Don't set -j option to 9 by default. Use --jobs or settings.mk file to override.
Rik <rik@octave.org>
parents:
3274
diff
changeset
|
70 fi |
2945 | 71 |
2956 | 72 echo "generating lists of files to exclude..." |
2921
f129bd6b8d6b
script for building a tar.bz2 file with Octave and dependncies
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
73 |
2956 | 74 echo " native files..." |
2921
f129bd6b8d6b
script for building a tar.bz2 file with Octave and dependncies
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
75 cat > $TOPDIR/excluded-native-files << EOF |
f129bd6b8d6b
script for building a tar.bz2 file with Octave and dependncies
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
76 ./$TARGET |
f129bd6b8d6b
script for building a tar.bz2 file with Octave and dependncies
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
77 ./bin/$TARGET-*.exe |
f129bd6b8d6b
script for building a tar.bz2 file with Octave and dependncies
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
78 EOF |
f129bd6b8d6b
script for building a tar.bz2 file with Octave and dependncies
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
79 |
2956 | 80 echo " gcc cross compiler files..." |
3012
100e618349f7
Improve handling of prefix directories by defining HOST_PREFIX and
John W. Eaton <jwe@octave.org>
parents:
3010
diff
changeset
|
81 cd $TOPDIR/cross-tools/$TOPDIR/$PREFIX |
2956 | 82 find . -type f -o -type l | sed "s,./,," > $TOPDIR/excluded-gcc-files |
83 | |
84 echo "copying files..." | |
85 | |
86 echo " octave and dependencies..." | |
3012
100e618349f7
Improve handling of prefix directories by defining HOST_PREFIX and
John W. Eaton <jwe@octave.org>
parents:
3010
diff
changeset
|
87 cd $TOPDIR/$PREFIX |
2962
486c081fd0b5
mk-dist: create octave file with date info
John W. Eaton <jwe@octave.org>
parents:
2958
diff
changeset
|
88 tar -c -h -X $TOPDIR/excluded-gcc-files -f - . | ( cd $OCTAVE_DIST_DIR ; tar xpf - ) |
486c081fd0b5
mk-dist: create octave file with date info
John W. Eaton <jwe@octave.org>
parents:
2958
diff
changeset
|
89 cp $TOPDIR/build_packages.m $OCTAVE_DIST_DIR/src |
2957 | 90 |
2965 | 91 echo " octaverc file..." |
92 cp $TOPDIR/octaverc $OCTAVE_DIST_DIR/share/octave/site/m/startup/octaverc | |
93 | |
2956 | 94 echo " native tools..." |
2921
f129bd6b8d6b
script for building a tar.bz2 file with Octave and dependncies
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
95 cd $TOPDIR/native-tools/usr |
2962
486c081fd0b5
mk-dist: create octave file with date info
John W. Eaton <jwe@octave.org>
parents:
2958
diff
changeset
|
96 tar -c -h -X $TOPDIR/excluded-native-files -f - . | ( cd $OCTAVE_DIST_DIR ; tar xpf - ) |
2921
f129bd6b8d6b
script for building a tar.bz2 file with Octave and dependncies
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
97 |
2956 | 98 echo " libgcc_s_dw2-1.dll to bin directory" |
2962
486c081fd0b5
mk-dist: create octave file with date info
John W. Eaton <jwe@octave.org>
parents:
2958
diff
changeset
|
99 cd $OCTAVE_DIST_DIR |
2956 | 100 cp lib/gcc/i686-pc-mingw32/libgcc_s_dw2-1.dll bin |
101 | |
102 echo " msys base files..." | |
103 cd $TOPDIR/msys-base | |
2962
486c081fd0b5
mk-dist: create octave file with date info
John W. Eaton <jwe@octave.org>
parents:
2958
diff
changeset
|
104 tar -c -h -f - . | ( cd $OCTAVE_DIST_DIR ; tar xpf - ) |
2956 | 105 |
3373
e9576ebedb26
Add msys-extension files to installer (Bug #40994)
John Donoghue <john.donoghue@ieee.org>
parents:
3366
diff
changeset
|
106 echo " msys extension files..." |
e9576ebedb26
Add msys-extension files to installer (Bug #40994)
John Donoghue <john.donoghue@ieee.org>
parents:
3366
diff
changeset
|
107 cd $TOPDIR/msys-extension |
e9576ebedb26
Add msys-extension files to installer (Bug #40994)
John Donoghue <john.donoghue@ieee.org>
parents:
3366
diff
changeset
|
108 tar -c -h -f - . | ( cd $OCTAVE_DIST_DIR ; tar xpf - ) |
e9576ebedb26
Add msys-extension files to installer (Bug #40994)
John Donoghue <john.donoghue@ieee.org>
parents:
3366
diff
changeset
|
109 |
e9576ebedb26
Add msys-extension files to installer (Bug #40994)
John Donoghue <john.donoghue@ieee.org>
parents:
3366
diff
changeset
|
110 |
2964 | 111 echo " notepad++..." |
112 cd $TOPDIR | |
113 tar -c -h -f - notepad++ | ( cd $OCTAVE_DIST_DIR ; tar xpf - ) | |
114 cp $TOPDIR/build_packages.m $OCTAVE_DIST_DIR/src | |
115 | |
2930 | 116 echo "making all files writable by user..." |
2962
486c081fd0b5
mk-dist: create octave file with date info
John W. Eaton <jwe@octave.org>
parents:
2958
diff
changeset
|
117 chmod -R u+w $OCTAVE_DIST_DIR |
2930 | 118 |
2987
eb1643bd900c
mk-dist: new argument, --no-strip
John W. Eaton <jwe@octave.org>
parents:
2965
diff
changeset
|
119 if [ $strip = "yes" ]; then |
eb1643bd900c
mk-dist: new argument, --no-strip
John W. Eaton <jwe@octave.org>
parents:
2965
diff
changeset
|
120 echo "stripping files..." |
eb1643bd900c
mk-dist: new argument, --no-strip
John W. Eaton <jwe@octave.org>
parents:
2965
diff
changeset
|
121 cd $OCTAVE_DIST_DIR |
eb1643bd900c
mk-dist: new argument, --no-strip
John W. Eaton <jwe@octave.org>
parents:
2965
diff
changeset
|
122 for f in $(find . -name '*.dll' -o -name '*.exe'); do |
eb1643bd900c
mk-dist: new argument, --no-strip
John W. Eaton <jwe@octave.org>
parents:
2965
diff
changeset
|
123 echo " $f" |
eb1643bd900c
mk-dist: new argument, --no-strip
John W. Eaton <jwe@octave.org>
parents:
2965
diff
changeset
|
124 $STRIP $f |
eb1643bd900c
mk-dist: new argument, --no-strip
John W. Eaton <jwe@octave.org>
parents:
2965
diff
changeset
|
125 done |
eb1643bd900c
mk-dist: new argument, --no-strip
John W. Eaton <jwe@octave.org>
parents:
2965
diff
changeset
|
126 fi |
2921
f129bd6b8d6b
script for building a tar.bz2 file with Octave and dependncies
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
127 |
2956 | 128 #echo "creating tar file..." |
129 #cd $TOPDIR/dist | |
2962
486c081fd0b5
mk-dist: create octave file with date info
John W. Eaton <jwe@octave.org>
parents:
2958
diff
changeset
|
130 #tar -c -j -f $OCTAVE_TARGET-$DATE.tar.bz2 $OCTAVE_TARGET-$DATE |
2956 | 131 |
2921
f129bd6b8d6b
script for building a tar.bz2 file with Octave and dependncies
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
132 cd $TOPDIR/dist |
2992
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
2987
diff
changeset
|
133 |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
2987
diff
changeset
|
134 if [ $installer = "yes" ]; then |
3387
0779856e1186
Add desktop shortcut and octave-versionxxxxx-installer.exe naming.
John Donoghue <john.donoghue@ieee.org>
parents:
3374
diff
changeset
|
135 ../makeinst-script.sh $OCTAVE_DIST_DIR |
2992
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
2987
diff
changeset
|
136 |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
2987
diff
changeset
|
137 echo "Generating installer ..." |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
2987
diff
changeset
|
138 $TOPDIR/usr/bin/$TARGET-makensis octave.nsi > /dev/null |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
2987
diff
changeset
|
139 |
3387
0779856e1186
Add desktop shortcut and octave-versionxxxxx-installer.exe naming.
John Donoghue <john.donoghue@ieee.org>
parents:
3374
diff
changeset
|
140 if [ -e octave-$OCTAVE_VERSION-installer.exe ]; then |
3010
8ac67219c241
Updates for nsis build and installer creation
John Donoghue <john.donoghue@ieee.org>
parents:
2992
diff
changeset
|
141 echo "Installer created" |
2992
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
2987
diff
changeset
|
142 rm octave.nsi |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
2987
diff
changeset
|
143 fi |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
2987
diff
changeset
|
144 |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
2987
diff
changeset
|
145 else |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
2987
diff
changeset
|
146 echo "creating zip file..." |
3387
0779856e1186
Add desktop shortcut and octave-versionxxxxx-installer.exe naming.
John Donoghue <john.donoghue@ieee.org>
parents:
3374
diff
changeset
|
147 zip -q -9 -r $OCTAVE_DIST_DIR.zip $OCTAVE_DIST_DIR |
2992
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
2987
diff
changeset
|
148 fi |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
2987
diff
changeset
|
149 |