]>
Commit | Line | Data |
---|---|---|
1 | @echo OFF\r | |
2 | :: License: CC0\r | |
3 | ::\r | |
4 | :: TODO return an error code when not completed as expected\r | |
5 | ::\r | |
6 | echo STARTING INSTALLER PROCESS...\r | |
7 | \r | |
8 | :: For windres + strip\r | |
9 | set PATH=%PATH%;%SystemDrive%\MinGW\bin\r | |
10 | \r | |
11 | echo Create Icon\r | |
12 | pushd installer\pixmaps\r | |
13 | windres.exe viking_icon.rc -o viking_icon.o\r | |
14 | popd\r | |
15 | \r | |
16 | echo Remove debugging symbols\r | |
17 | pushd ..\src\r | |
18 | strip.exe -g viking.exe\r | |
19 | popd\r | |
20 | \r | |
21 | set MYCOPY=copy /y\r | |
22 | set DESTINATION=installer\bin\r | |
23 | echo Copying locale files into layout required by NSIS\r | |
24 | dir ..\po\*.gmo /B > gmolist.txt\r | |
25 | :: Create directories like de\LC_MESSAGES\r | |
26 | for /f %%i in (gmolist.txt) do mkdir %DESTINATION%\locale\%%~ni\LC_MESSAGES\r | |
27 | for /f %%i in (gmolist.txt) do %MYCOPY% ..\po\%%i %DESTINATION%\locale\%%~ni\LC_MESSAGES\viking.mo\r | |
28 | del gmolist.txt\r | |
29 | \r | |
30 | echo Copying Viking\r | |
31 | %MYCOPY% ..\src\viking.exe %DESTINATION%\r | |
32 | %MYCOPY% installer\pixmaps\viking_icon.ico %DESTINATION%\r | |
33 | %MYCOPY% ..\COPYING %DESTINATION%\COPYING_GPL.txt\r | |
34 | %MYCOPY% ..\AUTHORS %DESTINATION%\AUTHORS.txt\r | |
35 | %MYCOPY% ..\NEWS %DESTINATION%\NEWS.txt\r | |
36 | %MYCOPY% ..\README %DESTINATION%\README.txt\r | |
37 | :: ATM this relies on being generated by an external system\r | |
38 | %MYCOPY% cache\ChangeLog.txt %DESTINATION%\r | |
39 | :: ATM this relies on being generated by an external system\r | |
40 | %MYCOPY% ..\help\C\viking.pdf %DESTINATION%\r | |
41 | \r | |
42 | \r | |
43 | echo Copying Libraries\r | |
44 | set MINGW=C:\MinGW\r | |
45 | if not exist "%MINGW%" (\r | |
46 | echo Required %MINGW% does not exist\r | |
47 | goto Tidy\r | |
48 | )\r | |
49 | \r | |
50 | set MINGW_BIN=%MINGW%\Bin\r | |
51 | \r | |
52 | set LIBCURL=%MINGW_BIN%\libcurl.dll\r | |
53 | if exist "%LIBCURL%" (\r | |
54 | %MYCOPY% "%LIBCURL%" %DESTINATION%\r | |
55 | %MYCOPY% "%MINGW%\COPYING_curl.txt" %DESTINATION%\r | |
56 | \r | |
57 | ) else (\r | |
58 | echo %LIBCURL% does not exist\r | |
59 | goto Tidy\r | |
60 | )\r | |
61 | set LIBEXIF=%MINGW_BIN%\libexif-12.dll\r | |
62 | if exist "%LIBEXIF%" (\r | |
63 | %MYCOPY% "%LIBEXIF%" %DESTINATION%\r | |
64 | ) else (\r | |
65 | echo Required %LIBEXIF% does not exist\r | |
66 | goto Tidy\r | |
67 | )\r | |
68 | \r | |
69 | :: TODO Maybe embed http://gtk-win.sourceforge.net/home/index.php/Main/EmbeddingGTK directly in NSIS?\r | |
70 | :: Best to use the same GTK version as we built against in prepare.bat!!\r | |
71 | echo =+=+=\r | |
72 | echo Checking gtk runtime\r | |
73 | echo =+=+=\r | |
74 | set GTK_RUNTIME=gtk2-runtime-2.24.10-2012-10-10-ash.exe\r | |
75 | pushd cache\r | |
76 | if not exist %GTK_RUNTIME% (\r | |
77 | set PATH=%PATH%;%ProgramFiles%\GnuWin32\bin\r | |
78 | wget http://downloads.sourceforge.net/gtk-win/%GTK_RUNTIME%\r | |
79 | )\r | |
80 | if not exist %GTK_RUNTIME% (\r | |
81 | echo Required GTK Runtime does not exist\r | |
82 | goto Tidy\r | |
83 | )\r | |
84 | :: Install GTK into temporary location so we can repackage it\r | |
85 | :: Destination path appears to have to be an absolute kind\r | |
86 | popd\r | |
87 | cd > tmp.tmp\r | |
88 | set /p PWD=<tmp.tmp\r | |
89 | del tmp.tmp\r | |
90 | cache\%GTK_RUNTIME% /sideeffects=no /setpath=no /dllpath=root /translations=no /compatdlls=yes /S /D=%PWD%\%DESTINATION%\r | |
91 | \r | |
92 | ::\r | |
93 | echo Copying Translations\r | |
94 | %MYCOPY% installer\translations\*nsh %DESTINATION%\r | |
95 | \r | |
96 | echo Copying GPSBabel\r | |
97 | :: Install it from http://www.gpsbabel.org/download.html\r | |
98 | :: Thus GPSBabel should be here\r | |
99 | :: NB GPSBabel has standard GPL2 COPYING.txt file so don't need another copy\r | |
100 | if exist "%ProgramFiles%\GPSBabel\gpsbabel.exe" (\r | |
101 | %MYCOPY% "%ProgramFiles%\GPSBabel\gpsbabel.exe" %DESTINATION%\r | |
102 | %MYCOPY% "%ProgramFiles%\GPSBabel\libexpat.dll" %DESTINATION%\r | |
103 | ) else (\r | |
104 | echo GPSBabel missing\r | |
105 | goto Tidy\r | |
106 | )\r | |
107 | \r | |
108 | echo Running NSIS (command line version)\r | |
109 | pushd installer\r | |
110 | if exist "%ProgramFiles%\NSIS" (\r | |
111 | "%ProgramFiles%\NSIS\makensis.exe" viking-installer.nsi\r | |
112 | ) else (\r | |
113 | echo NSIS Not installed in known location\r | |
114 | )\r | |
115 | popd\r | |
116 | \r | |
117 | echo Tidy Up\r | |
118 | :Tidy\r | |
119 | rmdir /S /Q %DESTINATION%\r |