Mercurial > mxe-octave
annotate makeinst-script.sh @ 3362:0f2a5e218359
makeinst-script.sh: Added checking of Windows version
author | Anirudha Bose <ani07nov@gmail.com> |
---|---|
date | Fri, 26 Jul 2013 04:18:36 +0530 |
parents | 9781db518638 |
children | b89f15801606 |
rev | line source |
---|---|
2992
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
1 #! /bin/bash |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
2 set -e |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
3 |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
4 if [ $# != 1 ]; then |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
5 echo "Expected octave folder" |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
6 exit |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
7 fi |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
8 |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
9 ARG1=$1 |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
10 |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
11 TOPDIR=`dirname $ARG1` |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
12 OCTAVE_SOURCE=`basename $ARG1` |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
13 |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
14 echo "Generating installer script ... " |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
15 |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
16 cd $TOPDIR |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
17 |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
18 # find icon |
3331
71171ba8bebd
Update installer script for admin level and single icon file
John Donoghue <john.donoghue@ieee.org>
parents:
3010
diff
changeset
|
19 ICON=`find $OCTAVE_SOURCE -name octave-logo.ico -printf "%P" | head -1 | sed 's,/,\\\\,g'` |
2992
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
20 |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
21 # create installer script |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
22 echo "; octave setup script $OCTAVE_SOURCE" > octave.nsi |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
23 |
3355
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
24 # installer settings |
2992
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
25 cat >> octave.nsi << EOF |
3355
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
26 !define APP_NAME "GNU Octave" |
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
27 !define COMP_NAME "GNU Project" |
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
28 !define WEB_SITE "http://www.octave.org" |
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
29 !define VERSION "3.7.5.0" |
3358
8708b7d07795
makeinst-script.sh: Added checking for previous installation of Octave
Anirudha Bose <ani07nov@gmail.com>
parents:
3357
diff
changeset
|
30 !define OCTAVE_VERSION "3.7.5" |
3355
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
31 !define COPYRIGHT "Copyright © 2013 John W. Eaton and others." |
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
32 !define DESCRIPTION "GNU Octave is a high-level programming language, primarily intended for numerical computations." |
3356
2e44e8f86cd6
makeinst-script.sh: add license page with GPLv3
Anirudha Bose <ani07nov@gmail.com>
parents:
3355
diff
changeset
|
33 !define LICENSE_TXT "../gpl-3.0.txt" |
3355
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
34 !define INSTALLER_NAME "octave-installer.exe" |
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
35 !define MAIN_APP_EXE "octave.exe" |
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
36 !define INSTALL_TYPE "SetShellVarContext current" |
3358
8708b7d07795
makeinst-script.sh: Added checking for previous installation of Octave
Anirudha Bose <ani07nov@gmail.com>
parents:
3357
diff
changeset
|
37 !define PRODUCT_ROOT_KEY "HKLM" |
8708b7d07795
makeinst-script.sh: Added checking for previous installation of Octave
Anirudha Bose <ani07nov@gmail.com>
parents:
3357
diff
changeset
|
38 !define PRODUCT_KEY "Software\Octave" |
3355
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
39 |
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
40 ###################################################################### |
2992
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
41 |
3355
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
42 VIProductVersion "\${VERSION}" |
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
43 VIAddVersionKey "ProductName" "\${APP_NAME}" |
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
44 VIAddVersionKey "CompanyName" "\${COMP_NAME}" |
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
45 VIAddVersionKey "LegalCopyright" "\${COPYRIGHT}" |
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
46 VIAddVersionKey "FileDescription" "\${DESCRIPTION}" |
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
47 VIAddVersionKey "FileVersion" "\${VERSION}" |
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
48 |
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
49 ###################################################################### |
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
50 |
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
51 SetCompressor /SOLID Lzma |
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
52 Name "\${APP_NAME}" |
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
53 Caption "\${APP_NAME}" |
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
54 OutFile "\${INSTALLER_NAME}" |
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
55 BrandingText "\${APP_NAME}" |
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
56 XPStyle on |
3361
9781db518638
makeinst-script.sh: Remove whitespace from installation path and add version number in default installation directory
Anirudha Bose <ani07nov@gmail.com>
parents:
3360
diff
changeset
|
57 InstallDir "C:\\Octave\\Octave-\${OCTAVE_VERSION}" |
3010
8ac67219c241
Updates for nsis build and installer creation
John Donoghue <john.donoghue@ieee.org>
parents:
2992
diff
changeset
|
58 Icon "$OCTAVE_SOURCE\\$ICON" |
3355
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
59 |
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
60 ###################################################################### |
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
61 !include "MUI.nsh" |
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
62 |
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
63 !define MUI_ABORTWARNING |
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
64 !define MUI_UNABORTWARNING |
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
65 |
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
66 !insertmacro MUI_PAGE_WELCOME |
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
67 |
3356
2e44e8f86cd6
makeinst-script.sh: add license page with GPLv3
Anirudha Bose <ani07nov@gmail.com>
parents:
3355
diff
changeset
|
68 !ifdef LICENSE_TXT |
3360
cbaab92e1174
makeinst-script.sh: Removed 'I Agree' in GPL license page
Anirudha Bose <ani07nov@gmail.com>
parents:
3359
diff
changeset
|
69 !define MUI_LICENSEPAGE_TEXT_BOTTOM "The source code for Octave is freely redistributable under the terms of the GNU General Public License (GPL) as published by the Free Software Foundation." |
cbaab92e1174
makeinst-script.sh: Removed 'I Agree' in GPL license page
Anirudha Bose <ani07nov@gmail.com>
parents:
3359
diff
changeset
|
70 !define MUI_LICENSEPAGE_BUTTON "Next >" |
3356
2e44e8f86cd6
makeinst-script.sh: add license page with GPLv3
Anirudha Bose <ani07nov@gmail.com>
parents:
3355
diff
changeset
|
71 !insertmacro MUI_PAGE_LICENSE "\${LICENSE_TXT}" |
2e44e8f86cd6
makeinst-script.sh: add license page with GPLv3
Anirudha Bose <ani07nov@gmail.com>
parents:
3355
diff
changeset
|
72 !endif |
2e44e8f86cd6
makeinst-script.sh: add license page with GPLv3
Anirudha Bose <ani07nov@gmail.com>
parents:
3355
diff
changeset
|
73 |
3355
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
74 !insertmacro MUI_PAGE_DIRECTORY |
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
75 |
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
76 !insertmacro MUI_PAGE_INSTFILES |
2992
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
77 |
3355
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
78 !define MUI_FINISHPAGE_RUN "\$INSTDIR\bin\\\${MAIN_APP_EXE}" |
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
79 !insertmacro MUI_PAGE_FINISH |
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
80 |
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
81 !insertmacro MUI_UNPAGE_CONFIRM |
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
82 |
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
83 !insertmacro MUI_UNPAGE_INSTFILES |
2992
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
84 |
3355
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
85 !insertmacro MUI_UNPAGE_FINISH |
3331
71171ba8bebd
Update installer script for admin level and single icon file
John Donoghue <john.donoghue@ieee.org>
parents:
3010
diff
changeset
|
86 |
3355
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
87 !insertmacro MUI_LANGUAGE "English" |
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
88 |
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
89 ###################################################################### |
bc7e18e12dcc
makeinst-script.sh: use MUI interface
Anirudha Bose <ani07nov@gmail.com>
parents:
3350
diff
changeset
|
90 |
3331
71171ba8bebd
Update installer script for admin level and single icon file
John Donoghue <john.donoghue@ieee.org>
parents:
3010
diff
changeset
|
91 RequestExecutionLevel admin |
3357
456b6e533054
makeinst-script.sh: Added checking for Java Runtime Environment
Anirudha Bose <ani07nov@gmail.com>
parents:
3356
diff
changeset
|
92 |
3358
8708b7d07795
makeinst-script.sh: Added checking for previous installation of Octave
Anirudha Bose <ani07nov@gmail.com>
parents:
3357
diff
changeset
|
93 Function .onInit |
3362
0f2a5e218359
makeinst-script.sh: Added checking of Windows version
Anirudha Bose <ani07nov@gmail.com>
parents:
3361
diff
changeset
|
94 Call DetectWinVer |
3358
8708b7d07795
makeinst-script.sh: Added checking for previous installation of Octave
Anirudha Bose <ani07nov@gmail.com>
parents:
3357
diff
changeset
|
95 Call CheckPrevVersion |
8708b7d07795
makeinst-script.sh: Added checking for previous installation of Octave
Anirudha Bose <ani07nov@gmail.com>
parents:
3357
diff
changeset
|
96 Call CheckJRE |
8708b7d07795
makeinst-script.sh: Added checking for previous installation of Octave
Anirudha Bose <ani07nov@gmail.com>
parents:
3357
diff
changeset
|
97 InitPluginsDir |
8708b7d07795
makeinst-script.sh: Added checking for previous installation of Octave
Anirudha Bose <ani07nov@gmail.com>
parents:
3357
diff
changeset
|
98 FunctionEnd |
3357
456b6e533054
makeinst-script.sh: Added checking for Java Runtime Environment
Anirudha Bose <ani07nov@gmail.com>
parents:
3356
diff
changeset
|
99 |
2992
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
100 ; file section |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
101 Section "MainFiles" |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
102 |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
103 EOF |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
104 |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
105 # insert the files |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
106 IFS=$'\n' |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
107 for f in $(find $OCTAVE_SOURCE -type d -printf "%P\n"); do |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
108 winf=`echo $f | sed 's,/,\\\\,g'` |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
109 echo " CreateDirectory \"\$INSTDIR\\$winf\"" >> octave.nsi |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
110 echo " SetOutPath \"\$INSTDIR\\$winf\"" >> octave.nsi |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
111 find "$OCTAVE_SOURCE/$f" -maxdepth 1 -type f -printf " File \"%p\"\n" >> octave.nsi |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
112 done |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
113 |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
114 cat >> octave.nsi << EOF |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
115 |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
116 SectionEnd |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
117 |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
118 Section make_uninstaller |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
119 ; Write the uninstall keys for Windows |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
120 SetOutPath "\$INSTDIR" |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
121 WriteRegStr HKLM "Software\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Octave" "DisplayName" "Octave" |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
122 WriteRegStr HKLM "Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Octave" "UninstallString" "\$INSTDIR\uninstall.exe" |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
123 WriteRegDWORD HKLM "Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Octave" "NoModify" 1 |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
124 WriteRegDWORD HKLM "Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Octave" "NoRepair" 1 |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
125 WriteUninstaller "uninstall.exe" |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
126 SectionEnd |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
127 |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
128 ; start menu (currently hardcoded) |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
129 Section "Shortcuts" |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
130 |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
131 CreateDirectory "\$SMPROGRAMS\\Octave" |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
132 CreateShortCut "\$SMPROGRAMS\\Octave\\Uninstall.lnk" "\$INSTDIR\\uninstall.exe" "" "\$INSTDIR\\uninstall.exe" 0 |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
133 CreateShortCut "\$SMPROGRAMS\Octave\\Octave.lnk" "\$INSTDIR\\bin\\octave.exe" "" "\$INSTDIR\\$ICON" 0 |
3350
078ba7a8c95b
installer: add experimental GUI shortcut
John Donoghue <john.donoghue@ieee.org>
parents:
3331
diff
changeset
|
134 CreateShortCut "\$SMPROGRAMS\Octave\\Octave (Experimental GUI).lnk" "\$INSTDIR\\bin\\octave-gui.exe" "" "\$INSTDIR\\$ICON" 0 |
2992
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
135 |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
136 SectionEnd |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
137 |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
138 Section "Uninstall" |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
139 |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
140 DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Octave" |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
141 DeleteRegKey HKLM "Software\Octave" |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
142 |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
143 ; Remove shortcuts |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
144 Delete "\$SMPROGRAMS\Octave\*.*" |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
145 RMDir "\$SMPROGRAMS\Octave" |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
146 |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
147 EOF |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
148 |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
149 # insert dir list (backwards order) for uninstall files |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
150 for f in $(find $OCTAVE_SOURCE -depth -type d -printf "%P\n"); do |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
151 winf=`echo $f | sed 's,/,\\\\,g'` |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
152 echo " Delete \"\$INSTDIR\\$winf\\*.*\"" >> octave.nsi |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
153 echo " RmDir \"\$INSTDIR\\$winf\"" >> octave.nsi |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
154 done |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
155 |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
156 # last bit of the uninstaller |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
157 cat >> octave.nsi << EOF |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
158 Delete "\$INSTDIR\*.*" |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
159 RmDir "\$INSTDIR" |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
160 SectionEnd |
3357
456b6e533054
makeinst-script.sh: Added checking for Java Runtime Environment
Anirudha Bose <ani07nov@gmail.com>
parents:
3356
diff
changeset
|
161 |
3362
0f2a5e218359
makeinst-script.sh: Added checking of Windows version
Anirudha Bose <ani07nov@gmail.com>
parents:
3361
diff
changeset
|
162 ; Function to detect Windows version and abort if Octave is unsupported in the current platform |
0f2a5e218359
makeinst-script.sh: Added checking of Windows version
Anirudha Bose <ani07nov@gmail.com>
parents:
3361
diff
changeset
|
163 Function DetectWinVer |
0f2a5e218359
makeinst-script.sh: Added checking of Windows version
Anirudha Bose <ani07nov@gmail.com>
parents:
3361
diff
changeset
|
164 Push \$0 |
0f2a5e218359
makeinst-script.sh: Added checking of Windows version
Anirudha Bose <ani07nov@gmail.com>
parents:
3361
diff
changeset
|
165 Push \$1 |
0f2a5e218359
makeinst-script.sh: Added checking of Windows version
Anirudha Bose <ani07nov@gmail.com>
parents:
3361
diff
changeset
|
166 ReadRegStr \$0 HKLM "SOFTWARE\Microsoft\Windows NT\CurrentVersion" CurrentVersion |
0f2a5e218359
makeinst-script.sh: Added checking of Windows version
Anirudha Bose <ani07nov@gmail.com>
parents:
3361
diff
changeset
|
167 IfErrors is_error is_winnt |
0f2a5e218359
makeinst-script.sh: Added checking of Windows version
Anirudha Bose <ani07nov@gmail.com>
parents:
3361
diff
changeset
|
168 is_winnt: |
0f2a5e218359
makeinst-script.sh: Added checking of Windows version
Anirudha Bose <ani07nov@gmail.com>
parents:
3361
diff
changeset
|
169 StrCpy \$1 \$0 1 |
0f2a5e218359
makeinst-script.sh: Added checking of Windows version
Anirudha Bose <ani07nov@gmail.com>
parents:
3361
diff
changeset
|
170 StrCmp \$1 4 is_error ; Aborting installation for Windows versions older than Windows 2000 |
0f2a5e218359
makeinst-script.sh: Added checking of Windows version
Anirudha Bose <ani07nov@gmail.com>
parents:
3361
diff
changeset
|
171 StrCmp \$0 "5.0" is_winnt_2000 |
0f2a5e218359
makeinst-script.sh: Added checking of Windows version
Anirudha Bose <ani07nov@gmail.com>
parents:
3361
diff
changeset
|
172 StrCmp \$0 "5.1" is_winnt_XP |
0f2a5e218359
makeinst-script.sh: Added checking of Windows version
Anirudha Bose <ani07nov@gmail.com>
parents:
3361
diff
changeset
|
173 StrCmp \$0 "5.2" is_winnt_2003 |
0f2a5e218359
makeinst-script.sh: Added checking of Windows version
Anirudha Bose <ani07nov@gmail.com>
parents:
3361
diff
changeset
|
174 StrCmp \$0 "6.0" is_winnt_vista |
0f2a5e218359
makeinst-script.sh: Added checking of Windows version
Anirudha Bose <ani07nov@gmail.com>
parents:
3361
diff
changeset
|
175 StrCmp \$0 "6.1" is_winnt_7 |
0f2a5e218359
makeinst-script.sh: Added checking of Windows version
Anirudha Bose <ani07nov@gmail.com>
parents:
3361
diff
changeset
|
176 StrCmp \$0 "6.2" is_winnt_8 |
0f2a5e218359
makeinst-script.sh: Added checking of Windows version
Anirudha Bose <ani07nov@gmail.com>
parents:
3361
diff
changeset
|
177 StrCmp \$1 6 is_winnt_8 ; Checking for future versions of Windows 8 |
0f2a5e218359
makeinst-script.sh: Added checking of Windows version
Anirudha Bose <ani07nov@gmail.com>
parents:
3361
diff
changeset
|
178 Goto is_error |
0f2a5e218359
makeinst-script.sh: Added checking of Windows version
Anirudha Bose <ani07nov@gmail.com>
parents:
3361
diff
changeset
|
179 |
0f2a5e218359
makeinst-script.sh: Added checking of Windows version
Anirudha Bose <ani07nov@gmail.com>
parents:
3361
diff
changeset
|
180 is_winnt_8: |
0f2a5e218359
makeinst-script.sh: Added checking of Windows version
Anirudha Bose <ani07nov@gmail.com>
parents:
3361
diff
changeset
|
181 MessageBox MB_YESNO|MB_ICONEXCLAMATION "Setup has detected Windows 8 installed on your system. Octave is currently not fully supported on Windows 8. If you choose to continue with the installation, you might not be able to access Octave GUI. Do you want to proceed with the installation anyway?" IDYES done IDNO 0 |
0f2a5e218359
makeinst-script.sh: Added checking of Windows version
Anirudha Bose <ani07nov@gmail.com>
parents:
3361
diff
changeset
|
182 Abort |
0f2a5e218359
makeinst-script.sh: Added checking of Windows version
Anirudha Bose <ani07nov@gmail.com>
parents:
3361
diff
changeset
|
183 is_winnt_2000: |
0f2a5e218359
makeinst-script.sh: Added checking of Windows version
Anirudha Bose <ani07nov@gmail.com>
parents:
3361
diff
changeset
|
184 is_winnt_XP: |
0f2a5e218359
makeinst-script.sh: Added checking of Windows version
Anirudha Bose <ani07nov@gmail.com>
parents:
3361
diff
changeset
|
185 is_winnt_2003: |
0f2a5e218359
makeinst-script.sh: Added checking of Windows version
Anirudha Bose <ani07nov@gmail.com>
parents:
3361
diff
changeset
|
186 is_winnt_vista: |
0f2a5e218359
makeinst-script.sh: Added checking of Windows version
Anirudha Bose <ani07nov@gmail.com>
parents:
3361
diff
changeset
|
187 is_winnt_7: |
0f2a5e218359
makeinst-script.sh: Added checking of Windows version
Anirudha Bose <ani07nov@gmail.com>
parents:
3361
diff
changeset
|
188 Goto done |
0f2a5e218359
makeinst-script.sh: Added checking of Windows version
Anirudha Bose <ani07nov@gmail.com>
parents:
3361
diff
changeset
|
189 is_error: |
0f2a5e218359
makeinst-script.sh: Added checking of Windows version
Anirudha Bose <ani07nov@gmail.com>
parents:
3361
diff
changeset
|
190 StrCpy \$1 \$0 |
0f2a5e218359
makeinst-script.sh: Added checking of Windows version
Anirudha Bose <ani07nov@gmail.com>
parents:
3361
diff
changeset
|
191 ReadRegStr \$0 HKLM "SOFTWARE\Microsoft\Windows NT\CurrentVersion" ProductName |
0f2a5e218359
makeinst-script.sh: Added checking of Windows version
Anirudha Bose <ani07nov@gmail.com>
parents:
3361
diff
changeset
|
192 IfErrors 0 +4 |
0f2a5e218359
makeinst-script.sh: Added checking of Windows version
Anirudha Bose <ani07nov@gmail.com>
parents:
3361
diff
changeset
|
193 ReadRegStr \$0 HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion" Version |
0f2a5e218359
makeinst-script.sh: Added checking of Windows version
Anirudha Bose <ani07nov@gmail.com>
parents:
3361
diff
changeset
|
194 IfErrors 0 +2 |
0f2a5e218359
makeinst-script.sh: Added checking of Windows version
Anirudha Bose <ani07nov@gmail.com>
parents:
3361
diff
changeset
|
195 StrCpy \$0 "Unknown" |
0f2a5e218359
makeinst-script.sh: Added checking of Windows version
Anirudha Bose <ani07nov@gmail.com>
parents:
3361
diff
changeset
|
196 MessageBox MB_ICONSTOP|MB_OK "This version of Octave cannot be installed on this system. Octave is supported only on Windows NT systems. Current system: \$0 (version: \$1)" |
0f2a5e218359
makeinst-script.sh: Added checking of Windows version
Anirudha Bose <ani07nov@gmail.com>
parents:
3361
diff
changeset
|
197 Abort |
0f2a5e218359
makeinst-script.sh: Added checking of Windows version
Anirudha Bose <ani07nov@gmail.com>
parents:
3361
diff
changeset
|
198 done: |
0f2a5e218359
makeinst-script.sh: Added checking of Windows version
Anirudha Bose <ani07nov@gmail.com>
parents:
3361
diff
changeset
|
199 Pop \$1 |
0f2a5e218359
makeinst-script.sh: Added checking of Windows version
Anirudha Bose <ani07nov@gmail.com>
parents:
3361
diff
changeset
|
200 Pop \$0 |
0f2a5e218359
makeinst-script.sh: Added checking of Windows version
Anirudha Bose <ani07nov@gmail.com>
parents:
3361
diff
changeset
|
201 FunctionEnd |
0f2a5e218359
makeinst-script.sh: Added checking of Windows version
Anirudha Bose <ani07nov@gmail.com>
parents:
3361
diff
changeset
|
202 |
3358
8708b7d07795
makeinst-script.sh: Added checking for previous installation of Octave
Anirudha Bose <ani07nov@gmail.com>
parents:
3357
diff
changeset
|
203 ; Function to check any previously installed version of Octave in the system |
8708b7d07795
makeinst-script.sh: Added checking for previous installation of Octave
Anirudha Bose <ani07nov@gmail.com>
parents:
3357
diff
changeset
|
204 Function CheckPrevVersion |
8708b7d07795
makeinst-script.sh: Added checking for previous installation of Octave
Anirudha Bose <ani07nov@gmail.com>
parents:
3357
diff
changeset
|
205 Push \$0 |
8708b7d07795
makeinst-script.sh: Added checking for previous installation of Octave
Anirudha Bose <ani07nov@gmail.com>
parents:
3357
diff
changeset
|
206 Push \$1 |
8708b7d07795
makeinst-script.sh: Added checking for previous installation of Octave
Anirudha Bose <ani07nov@gmail.com>
parents:
3357
diff
changeset
|
207 Push \$2 |
8708b7d07795
makeinst-script.sh: Added checking for previous installation of Octave
Anirudha Bose <ani07nov@gmail.com>
parents:
3357
diff
changeset
|
208 IfFileExists "\$INSTDIR\bin\octave-\${OCTAVE_VERSION}.exe" 0 otherver |
8708b7d07795
makeinst-script.sh: Added checking for previous installation of Octave
Anirudha Bose <ani07nov@gmail.com>
parents:
3357
diff
changeset
|
209 MessageBox MB_OK|MB_ICONSTOP "Another Octave installation (with the same version) has been detected. Please uninstall it first." |
8708b7d07795
makeinst-script.sh: Added checking for previous installation of Octave
Anirudha Bose <ani07nov@gmail.com>
parents:
3357
diff
changeset
|
210 Abort |
8708b7d07795
makeinst-script.sh: Added checking for previous installation of Octave
Anirudha Bose <ani07nov@gmail.com>
parents:
3357
diff
changeset
|
211 otherver: |
8708b7d07795
makeinst-script.sh: Added checking for previous installation of Octave
Anirudha Bose <ani07nov@gmail.com>
parents:
3357
diff
changeset
|
212 StrCpy \$0 0 |
8708b7d07795
makeinst-script.sh: Added checking for previous installation of Octave
Anirudha Bose <ani07nov@gmail.com>
parents:
3357
diff
changeset
|
213 StrCpy \$2 "" |
8708b7d07795
makeinst-script.sh: Added checking for previous installation of Octave
Anirudha Bose <ani07nov@gmail.com>
parents:
3357
diff
changeset
|
214 loop: |
8708b7d07795
makeinst-script.sh: Added checking for previous installation of Octave
Anirudha Bose <ani07nov@gmail.com>
parents:
3357
diff
changeset
|
215 EnumRegKey \$1 \${PRODUCT_ROOT_KEY} "\${PRODUCT_KEY}" \$0 |
8708b7d07795
makeinst-script.sh: Added checking for previous installation of Octave
Anirudha Bose <ani07nov@gmail.com>
parents:
3357
diff
changeset
|
216 StrCmp \$1 "" loopend |
8708b7d07795
makeinst-script.sh: Added checking for previous installation of Octave
Anirudha Bose <ani07nov@gmail.com>
parents:
3357
diff
changeset
|
217 IntOp \$0 \$0 + 1 |
8708b7d07795
makeinst-script.sh: Added checking for previous installation of Octave
Anirudha Bose <ani07nov@gmail.com>
parents:
3357
diff
changeset
|
218 StrCmp \$2 "" 0 +2 |
8708b7d07795
makeinst-script.sh: Added checking for previous installation of Octave
Anirudha Bose <ani07nov@gmail.com>
parents:
3357
diff
changeset
|
219 StrCpy \$2 "\$1" |
8708b7d07795
makeinst-script.sh: Added checking for previous installation of Octave
Anirudha Bose <ani07nov@gmail.com>
parents:
3357
diff
changeset
|
220 StrCpy \$2 "\$2, \$1" |
8708b7d07795
makeinst-script.sh: Added checking for previous installation of Octave
Anirudha Bose <ani07nov@gmail.com>
parents:
3357
diff
changeset
|
221 Goto loop |
8708b7d07795
makeinst-script.sh: Added checking for previous installation of Octave
Anirudha Bose <ani07nov@gmail.com>
parents:
3357
diff
changeset
|
222 loopend: |
8708b7d07795
makeinst-script.sh: Added checking for previous installation of Octave
Anirudha Bose <ani07nov@gmail.com>
parents:
3357
diff
changeset
|
223 ReadRegStr \$1 \${PRODUCT_ROOT_KEY} "\${PRODUCT_KEY}" "Version" |
8708b7d07795
makeinst-script.sh: Added checking for previous installation of Octave
Anirudha Bose <ani07nov@gmail.com>
parents:
3357
diff
changeset
|
224 IfErrors finalcheck |
8708b7d07795
makeinst-script.sh: Added checking for previous installation of Octave
Anirudha Bose <ani07nov@gmail.com>
parents:
3357
diff
changeset
|
225 StrCmp \$2 "" 0 +2 |
8708b7d07795
makeinst-script.sh: Added checking for previous installation of Octave
Anirudha Bose <ani07nov@gmail.com>
parents:
3357
diff
changeset
|
226 StrCpy \$2 "\$1" |
8708b7d07795
makeinst-script.sh: Added checking for previous installation of Octave
Anirudha Bose <ani07nov@gmail.com>
parents:
3357
diff
changeset
|
227 StrCpy \$2 "\$2, \$1" |
8708b7d07795
makeinst-script.sh: Added checking for previous installation of Octave
Anirudha Bose <ani07nov@gmail.com>
parents:
3357
diff
changeset
|
228 finalcheck: |
8708b7d07795
makeinst-script.sh: Added checking for previous installation of Octave
Anirudha Bose <ani07nov@gmail.com>
parents:
3357
diff
changeset
|
229 StrCmp \$2 "" done |
8708b7d07795
makeinst-script.sh: Added checking for previous installation of Octave
Anirudha Bose <ani07nov@gmail.com>
parents:
3357
diff
changeset
|
230 MessageBox MB_YESNO|MB_ICONEXCLAMATION "Another Octave installation (version \$2) has been detected. It is recommended to uninstall it if you intend to use the same installation directory. Do you want to proceed with the installation anyway?" IDYES done IDNO 0 |
8708b7d07795
makeinst-script.sh: Added checking for previous installation of Octave
Anirudha Bose <ani07nov@gmail.com>
parents:
3357
diff
changeset
|
231 Abort |
8708b7d07795
makeinst-script.sh: Added checking for previous installation of Octave
Anirudha Bose <ani07nov@gmail.com>
parents:
3357
diff
changeset
|
232 done: |
8708b7d07795
makeinst-script.sh: Added checking for previous installation of Octave
Anirudha Bose <ani07nov@gmail.com>
parents:
3357
diff
changeset
|
233 ClearErrors |
8708b7d07795
makeinst-script.sh: Added checking for previous installation of Octave
Anirudha Bose <ani07nov@gmail.com>
parents:
3357
diff
changeset
|
234 Pop \$2 |
8708b7d07795
makeinst-script.sh: Added checking for previous installation of Octave
Anirudha Bose <ani07nov@gmail.com>
parents:
3357
diff
changeset
|
235 Pop \$1 |
8708b7d07795
makeinst-script.sh: Added checking for previous installation of Octave
Anirudha Bose <ani07nov@gmail.com>
parents:
3357
diff
changeset
|
236 Pop \$0 |
8708b7d07795
makeinst-script.sh: Added checking for previous installation of Octave
Anirudha Bose <ani07nov@gmail.com>
parents:
3357
diff
changeset
|
237 FunctionEnd |
8708b7d07795
makeinst-script.sh: Added checking for previous installation of Octave
Anirudha Bose <ani07nov@gmail.com>
parents:
3357
diff
changeset
|
238 |
3357
456b6e533054
makeinst-script.sh: Added checking for Java Runtime Environment
Anirudha Bose <ani07nov@gmail.com>
parents:
3356
diff
changeset
|
239 ; Function to check Java Runtime Environment |
3358
8708b7d07795
makeinst-script.sh: Added checking for previous installation of Octave
Anirudha Bose <ani07nov@gmail.com>
parents:
3357
diff
changeset
|
240 Function CheckJRE |
3357
456b6e533054
makeinst-script.sh: Added checking for Java Runtime Environment
Anirudha Bose <ani07nov@gmail.com>
parents:
3356
diff
changeset
|
241 ; looks in: |
3359
40ae138b38a6
Removed checking of JRE locally
Anirudha Bose <ani07nov@gmail.com>
parents:
3358
diff
changeset
|
242 ; 1 - JAVA_HOME environment variable |
40ae138b38a6
Removed checking of JRE locally
Anirudha Bose <ani07nov@gmail.com>
parents:
3358
diff
changeset
|
243 ; 2 - the registry |
3357
456b6e533054
makeinst-script.sh: Added checking for Java Runtime Environment
Anirudha Bose <ani07nov@gmail.com>
parents:
3356
diff
changeset
|
244 |
456b6e533054
makeinst-script.sh: Added checking for Java Runtime Environment
Anirudha Bose <ani07nov@gmail.com>
parents:
3356
diff
changeset
|
245 Push \$R0 |
456b6e533054
makeinst-script.sh: Added checking for Java Runtime Environment
Anirudha Bose <ani07nov@gmail.com>
parents:
3356
diff
changeset
|
246 Push \$R1 |
456b6e533054
makeinst-script.sh: Added checking for Java Runtime Environment
Anirudha Bose <ani07nov@gmail.com>
parents:
3356
diff
changeset
|
247 |
456b6e533054
makeinst-script.sh: Added checking for Java Runtime Environment
Anirudha Bose <ani07nov@gmail.com>
parents:
3356
diff
changeset
|
248 ; use javaw.exe to avoid dosbox. |
456b6e533054
makeinst-script.sh: Added checking for Java Runtime Environment
Anirudha Bose <ani07nov@gmail.com>
parents:
3356
diff
changeset
|
249 ; use java.exe to keep stdout/stderr |
456b6e533054
makeinst-script.sh: Added checking for Java Runtime Environment
Anirudha Bose <ani07nov@gmail.com>
parents:
3356
diff
changeset
|
250 !define JAVAEXE "javaw.exe" |
456b6e533054
makeinst-script.sh: Added checking for Java Runtime Environment
Anirudha Bose <ani07nov@gmail.com>
parents:
3356
diff
changeset
|
251 |
456b6e533054
makeinst-script.sh: Added checking for Java Runtime Environment
Anirudha Bose <ani07nov@gmail.com>
parents:
3356
diff
changeset
|
252 ClearErrors |
456b6e533054
makeinst-script.sh: Added checking for Java Runtime Environment
Anirudha Bose <ani07nov@gmail.com>
parents:
3356
diff
changeset
|
253 ReadEnvStr \$R0 "JAVA_HOME" |
456b6e533054
makeinst-script.sh: Added checking for Java Runtime Environment
Anirudha Bose <ani07nov@gmail.com>
parents:
3356
diff
changeset
|
254 StrCpy \$R0 "\$R0\bin\\\${JAVAEXE}" |
3359
40ae138b38a6
Removed checking of JRE locally
Anirudha Bose <ani07nov@gmail.com>
parents:
3358
diff
changeset
|
255 IfErrors 0 continue ;; 1) found it in JAVA_HOME |
3357
456b6e533054
makeinst-script.sh: Added checking for Java Runtime Environment
Anirudha Bose <ani07nov@gmail.com>
parents:
3356
diff
changeset
|
256 |
456b6e533054
makeinst-script.sh: Added checking for Java Runtime Environment
Anirudha Bose <ani07nov@gmail.com>
parents:
3356
diff
changeset
|
257 ClearErrors |
456b6e533054
makeinst-script.sh: Added checking for Java Runtime Environment
Anirudha Bose <ani07nov@gmail.com>
parents:
3356
diff
changeset
|
258 ReadRegStr \$R1 HKLM "SOFTWARE\JavaSoft\Java Runtime Environment" "CurrentVersion" |
456b6e533054
makeinst-script.sh: Added checking for Java Runtime Environment
Anirudha Bose <ani07nov@gmail.com>
parents:
3356
diff
changeset
|
259 ReadRegStr \$R0 HKLM "SOFTWARE\JavaSoft\Java Runtime Environment\\\$R1" "JavaHome" |
456b6e533054
makeinst-script.sh: Added checking for Java Runtime Environment
Anirudha Bose <ani07nov@gmail.com>
parents:
3356
diff
changeset
|
260 StrCpy \$R0 "\$R0\bin\\\${JAVAEXE}" |
456b6e533054
makeinst-script.sh: Added checking for Java Runtime Environment
Anirudha Bose <ani07nov@gmail.com>
parents:
3356
diff
changeset
|
261 |
3359
40ae138b38a6
Removed checking of JRE locally
Anirudha Bose <ani07nov@gmail.com>
parents:
3358
diff
changeset
|
262 IfErrors 0 continue ;; 2) found it in the registry |
3357
456b6e533054
makeinst-script.sh: Added checking for Java Runtime Environment
Anirudha Bose <ani07nov@gmail.com>
parents:
3356
diff
changeset
|
263 IfErrors JRE_Error |
456b6e533054
makeinst-script.sh: Added checking for Java Runtime Environment
Anirudha Bose <ani07nov@gmail.com>
parents:
3356
diff
changeset
|
264 |
456b6e533054
makeinst-script.sh: Added checking for Java Runtime Environment
Anirudha Bose <ani07nov@gmail.com>
parents:
3356
diff
changeset
|
265 JRE_Error: |
456b6e533054
makeinst-script.sh: Added checking for Java Runtime Environment
Anirudha Bose <ani07nov@gmail.com>
parents:
3356
diff
changeset
|
266 MessageBox MB_ICONEXCLAMATION|MB_YESNO "Octave includes a Java integration component, but it seems Java is not available on this system. This component requires the Java Runtime Environment from Oracle (http://www.java.com) installed on your system. Octave can work without Java available, but the Java integration component will not be functional. Installing those components without Java available might prevent Octave from working correctly. Proceed with installation anyway?" IDYES continue |
456b6e533054
makeinst-script.sh: Added checking for Java Runtime Environment
Anirudha Bose <ani07nov@gmail.com>
parents:
3356
diff
changeset
|
267 Abort |
456b6e533054
makeinst-script.sh: Added checking for Java Runtime Environment
Anirudha Bose <ani07nov@gmail.com>
parents:
3356
diff
changeset
|
268 continue: |
456b6e533054
makeinst-script.sh: Added checking for Java Runtime Environment
Anirudha Bose <ani07nov@gmail.com>
parents:
3356
diff
changeset
|
269 FunctionEnd |
2992
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
270 EOF |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
271 |
4b450c162e39
Add ability to create simple NSIS installer
John Donoghue <john.donoghue@ieee.org>
parents:
diff
changeset
|
272 echo "Generation Completed" |