2015-03-08 08:19:10 +08:00
|
|
|
|
|
|
|
IF NOT DEFINED WORKSPACE SET WORKSPACE=%~dp0
|
2017-12-23 19:21:07 +08:00
|
|
|
IF NOT DEFINED IS_NIGHTLY_BUILD SET IS_NIGHTLY_BUILD=1
|
2015-03-08 08:19:10 +08:00
|
|
|
|
2017-03-01 00:25:58 +08:00
|
|
|
IF %IS_NIGHTLY_BUILD% EQU 1 (
|
|
|
|
SET FGBUILDTYPE=Nightly
|
|
|
|
) ELSE (
|
|
|
|
SET FGBUILDTYPE=Release
|
|
|
|
)
|
|
|
|
|
2016-08-02 18:18:42 +08:00
|
|
|
REM following are for testing the script locally
|
2016-08-03 17:39:32 +08:00
|
|
|
REM SET PATH=%PATH%;%ProgramFiles%\CMake\bin;%ProgramFiles(x86)%\"Inno Setup 5"\
|
2016-08-02 18:18:42 +08:00
|
|
|
REM SET QT5SDK32=C:\Qt\5.6\msvc2015
|
|
|
|
REM SET QT5SDK64=C:\Qt\5.6\msvc2015_64
|
|
|
|
REM SET IS_NIGHTLY_BUILD=1
|
|
|
|
|
2016-08-03 17:39:32 +08:00
|
|
|
SET OSG32=%WORKSPACE%\install\msvc140\OpenSceneGraph
|
|
|
|
SET OSG64=%WORKSPACE%\install\msvc140-64\OpenSceneGraph
|
|
|
|
|
2015-03-08 08:19:10 +08:00
|
|
|
REM 32bits
|
|
|
|
md build-sg32
|
|
|
|
md build-fg32
|
|
|
|
cd build-sg32
|
2016-08-02 18:18:42 +08:00
|
|
|
cmake ..\simgear -G "Visual Studio 14" ^
|
|
|
|
-DMSVC_3RDPARTY_ROOT=%WORKSPACE%/windows-3rd-party/msvc140 ^
|
|
|
|
-DBOOST_ROOT=%WORKSPACE%/windows-3rd-party ^
|
2017-06-22 06:04:02 +08:00
|
|
|
-DOSG_FSTREAM_EXPORT_FIXED=1 ^
|
2016-08-03 17:39:32 +08:00
|
|
|
-DCMAKE_PREFIX_PATH:PATH=%OSG32% ^
|
2016-08-02 18:18:42 +08:00
|
|
|
-DCMAKE_INSTALL_PREFIX:PATH=%WORKSPACE%/install/msvc140
|
2016-12-13 19:32:33 +08:00
|
|
|
cmake --build . --config RelWithDebInfo --target INSTALL
|
2015-03-08 08:19:10 +08:00
|
|
|
|
|
|
|
cd ..\build-fg32
|
2016-08-02 18:18:42 +08:00
|
|
|
cmake ..\flightgear -G "Visual Studio 14" ^
|
|
|
|
-DMSVC_3RDPARTY_ROOT=%WORKSPACE%/windows-3rd-party/msvc140 ^
|
|
|
|
-DCMAKE_INSTALL_PREFIX:PATH=%WORKSPACE%/install/msvc140 ^
|
2016-08-03 17:39:32 +08:00
|
|
|
-DCMAKE_PREFIX_PATH:PATH=%WORKSPACE%/install/msvc140/OpenSceneGraph ^
|
2016-08-02 18:18:42 +08:00
|
|
|
-DBOOST_ROOT=%WORKSPACE%/windows-3rd-party ^
|
2017-06-22 06:04:02 +08:00
|
|
|
-DOSG_FSTREAM_EXPORT_FIXED=1 ^
|
2017-03-01 00:25:58 +08:00
|
|
|
-DCMAKE_PREFIX_PATH=%QT5SDK32%;%OSG32% ^
|
2019-05-23 19:38:02 +08:00
|
|
|
-DFG_BUILD_TYPE=%FGBUILDTYPE% ^
|
2019-05-24 16:31:51 +08:00
|
|
|
-DENABLE_SWIFT:BOOL=ON
|
2016-12-13 19:32:33 +08:00
|
|
|
cmake --build . --config RelWithDebInfo --target INSTALL
|
2015-03-08 08:19:10 +08:00
|
|
|
|
2015-03-08 19:51:15 +08:00
|
|
|
cd ..
|
2015-03-08 08:19:10 +08:00
|
|
|
|
|
|
|
REM 64 bits
|
|
|
|
md build-sg64
|
|
|
|
md build-fg64
|
2016-11-15 05:29:04 +08:00
|
|
|
|
2015-03-08 08:19:10 +08:00
|
|
|
cd build-sg64
|
2016-08-02 18:18:42 +08:00
|
|
|
cmake ..\SimGear -G "Visual Studio 14 Win64" ^
|
|
|
|
-DMSVC_3RDPARTY_ROOT=%WORKSPACE%/windows-3rd-party/msvc140 ^
|
|
|
|
-DBOOST_ROOT=%WORKSPACE%/windows-3rd-party ^
|
2017-06-22 06:04:02 +08:00
|
|
|
-DOSG_FSTREAM_EXPORT_FIXED=1 ^
|
2016-08-03 17:39:32 +08:00
|
|
|
-DCMAKE_PREFIX_PATH:PATH=%OSG64% ^
|
2016-08-02 18:18:42 +08:00
|
|
|
-DCMAKE_INSTALL_PREFIX:PATH=%WORKSPACE%/install/msvc140-64
|
2016-12-13 19:32:33 +08:00
|
|
|
cmake --build . --config RelWithDebInfo --target INSTALL
|
2015-03-08 08:19:10 +08:00
|
|
|
|
|
|
|
cd ..\build-fg64
|
2016-08-02 18:18:42 +08:00
|
|
|
cmake ..\flightgear -G "Visual Studio 14 Win64" ^
|
|
|
|
-DMSVC_3RDPARTY_ROOT=%WORKSPACE%/windows-3rd-party/msvc140 ^
|
|
|
|
-DBOOST_ROOT=%WORKSPACE%/windows-3rd-party ^
|
|
|
|
-DCMAKE_INSTALL_PREFIX:PATH=%WORKSPACE%/install/msvc140-64 ^
|
2017-03-01 00:25:58 +08:00
|
|
|
-DCMAKE_PREFIX_PATH=%QT5SDK64%;%OSG64% ^
|
2017-06-22 06:04:02 +08:00
|
|
|
-DOSG_FSTREAM_EXPORT_FIXED=1 ^
|
2019-05-23 19:38:02 +08:00
|
|
|
-DFG_BUILD_TYPE=%FGBUILDTYPE% ^
|
2019-05-24 16:31:51 +08:00
|
|
|
-DENABLE_SWIFT:BOOL=ON
|
2016-12-13 19:32:33 +08:00
|
|
|
cmake --build . --config RelWithDebInfo --target INSTALL
|
2015-03-08 08:19:10 +08:00
|
|
|
|
2015-03-08 19:43:19 +08:00
|
|
|
cd ..
|
2015-03-08 08:19:10 +08:00
|
|
|
|
2015-03-16 18:06:06 +08:00
|
|
|
REM Qt5 deployment
|
2017-12-23 16:26:30 +08:00
|
|
|
SET QMLDIR=%WORKSPACE%/flightgear/src/GUI/qml
|
|
|
|
%QT5SDK32%\bin\windeployqt --release --list target --qmldir %QMLDIR% %WORKSPACE%/install/msvc140/bin/fgfs.exe
|
|
|
|
%QT5SDK64%\bin\windeployqt --release --list target --qmldir %QMLDIR% %WORKSPACE%/install/msvc140-64/bin/fgfs.exe
|
2015-03-16 18:06:06 +08:00
|
|
|
|
2015-03-08 08:19:10 +08:00
|
|
|
REM build setup
|
|
|
|
ECHO Packaging root is %WORKSPACE%
|
|
|
|
|
|
|
|
subst X: /D
|
|
|
|
subst X: %WORKSPACE%.
|
|
|
|
|
2015-09-02 18:35:06 +08:00
|
|
|
REM ensure output dir is clean since we upload the entirety of it
|
2015-09-02 18:38:50 +08:00
|
|
|
rmdir /S /Q output
|
2015-09-02 18:35:06 +08:00
|
|
|
|
2017-04-18 15:57:35 +08:00
|
|
|
SET FGFS_PDB=src\Main\RelWithDebInfo\fgfs.pdb
|
2020-04-08 19:12:20 +08:00
|
|
|
SET SENTRY_ORG=flightgear
|
|
|
|
SET SENTRY_PROJECT=flightgear
|
|
|
|
REM ensure SENTRY_AUTH_TOKEN is set in the environment
|
2015-09-02 18:41:49 +08:00
|
|
|
|
2020-04-08 19:12:20 +08:00
|
|
|
sentry-cli upload-dif %WORKSPACE%\build-fg32\%FGFS_PDB%
|
|
|
|
sentry-cli upload-dif %WORKSPACE%\build-fg64\%FGFS_PDB%
|
2018-07-02 18:39:08 +08:00
|
|
|
|
2015-03-08 08:19:10 +08:00
|
|
|
REM indirect way to get command output into an environment variable
|
2016-08-03 17:39:32 +08:00
|
|
|
set PATH=%OSG32%\bin;%PATH%
|
2015-03-08 08:19:10 +08:00
|
|
|
osgversion --so-number > %TEMP%\osg-so-number.txt
|
|
|
|
osgversion --version-number > %TEMP%\osg-version.txt
|
|
|
|
osgversion --openthreads-soversion-number > %TEMP%\openthreads-so-number.txt
|
|
|
|
|
|
|
|
SET /P FLIGHTGEAR_VERSION=<flightgear\version
|
|
|
|
SET /P OSG_VERSION=<%TEMP%\osg-version.txt
|
|
|
|
SET /P OSG_SO_NUMBER=<%TEMP%\osg-so-number.txt
|
|
|
|
SET /P OT_SO_NUMBER=<%TEMP%\openthreads-so-number.txt
|
|
|
|
|
2015-03-14 02:13:19 +08:00
|
|
|
IF %IS_NIGHTLY_BUILD% EQU 1 (
|
|
|
|
REM FlightGear nightly: with fgdata, output filename would be "FlightGear-x.x.x-nightly-full.exe"
|
2015-03-13 21:51:49 +08:00
|
|
|
CALL :writeBaseConfig
|
|
|
|
CALL :writeNightlyFullConfig
|
2016-12-03 00:59:07 +08:00
|
|
|
iscc /Q FlightGear.iss
|
2015-03-13 21:51:49 +08:00
|
|
|
|
2015-03-14 02:13:19 +08:00
|
|
|
REM FlightGear nightly: without fgdata, output filename would be "FlightGear-x.x.x-nightly.exe"
|
2015-03-13 21:51:49 +08:00
|
|
|
CALL :writeBaseConfig
|
|
|
|
CALL :writeNightlyDietConfig
|
2016-12-03 00:59:07 +08:00
|
|
|
iscc /Q FlightGear.iss
|
2015-03-14 01:58:01 +08:00
|
|
|
) ELSE (
|
2015-03-14 02:13:19 +08:00
|
|
|
REM FlightGear release: with fgdata, output filename would be "FlightGear-x.x.x.exe"
|
2015-03-13 21:51:49 +08:00
|
|
|
CALL :writeBaseConfig
|
|
|
|
CALL :writeReleaseConfig
|
2016-12-03 00:59:07 +08:00
|
|
|
iscc /Q FlightGear.iss
|
2015-03-10 05:38:42 +08:00
|
|
|
)
|
2015-03-14 02:23:21 +08:00
|
|
|
GOTO End
|
2015-03-10 05:38:42 +08:00
|
|
|
|
2015-03-13 21:51:49 +08:00
|
|
|
:writeBaseConfig
|
2015-03-08 08:19:10 +08:00
|
|
|
ECHO #define FGVersion "%FLIGHTGEAR_VERSION%" > InstallConfig.iss
|
|
|
|
ECHO #define OSGVersion "%OSG_VERSION%" >> InstallConfig.iss
|
|
|
|
ECHO #define OSGSoNumber "%OSG_SO_NUMBER%" >> InstallConfig.iss
|
|
|
|
ECHO #define OTSoNumber "%OT_SO_NUMBER%" >> InstallConfig.iss
|
2015-03-13 21:51:49 +08:00
|
|
|
GOTO End
|
2015-03-08 08:19:10 +08:00
|
|
|
|
2015-03-13 21:51:49 +08:00
|
|
|
:writeReleaseConfig
|
|
|
|
CALL :writeBaseConfig
|
|
|
|
ECHO #define FGDetails "" >> InstallConfig.iss
|
|
|
|
ECHO #define IncludeData "TRUE" >> InstallConfig.iss
|
|
|
|
GOTO End
|
2015-03-10 05:38:42 +08:00
|
|
|
|
2015-03-13 21:51:49 +08:00
|
|
|
:writeNightlyFullConfig
|
|
|
|
CALL :writeBaseConfig
|
|
|
|
ECHO #define FGDetails "-nightly-full" >> InstallConfig.iss
|
|
|
|
ECHO #define IncludeData "TRUE" >> InstallConfig.iss
|
|
|
|
GOTO End
|
2015-03-10 05:38:42 +08:00
|
|
|
|
2015-03-13 21:51:49 +08:00
|
|
|
:writeNightlyDietConfig
|
|
|
|
CALL :writeBaseConfig
|
|
|
|
ECHO #define FGDetails "-nightly" >> InstallConfig.iss
|
2015-03-13 16:28:16 +08:00
|
|
|
ECHO #define IncludeData "FALSE" >> InstallConfig.iss
|
2015-03-13 21:51:49 +08:00
|
|
|
GOTO End
|
2015-03-10 05:38:42 +08:00
|
|
|
|
2015-03-13 21:51:49 +08:00
|
|
|
:End
|