|
|
|
@ -1,7 +1,7 @@
|
|
|
|
|
@echo off
|
|
|
|
|
setlocal enableextensions
|
|
|
|
|
|
|
|
|
|
set "BUILD_DIR=%CD%"
|
|
|
|
|
set "_BUILDDIR_=%CD%"
|
|
|
|
|
|
|
|
|
|
:GETOPTS
|
|
|
|
|
if /I "%1" == "--help" (
|
|
|
|
@ -12,6 +12,7 @@ if /I "%1" == "--webready" set "_WEBREADY_=1"
|
|
|
|
|
if /I "%1" == "--config" set "_CONFIG_=%2"& shift
|
|
|
|
|
if /I "%1" == "--temp" set "_TEMP_=%2"& shift
|
|
|
|
|
if /I "%1" == "--generator" set "_GENERATOR_=%2"& shift
|
|
|
|
|
if /I "%1" == "--cygwin" set "_CYGWIN_=%2"& shift
|
|
|
|
|
if /I "%1" == "--exiv2" set "_EXIV2_=%2"& shift
|
|
|
|
|
if /I "%1" == "--verbose" set "_VERBOSE_=1"
|
|
|
|
|
if /I "%1" == "--dryrun" set "_DRYRUN_=1"
|
|
|
|
@ -156,49 +157,31 @@ IF ERRORLEVEL 1 (
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
rem ----
|
|
|
|
|
call:echo testing the cygwin_dir exists
|
|
|
|
|
if NOT EXIST %CYGWIN_DIR% (
|
|
|
|
|
echo "*** CYGWIN_DIR %CYGWIN_DIR% does not exist ***"
|
|
|
|
|
call:echo testing that _CYGWIN_ exists
|
|
|
|
|
if NOT EXIST %_CYGWIN_% (
|
|
|
|
|
echo "*** _CYGWIN_ %_CYGWIN_% does not exist ***"
|
|
|
|
|
GOTO error_end
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
rem ----
|
|
|
|
|
call:echo testing cygwin tools are available
|
|
|
|
|
SET 7Z_PATH=%CYGWIN_DIR%\lib\p7zip\7z.exe
|
|
|
|
|
IF NOT EXIST %CYGWIN_DIR%\lib\p7zip\7z.exe GOTO cygwin_error
|
|
|
|
|
IF NOT EXIST %CYGWIN_DIR%\bin\cp.exe GOTO cygwin_error
|
|
|
|
|
IF NOT EXIST %CYGWIN_DIR%\bin\gzip.exe GOTO cygwin_error
|
|
|
|
|
IF NOT EXIST %CYGWIN_DIR%\bin\mv.exe GOTO cygwin_error
|
|
|
|
|
IF NOT EXIST %CYGWIN_DIR%\bin\svn.exe GOTO cygwin_error
|
|
|
|
|
IF NOT EXIST %CYGWIN_DIR%\bin\tar.exe GOTO cygwin_error
|
|
|
|
|
IF NOT EXIST %CYGWIN_DIR%\bin\unzip.exe GOTO cygwin_error
|
|
|
|
|
IF NOT EXIST %CYGWIN_DIR%\bin\wget.exe GOTO cygwin_error
|
|
|
|
|
rem SET PATH=%PATH%;%CYGWIN_DIR%\bin
|
|
|
|
|
IF NOT EXIST %_CYGWIN_%\bin\cp.exe GOTO cygwin_error
|
|
|
|
|
IF NOT EXIST %_CYGWIN_%\bin\tar.exe GOTO cygwin_error
|
|
|
|
|
GOTO cygwin_ok
|
|
|
|
|
|
|
|
|
|
:cygwin_error
|
|
|
|
|
echo ERROR: Cygwin with
|
|
|
|
|
echo 7z
|
|
|
|
|
echo cp
|
|
|
|
|
echo gzip
|
|
|
|
|
echo mv
|
|
|
|
|
echo svn
|
|
|
|
|
echo tar
|
|
|
|
|
echo unzip
|
|
|
|
|
echo wget
|
|
|
|
|
echo is required
|
|
|
|
|
echo "*** Cygwin with bin/cp and bin/tar are required ***"
|
|
|
|
|
GOTO error_end
|
|
|
|
|
|
|
|
|
|
:cygwin_ok
|
|
|
|
|
pushd %CYGWIN_DIR%
|
|
|
|
|
set CYGWIN_DIR=%CD%
|
|
|
|
|
pushd %_CYGWIN_%
|
|
|
|
|
set _CYGWIN_=%CD%
|
|
|
|
|
popd
|
|
|
|
|
set %PATH=%PATH%;%CYGWIN_DIR%\bin"
|
|
|
|
|
|
|
|
|
|
rem ----
|
|
|
|
|
call:echo testing temporary directory
|
|
|
|
|
IF NOT EXIST %_TEMP_% mkdir %_TEMP_%
|
|
|
|
|
pushd "%_TEMP_%"
|
|
|
|
|
IF NOT EXIST "%_TEMP_%" mkdir "%_TEMP_%"
|
|
|
|
|
pushd "%_TEMP_%"
|
|
|
|
|
set "_TEMP_=%CD%"
|
|
|
|
|
popd
|
|
|
|
|
call:echo _TEMP_ = %_TEMP_%
|
|
|
|
@ -207,31 +190,20 @@ rem ----
|
|
|
|
|
call:echo testing INSTALL
|
|
|
|
|
SET _INSTALL_=dist
|
|
|
|
|
IF NOT EXIST %_INSTALL_% mkdir %_INSTALL_%
|
|
|
|
|
pushd %_INSTALL_%
|
|
|
|
|
set "_INSTALL_=%CD%"
|
|
|
|
|
pushd %_INSTALL_%
|
|
|
|
|
set "_INSTALL_=%CD%"
|
|
|
|
|
popd
|
|
|
|
|
call:echo _INSTALL_ = %_INSTALL_%
|
|
|
|
|
call:echo _INSTALL_ = %_INSTALL_%
|
|
|
|
|
|
|
|
|
|
if NOT DEFINED _GENERATOR_ set "_GENERATOR_=%VS_CMAKE%"
|
|
|
|
|
if /I "%_GENERATOR_%" == "NMake" set "_GENERATOR_=NMake Makefiles"
|
|
|
|
|
|
|
|
|
|
call:echo setting cmake options
|
|
|
|
|
IF DEFINED _WEBREADY_ set T=ON
|
|
|
|
|
IF NOT DEFINED _WEBREADY_ set T=OFF
|
|
|
|
|
set "_WEBREADY_=-DEXIV2_ENABLE_WEBREADY=%T%"
|
|
|
|
|
rem ----
|
|
|
|
|
echo.
|
|
|
|
|
echo config = %_CONFIG_% webready = %_WEBREADY_% _EXIV2_= %_EXIV2_%"
|
|
|
|
|
|
|
|
|
|
IF DEFINED _DRYRUN_ exit /b 1
|
|
|
|
|
|
|
|
|
|
rem ---- location of library code ---------
|
|
|
|
|
rem https://github.com/bagder/curl
|
|
|
|
|
SET CURL_COMMIT_LONG=dd39a671019d713bd077be9eed511c2dc6013598
|
|
|
|
|
|
|
|
|
|
rem http://www.npcglib.org/~stathis/blog/precompiled-openssl/
|
|
|
|
|
SET OPENSSL_VERSION=openssl-1.0.2d
|
|
|
|
|
|
|
|
|
|
echo ---------- building ZLIB ------------------
|
|
|
|
|
call:buildLib zlib-1.2.8
|
|
|
|
|
|
|
|
|
@ -240,84 +212,40 @@ set "TARGET=--target expat"
|
|
|
|
|
call:buildLib expat-2.1.0
|
|
|
|
|
set TARGET=
|
|
|
|
|
|
|
|
|
|
rem SET OPENSSL_LONG=%OPENSSL_VERSION%-%VS_OPENSSL%
|
|
|
|
|
rem IF NOT EXIST %_TEMP_%\%OPENSSL_LONG%.7z (
|
|
|
|
|
rem %CYGWIN_DIR%\bin\wget.exe -O %_TEMP_%/%OPENSSL_LONG%.7z --no-check-certificate http://www.npcglib.org/~stathis/downloads/%OPENSSL_LONG%.7z
|
|
|
|
|
rem )
|
|
|
|
|
rem IF NOT EXIST %OPENSSL_LONG% (
|
|
|
|
|
rem %CYGWIN_DIR%\lib\p7zip\7z.exe x %_TEMP_%/%OPENSSL_LONG%.7z
|
|
|
|
|
rem IF %Platform% EQU x64 (
|
|
|
|
|
rem ren %OPENSSL_LONG%\lib xxlib
|
|
|
|
|
rem ren %OPENSSL_LONG%\lib64 lib
|
|
|
|
|
rem ren %OPENSSL_LONG%\bin xxbin
|
|
|
|
|
rem ren %OPENSSL_LONG%\bin64 bin
|
|
|
|
|
rem )
|
|
|
|
|
rem )
|
|
|
|
|
rem robocopy %OPENSSL_LONG%\bin %_INSTALL_%\bin libeay32MD.dll /MIR /NJS >nul
|
|
|
|
|
rem robocopy %OPENSSL_LONG%\bin %_INSTALL_%\bin ssleay32MD.dll /MIR /NJS >nul
|
|
|
|
|
rem
|
|
|
|
|
rem
|
|
|
|
|
rem SET CURL_COMMIT=%CURL_COMMIT_LONG:~0,7%
|
|
|
|
|
rem IF NOT EXIST %_TEMP_%\curl-%CURL_COMMIT%.zip (
|
|
|
|
|
rem %CYGWIN_DIR%\bin\wget.exe -O %_TEMP_%/curl-%CURL_COMMIT%.zip --no-check-certificate http://github.com/bagder/curl/zipball/%CURL_COMMIT_LONG%
|
|
|
|
|
rem )
|
|
|
|
|
rem
|
|
|
|
|
rem IF NOT EXIST curl-%CURL_COMMIT% (
|
|
|
|
|
rem %CYGWIN_DIR%\bin\unzip.exe -q %_TEMP_%/curl-%CURL_COMMIT%.zip
|
|
|
|
|
rem %CYGWIN_DIR%\bin\mv.exe bagder-curl-* curl-%CURL_COMMIT%
|
|
|
|
|
rem )
|
|
|
|
|
rem
|
|
|
|
|
rem IF NOT EXIST curl-%CURL_COMMIT%.build (
|
|
|
|
|
rem mkdir curl-%CURL_COMMIT%.build
|
|
|
|
|
rem
|
|
|
|
|
rem pushd curl-%CURL_COMMIT%.build
|
|
|
|
|
rem cmake -G "%_GENERATOR_%" -DCMAKE_INSTALL_PREFIX=..\%_INSTALL_% -DCMAKE_PREFIX_PATH=..\%OPENSSL_LONG% -DBUILD_CURL_TESTS=OFF -DCMAKE_USE_OPENSSL=ON -DCMAKE_USE_LIBSSH2=OFF ..\curl-%CURL_COMMIT%
|
|
|
|
|
rem IF errorlevel 1 goto error_end
|
|
|
|
|
rem cmake --build . --config %_CONFIG_%
|
|
|
|
|
rem IF errorlevel 1 goto error_end
|
|
|
|
|
rem cmake --build . --config %_CONFIG_% --target install
|
|
|
|
|
rem IF errorlevel 1 goto error_end
|
|
|
|
|
rem
|
|
|
|
|
rem popd
|
|
|
|
|
rem )
|
|
|
|
|
rem
|
|
|
|
|
rem SET SSH_VERSION=0.7.2
|
|
|
|
|
rem IF NOT EXIST %_TEMP_%\libssh-%SSH_VERSION%.zip (
|
|
|
|
|
rem %CYGWIN_DIR%\bin\wget.exe -O %_TEMP_%/libssh-%SSH_VERSION%.zip --no-check-certificate https://git.libssh.org/projects/libssh.git/snapshot/libssh-%SSH_VERSION%.zip
|
|
|
|
|
rem )
|
|
|
|
|
rem IF NOT EXIST libssh-%SSH_VERSION% (
|
|
|
|
|
rem %CYGWIN_DIR%\bin\unzip.exe -q %_TEMP_%/libssh-%SSH_VERSION%.zip
|
|
|
|
|
rem )
|
|
|
|
|
rem IF NOT EXIST libssh-%SSH_VERSION%.build (
|
|
|
|
|
rem mkdir libssh-%SSH_VERSION%.build
|
|
|
|
|
rem
|
|
|
|
|
rem pushd libssh-%SSH_VERSION%.build
|
|
|
|
|
rem
|
|
|
|
|
rem cmake -G "%_GENERATOR_%" -DWITH_GSSAPI=OFF -DWITH_ZLIB=ON -DWITH_SFTP=ON -DWITH_SERVER=OFF -DWITH_EXAMPLES=OFF -DWITH_NACL=OFF -DCMAKE_PREFIX_PATH=..\%OPENSSL_LONG% -DWITH_PCAP=OFF -DCMAKE_INSTALL_PREFIX=..\%_INSTALL_% ..\libssh-%SSH_VERSION%
|
|
|
|
|
rem
|
|
|
|
|
rem IF errorlevel 1 goto error_end
|
|
|
|
|
rem cmake --build . --config %_CONFIG_%
|
|
|
|
|
rem IF errorlevel 1 goto error_end
|
|
|
|
|
rem cmake --build . --config %_CONFIG_% --target install
|
|
|
|
|
rem IF errorlevel 1 goto error_end
|
|
|
|
|
rem
|
|
|
|
|
rem popd
|
|
|
|
|
rem )
|
|
|
|
|
|
|
|
|
|
if DEFINED _WEBREADY_ (
|
|
|
|
|
echo ---------- building LIBSSH -----------------
|
|
|
|
|
set _SSH_=-DEXIV2_ENABLE_SSH=ON
|
|
|
|
|
call:buildLib libssh-0.5.5
|
|
|
|
|
if errorlevel 1 set _SSH_=-DEXIV2_ENABLE_SSH=OFF
|
|
|
|
|
|
|
|
|
|
echo ---------- building OPENSSL -----------------
|
|
|
|
|
call:buildLib openssl-1.0.1j
|
|
|
|
|
|
|
|
|
|
echo ---------- building CURL -----------------
|
|
|
|
|
set _CURL_=-DEXIV2_ENABLE_CURL=ON
|
|
|
|
|
call:buildLib curl-7.39.0
|
|
|
|
|
if errorlevel 1 set _CURL_=-DEXIV2_ENABLE_CURL=OFF
|
|
|
|
|
|
|
|
|
|
set _WEBREADY_=-DEXIV2_ENABLE_WEBREADY=ON
|
|
|
|
|
) else (
|
|
|
|
|
set _WEBREADY_=-DEXIV2_ENABLE_WEBREADY=OFF
|
|
|
|
|
set _CURL_=-DEXIV2_ENABLE_CURL=OFF
|
|
|
|
|
set _SSH_=-DEXIV2_ENABLE_SSH=OFF
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
echo ---------- building EXIV2 ------------------
|
|
|
|
|
|
|
|
|
|
set EXIV_BUILD="%_TEMP_%\exiv2"
|
|
|
|
|
|
|
|
|
|
if defined _REBUILD_ "%EXIV_BUILD%"
|
|
|
|
|
IF NOT EXIST "%EXIV_BUILD%" mkdir "%EXIV_BUILD%"
|
|
|
|
|
IF NOT EXIST "%EXIV_BUILD%" mkdir "%EXIV_BUILD%"
|
|
|
|
|
pushd "%EXIV_BUILD%"
|
|
|
|
|
call:run cmake -G "%_GENERATOR_%" ^
|
|
|
|
|
"-DCMAKE_INSTALL_PREFIX=%_INSTALL_%" "-DCMAKE_PROGRAM_PATH=%SVN_DIR%" ^
|
|
|
|
|
"%_WEBREADY_%" -DEXIV2_ENABLE_BUILD_SAMPLES=ON ^
|
|
|
|
|
-DEXIV2_ENABLE_CURL=OFF -DEXIV2_ENABLE_SSH=OFF -DEXIV2_ENABLE_NLS=OFF ^
|
|
|
|
|
-DEXIV2_ENABLE_WIN_UNICODE=OFF -DEXIV2_ENABLE_SHARED=ON ^
|
|
|
|
|
"-DCMAKE_LIBRARY_PATH=%INSTALL_PATH%\lib" "-DCMAKE_INCLUDE_PATH=%INSTALL_PATH%\include" ^
|
|
|
|
|
-DEXIV2_ENABLE_NLS=OFF -DEXIV2_ENABLE_BUILD_SAMPLES=ON ^
|
|
|
|
|
-DEXIV2_ENABLE_WIN_UNICODE=OFF -DEXIV2_ENABLE_SHARED=ON ^
|
|
|
|
|
%_WEBREADY_% %_CURL_% %_SSH_% ^
|
|
|
|
|
"%_EXIV2_%"
|
|
|
|
|
|
|
|
|
|
IF errorlevel 1 (
|
|
|
|
@ -379,7 +307,7 @@ exit /b %ERRORLEVEL%
|
|
|
|
|
|
|
|
|
|
rem -------------------------------------------------------------
|
|
|
|
|
:buildLib
|
|
|
|
|
cd "%BUILD_DIR%"
|
|
|
|
|
cd "%_BUILDDIR_%"
|
|
|
|
|
|
|
|
|
|
set LIB=%1%
|
|
|
|
|
set LIB_T=%LIB%.tar
|
|
|
|
@ -392,7 +320,7 @@ IF NOT EXIST "%LIB_Z%" (
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
if defined _REBUILD_ rmdir/s/q "%LIB%"
|
|
|
|
|
IF NOT EXIST "%LIB%" "%CYGWIN_DIR%\bin\tar.exe" xzf "%LIB_Z%"
|
|
|
|
|
IF NOT EXIST "%LIB%" "%_CYGWIN_%\bin\tar.exe" xzf "%LIB_Z%"
|
|
|
|
|
|
|
|
|
|
if defined _REBUILD_ rmdir/s/q "%LIB_B%"
|
|
|
|
|
IF NOT EXIST %LIB_B% mkdir "%LIB_B%"
|
|
|
|
@ -424,3 +352,5 @@ IF NOT EXIST %LIB_B% mkdir "%LIB_B%"
|
|
|
|
|
|
|
|
|
|
exit /b 0
|
|
|
|
|
|
|
|
|
|
rem That's all Folks!
|
|
|
|
|
rem -------------------------------------------------------------
|
|
|
|
|