summaryrefslogtreecommitdiff
path: root/generate_installer.bat
diff options
context:
space:
mode:
authorAlessio Treglia <alessio@debian.org>2015-06-09 09:14:58 +0100
committerAlessio Treglia <alessio@debian.org>2015-06-09 09:14:58 +0100
commit62521dc0f7707bdec548b21fb49398f0541ee9bb (patch)
tree0105e7936ef4686b7e1b7277f96393ab8ec5e211 /generate_installer.bat
parent65b9745cb7fed21a273e0223a30c214cd0c0b051 (diff)
Imported Upstream version 0.5.2-426-gc5ad4e4~dfsg1
Diffstat (limited to 'generate_installer.bat')
-rw-r--r--generate_installer.bat194
1 files changed, 100 insertions, 94 deletions
diff --git a/generate_installer.bat b/generate_installer.bat
index ead9623..20577a6 100644
--- a/generate_installer.bat
+++ b/generate_installer.bat
@@ -1,94 +1,100 @@
-@echo off
-set OLDDIR=%CD%
-cd /d %~dp0
-REM ============================================
-echo *** Generating a Windows GPAC installer ***
-REM ============================================
-
-
-:begin
-IF "%1"=="win32" GOTO next
-IF "%1"=="x64" GOTO next
-echo You must specified target architecture : win32 or x64
-GOTO Abort
-
-:next
-echo:
-REM ============================================
-echo Check NSIS is in your PATH
-REM ============================================
-if "%PROCESSOR_ARCHITECTURE%" == "AMD64" (
- SET "PRGROOT=%programfiles(x86)%"
-)
-if "%PROCESSOR_ARCHITECTURE%" == "x86" (
- SET PRGROOT=%programfiles%
-)
-
-set NSIS_EXEC="%PRGROOT%\NSIS\makensis.exe"
-if not exist "%PRGROOT%\NSIS\makensis.exe" echo NSIS couldn't be found at default location %NSIS_EXEC%
-if not exist "%PRGROOT%\NSIS\makensis.exe" goto Abort
-echo Found NSIS at default location %NSIS_EXEC%
-
-
-echo:
-REM ============================================
-echo Retrieving version/revision information
-REM ============================================
-if not exist include/gpac/revision.h echo version couldn't be found - check include/gpac/revision.h exists
-if not exist include/gpac/revision.h goto Abort
-
-REM execute svnversion and check if the result if found within revision.h
-for /f "delims=" %%i in ('svnversion.exe') do Set VarRevisionSVN=%%i
-REM 'M', 'S', 'P', ':' are special 'svnversion' results
-for /f "delims=" %%i in ('echo %VarRevisionSVN% ^| findstr /i /r M^"') do goto RevisionAbort
-for /f "delims=" %%i in ('echo %VarRevisionSVN% ^| findstr /i /r S^"') do goto RevisionAbort
-for /f "delims=" %%i in ('echo %VarRevisionSVN% ^| findstr /i /r P^"') do goto RevisionAbort
-for /f "delims=" %%i in ('echo %VarRevisionSVN% ^| findstr /i /r :^"') do goto RevisionAbort
-for /f "delims=" %%i in ('type include\gpac\revision.h ^| findstr /i /r "%VarRevisionSVN%"') do Set VarRevisionBuild=%%i
-echo VarRevisionBuild = %VarRevisionBuild%
-echo VarRevisionSVN = %VarRevisionSVN%
-if !"%VarRevisionBuild%"==!"%VarRevisionSVN%" echo local revision and last build revision are not congruent - please consider rebuilding before generating an installer
-if !"%VarRevisionBuild%"==!"%VarRevisionSVN%" goto Abort
-REM echo version found: %VarRevisionSVN%
-
-move packagers\win32_64\nsis\default.out packagers\win32_64\nsis\default.out_
-echo Name "GPAC Framework ${GPAC_VERSION} for %1 revision %VarRevisionSVN%" > packagers\win32_64\nsis\default.out
-echo OutFile "GPAC.Framework.Setup-${GPAC_VERSION}-rev%VarRevisionSVN%-%1.exe" >> packagers\win32_64\nsis\default.out
-IF "%1"=="x64" echo !define IS_WIN64 >> packagers\win32_64\nsis\default.out
-
-echo:
-REM ============================================
-echo Executing NSIS
-REM ============================================
-call %NSIS_EXEC% packagers\win32_64\nsis\gpac_installer.nsi
-
-
-echo:
-REM ============================================
-echo Removing temporary files
-REM ============================================
-move packagers\win32_64\nsis\default.out_ packagers\win32_64\nsis\default.out
-
-
-echo:
-REM ============================================
-echo Windows GPAC installer generated - goodbye!
-REM ============================================
-REM LeaveBatchSuccess
-set VarRevisionSVN=
-set VarRevisionBuild=
-cd /d %OLDDIR%
-exit/b 0
-
-:RevisionAbort
-echo SVN revision "%VarRevisionSVN%" is not a simple number, you may have local modification (please check 'svnrevision' flags meaning or execute the NSIS script manually)
-
-:Abort
-echo:
-echo *** ABORTING: CHECK ERROR MESSAGES ABOVE ***
-
-REM LeaveBatchError
-set VarRevisionSVN=
-set VarRevisionBuild=
-cd /d %OLDDIR%
-exit/b 1
+@echo off
+set OLDDIR=%CD%
+cd /d %~dp0
+REM ============================================
+echo *** Generating a Windows GPAC installer ***
+REM ============================================
+
+
+:begin
+IF "%1"=="win32" GOTO next
+IF "%1"=="x64" GOTO next
+echo You must specified target architecture : win32 or x64
+GOTO Abort
+
+:next
+echo:
+REM ============================================
+echo Check NSIS is in your PATH
+REM ============================================
+if "%PROCESSOR_ARCHITECTURE%" == "AMD64" (
+ SET "PRGROOT=%programfiles(x86)%"
+)
+if "%PROCESSOR_ARCHITECTURE%" == "x86" (
+ SET PRGROOT=%programfiles%
+)
+
+set NSIS_EXEC="%PRGROOT%\NSIS\makensis.exe"
+if not exist "%PRGROOT%\NSIS\makensis.exe" echo NSIS couldn't be found at default location %NSIS_EXEC%
+if not exist "%PRGROOT%\NSIS\makensis.exe" goto Abort
+echo Found NSIS at default location %NSIS_EXEC%
+
+
+echo:
+REM ============================================
+echo Retrieving version/revision information
+REM ============================================
+if not exist include/gpac/revision.h echo version couldn't be found - check include/gpac/revision.h exists
+if not exist include/gpac/revision.h goto Abort
+
+REM check if found a local commit which has not been pushed
+for /f "delims=" %%a in ('git diff master..origin/master') do @set diff=%%a
+echo diff = %diff%
+if "%diff"=="" goto RevisionAbort
+
+REM execute git and check if the result if found within revision.h
+for /f "delims=" %%a in ('git describe --tags --long') do @set VERSION=%%a
+for /f "delims=" %%a in ('git describe --tags --abbrev^=0') do @set TAG=%%a-
+for /f "delims=" %%a in ('git rev-parse --abbrev-ref HEAD') do @set BRANCH=%%a
+REM remove anotated tag from VERSION
+setlocal enabledelayedexpansion
+call set VERSION=%%VERSION:!TAG!=%%
+setlocal disabledelayedexpansion
+SET VarRevisionGIT=%VERSION%-%BRANCH%
+for /f "delims=" %%i in ('type include\gpac\revision.h ^| findstr /i /r "%VarRevisionGIT%"') do Set VarRevisionBuild=%%i
+echo VarRevisionBuild = %VarRevisionBuild%
+echo VarRevisionGIT = %VarRevisionGIT%
+if !"%VarRevisionBuild%"==!"%VarRevisionGIT%" echo local revision and last build revision are not congruent - please consider rebuilding before generating an installer
+if !"%VarRevisionBuild%"==!"%VarRevisionGIT%" goto Abort
+
+move packagers\win32_64\nsis\default.out packagers\win32_64\nsis\default.out_
+echo Name "GPAC Framework ${GPAC_VERSION} for %1 revision %VarRevisionGIT%" > packagers\win32_64\nsis\default.out
+echo OutFile "gpac-${GPAC_VERSION}-rev%VarRevisionGIT%-%1.exe" >> packagers\win32_64\nsis\default.out
+IF "%1"=="x64" echo !define IS_WIN64 >> packagers\win32_64\nsis\default.out
+
+echo:
+REM ============================================
+echo Executing NSIS
+REM ============================================
+call %NSIS_EXEC% packagers\win32_64\nsis\gpac_installer.nsi
+
+
+echo:
+REM ============================================
+echo Removing temporary files
+REM ============================================
+move packagers\win32_64\nsis\default.out_ packagers\win32_64\nsis\default.out
+
+
+echo:
+REM ============================================
+echo Windows GPAC installer generated - goodbye!
+REM ============================================
+REM LeaveBatchSuccess
+set VarRevisionGIT=
+set VarRevisionBuild=
+cd /d %OLDDIR%
+exit/b 0
+
+:RevisionAbort
+echo Local revision and remote revision are not congruent; you may have local commit
+echo Please consider pushing your commit before generating an installer
+
+:Abort
+echo:
+echo *** ABORTING: CHECK ERROR MESSAGES ABOVE ***
+
+REM LeaveBatchError
+set VarRevisionBuild=
+cd /d %OLDDIR%
+exit/b 1