%ZIP_INST% /S
if ERRORLEVEL 1 goto Error
)
-
+\r
echo =+=+=\r
echo Checking mingw...\r
echo =+=+=\r
set ZLIB_LZ=zlib-1.2.8-1-mingw32-dll.tar.lzma
set ZLIB_URL=%MINGW_BASE_URL%/zlib/zlib-1.2.8/%ZLIB_LZ%/download
set GETTEXT_LZ=gettext-0.18.3.1-1-mingw32-dll.tar.lzma
-set GETTEXT_URL=%MINGW_BASE_URL%/gettext/gettext-0.18.3.1-1/%GETTEXT_LZ%/download
+set GETTEXT_URL=%MINGW_BASE_URL%/gettext/gettext-0.18.3.1-1/%GETTEXT_LZ%/download\r
+\r
+set GCC-CPP_BIN_LZ=gcc-c++-4.8.1-4-mingw32-bin.tar.lzma\r
+set GCC-CPP_BIN_URL=%MINGW_BASE_URL%/gcc/Version4/gcc-4.8.1-4/%GCC-CPP_BIN_LZ%/download\r
+set GCC-CPP_DEV_LZ=gcc-c++-4.8.1-4-mingw32-dev.tar.lzma\r
+set GCC-CPP_DEV_URL=%MINGW_BASE_URL%/gcc/Version4/gcc-4.8.1-4/%GCC-CPP_DEV_LZ%/download\r
+set GCC-CPP_DLL_LZ=gcc-c++-4.8.1-4-mingw32-dll.tar.lzma\r
+set GCC-CPP_DLL_URL=%MINGW_BASE_URL%/gcc/Version4/gcc-4.8.1-4/%GCC-CPP_DLL_LZ%/download\r
\r
if not exist "%MINGW_BIN%" (\r
:: Here we download all default components manually in an attempt to get autoinstall to work...\r
call :Download "%GETTEXT_LZ%" "%GETTEXT_URL%"
call :InstallLZMA "%GETTEXT_LZ%"
+\r
+ REM Seems '+' in the filename screws things up for script function calls :(\r
+ REM call :Download "%GCC_CPP_DEV_LZ%" "%GCC_CPP_DEV_URL%"\r
+ REM call :InstallLZMA "%GCC_CPP_DEV_LZ%"\r
+\r
+ REM call :Download "%GCC_CPP_DLL_LZ%" "%GCC_CPP_DLL_URL%"\r
+ REM call :InstallLZMA "%GCC_CPP_DLL_LZ%"\r
+\r
+ REM call :Download "%GCC_CPP_BIN_LZ%" "%GCC_CPP_BIN_URL%"\r
+ REM call :InstallLZMA "%GCC_CPP_BIN_LZ%"\r
+\r
+ REM Do it every time...\r
+ wget http://sourceforge.net/projects/mingw/files/MinGW/Base/gcc/Version4/gcc-4.8.1-4/gcc-c++-4.8.1-4-mingw32-bin.tar.lzma/download\r
+ wget http://sourceforge.net/projects/mingw/files/MinGW/Base/gcc/Version4/gcc-4.8.1-4/gcc-c++-4.8.1-4-mingw32-dev.tar.lzma/download\r
+ wget http://sourceforge.net/projects/mingw/files/MinGW/Base/gcc/Version4/gcc-4.8.1-4/gcc-c++-4.8.1-4-mingw32-dll.tar.lzma/download\r
+ 7z e gcc-c++-4.8.1-4-mingw32-bin.tar.lzma\r
+ 7z e gcc-c++-4.8.1-4-mingw32-dev.tar.lzma\r
+ 7z e gcc-c++-4.8.1-4-mingw32-dll.tar.lzma\r
+ 7z x gcc-c++-4.8.1-4-mingw32-bin.tar -o"%MinGW%" -y\r
+ 7z x gcc-c++-4.8.1-4-mingw32-dev.tar -o"%MinGW%" -y\r
+ 7z x gcc-c++-4.8.1-4-mingw32-dll.tar -o"%MinGW%" -y\r
)\r
\r
echo =+=+=\r
echo =+=+=
echo Checking libcurl...\r
echo =+=+=\r
-set CURL_TAR=libcurl-7.14.0_nossl-1sid.tar\r
-set CURL_BZ2=%CURL_TAR%.bz2\r
+REM Win32 - Generic - http://curl.haxx.se/download.html
+set CURL=curl-7.34.0-devel-mingw32
+set CURL_ZIP=%CURL%.zip
if not exist "%MINGW_BIN%\libcurl.dll" (\r
- if not exist %CURL_BZ2% (\r
- wget http://downloads.sourceforge.net/devpaks/libcurl-7.14.0_nossl-1sid.DevPak?download\r
- move libcurl-7.14.0_nossl-1sid.DevPak %CURL_BZ2%\r
- )\r
+ call :Download %CURL_ZIP% http://curl.haxx.se/gknw.net/7.34.0/dist-w32/%CURL_ZIP%
echo Extracting libcurl...\r
- 7z e %CURL_BZ2%\r
- 7z x %CURL_TAR% -o"libcurl"\r
+ 7z x -y %CURL_ZIP% -o"libcurl"
if ERRORLEVEL 1 goto Error\r
@echo ON\r
- move libcurl\include "%MinGW%\include\curl\r
- copy /Y libcurl\bin\*.* "%MinGW_BIN%"\r
- copy /Y libcurl\lib\*.* "%MinGW%\lib"\r
- copy /Y libcurl\docs\*.* "%MinGW%\doc"\r
- copy /Y COPYING.txt "%MinGW%\COPYING_curl.txt"\r
+ xcopy /S /Y libcurl\%CURL%\include\*.* "%MinGW%\include"
+ xcopy /S /Y libcurl\%CURL%\bin\*.* "%MinGW_BIN%"
+ xcopy /S /Y libcurl\%CURL%\lib\*.a "%MinGW%\lib"
+ copy /Y libcurl\%CURL%\COPYING "%MinGW%\COPYING_curl.txt"
rmdir /S /Q libcurl\r
- del %CURL_TAR%\r
@echo OFF\r
)\r
\r
if ERRORLEVEL 1 goto Error
)\r
\r
+\r
+echo =+=+=\r
+echo Mapnik...\r
+echo =+=+=\r
+set MAPNIK_ZIP=mapnik-win-sdk-v2.2.0.zip\r
+set MAPNIK_URL=http://mapnik.s3.amazonaws.com/dist/v2.2.0/%MAPNIK_ZIP%\r
+if not exist "%MINGW_BIN%\mapnik.dll" (\r
+ call :Download "%MAPNIK_ZIP%" "%MAPNIK_URL%"\r
+ 7z x %MAPNIK_ZIP%\r
+ if ERRORLEVEL 1 goto Error\r
+ copy /Y mapnik-v2.2.0\include\* "%MinGW%\include"\r
+ copy /Y mapnik-v2.2.0\lib\*.lib "%MinGW%\lib\"\r
+ copy /Y mapnik-v2.2.0\lib\*.dll "%MinGW%\bin"\r
+ copy /Y mapnik-v2.2.0\lib\mapnik\input "\"\r
+ rmdir /S /Q mapnik-v2.2.0\r
+ REM Mapnik 2.2.0 seems to ship with a unicode copy which is missing ptypes.h\r
+ REM Copy headers from a known good version...\r
+ REM See fix in calling shell script when using wine\r
+)\r
+\r
::\r
:: Ideally building the code on Windows shouldn't need Doc Utils or the Help processor stuff\r
:: But ATM it's too hard to avoid.\r
rmdir /Q /S %ICONV%\r
)\r
\r
+\r
+echo =+=+=\r
+echo Checking libzip...\r
+echo =+=+=\r
+REM Originally planned to extract from an existing MINGW32 RPM,\r
+REM which worked OK to compile+link but Viking did not run up after install\r
+REM I think the dll is linked to a different gcc runtime\r
+set LIBZIP=mingw32-libzip-1.0.1-3\r
+set LIBZIP_RPM=mingw32-libzip-1.0.1-3.fc24.noarch.rpm\r
+if not exist "%MINGW_BIN%\libzip.dll" (\r
+ echo MANUALLY NEED TO ACQUIRE AND INSTALL LIBZIP\r
+ EXIT\r
+REM Instead build libzip from source\r
+REM http://www.nih.at/libzip/ - download latest source (31d625ae55b5 on 16/11/15)\r
+REM Use CMake (v3.4.0) on Windows\r
+REM wine cmd\r
+REM set CC=gcc\r
+REM set PATH=%PATH%;%SystemDrive%\Mingw\bin\r
+REM cmake -DCMAKE_C_COMPILER:FILEPATH='gcc' -G "MSYS Makefiles" .\r
+REM set PATH=%PATH%;%SystemDrive%\msys\1.0\bin\r
+REM make\r
+REM (needed to fix zipint.h to include limits.h for a successful compile)\r
+REM Copy libzip.dll.a,libzip.dll,zip.h+zipconf.h to appropraite places.\r
+)\r
+\r
:: Note GPSBabel can not be directly downloaded via wget\r
:: ATM get it manually from here:\r
:: http://www.gpsbabel.org/download.html\r
-set GPSBABEL_INST=GPSBabel-1.4.4-Setup.exe\r
-if not exist "%ProgramFiles%\GPSBabel" (\r
- echo Installing GPSBabel...\r
- if exist %GPSBABEL_INST% (\r
- %GPSBABEL_INST% /silent\r
- if ERRORLEVEL 1 goto Error\r
- ) else (
- echo Required %GPSBABEL_INST% not found. Exitting
- exit /b
- )\r
+set GPSBABEL_INST=GPSBabel-1.5.2-Setup.exe
+if not exist %GPSBABEL_INST% (
+ echo Required %GPSBABEL_INST% not found. Exitting
+ exit /b
)\r
\r
echo =+=+=\r