[mapguide-commits] r7550 - in trunk/Tools/JenkinsCI/home/slave_win/jobs: . FDO x64 FDO x86 MapGuide Open Source x64 MapGuide Open Source x86
svn_mapguide at osgeo.org
svn_mapguide at osgeo.org
Sun Jun 2 05:49:36 PDT 2013
Author: jng
Date: 2013-06-02 05:49:36 -0700 (Sun, 02 Jun 2013)
New Revision: 7550
Removed:
trunk/Tools/JenkinsCI/home/slave_win/jobs/MgInstantSetup/
trunk/Tools/JenkinsCI/home/slave_win/jobs/mg-desktop-net40-vc10-x86/
Modified:
trunk/Tools/JenkinsCI/home/slave_win/jobs/FDO x64/config.xml
trunk/Tools/JenkinsCI/home/slave_win/jobs/FDO x86/
trunk/Tools/JenkinsCI/home/slave_win/jobs/FDO x86/config.xml
trunk/Tools/JenkinsCI/home/slave_win/jobs/MapGuide Open Source x64/config.xml
trunk/Tools/JenkinsCI/home/slave_win/jobs/MapGuide Open Source x86/
trunk/Tools/JenkinsCI/home/slave_win/jobs/MapGuide Open Source x86/config.xml
Log:
#2210: Fix and update the MapGuide/FDO 32-bit build jobs. Remove the mg-desktop and MgInstantSetup build jobs as they have been integrated into the main MapGuide build job
Modified: trunk/Tools/JenkinsCI/home/slave_win/jobs/FDO x64/config.xml
===================================================================
--- trunk/Tools/JenkinsCI/home/slave_win/jobs/FDO x64/config.xml 2013-06-01 18:22:19 UTC (rev 7549)
+++ trunk/Tools/JenkinsCI/home/slave_win/jobs/FDO x64/config.xml 2013-06-02 12:49:36 UTC (rev 7550)
@@ -22,6 +22,11 @@
<description>FDO Version Number (major.minor.rev)</description>
<defaultValue>3.8.0</defaultValue>
</hudson.model.StringParameterDefinition>
+ <hudson.model.BooleanParameterDefinition>
+ <name>CLEAR_WORKING_AREA</name>
+ <description></description>
+ <defaultValue>true</defaultValue>
+ </hudson.model.BooleanParameterDefinition>
</parameterDefinitions>
</hudson.model.ParametersDefinitionProperty>
</properties>
@@ -57,6 +62,10 @@
REM Pre-build checks, nuke artifact dir and working area
echo [prepare]: Clean out build area and build artifacts
if exist %FDO_BUILD_OUTPUT64% rd /S /Q %FDO_BUILD_OUTPUT64%
+if "%CLEAR_WORKING_AREA%"=="false" (
+ echo [prepare]: Skip cleaning build area
+ goto build_fdo
+)
if exist %FDO_WORKING_AREA64% rd /S /Q %FDO_WORKING_AREA64%
if not exist %FDO_WORKING_AREA64% mkdir %FDO_WORKING_AREA64%
@@ -78,6 +87,7 @@
call %MG_TOOL_PATH%\fdo_enable_vcexpress64.bat %FDO_WORKING_AREA64%
if "%errorlevel%"=="1" goto error
+:build_fdo
echo [prepare]: Noting SVN revision
pushd %FDO_BUILD_SRC64%
REM If we ever do implement CI build triggers, remove this update command
@@ -130,6 +140,15 @@
exit /b 0</command>
</hudson.tasks.BatchFile>
</builders>
- <publishers/>
+ <publishers>
+ <hudson.tasks.BuildTrigger>
+ <childProjects>MapGuide Open Source x64</childProjects>
+ <threshold>
+ <name>SUCCESS</name>
+ <ordinal>0</ordinal>
+ <color>BLUE</color>
+ </threshold>
+ </hudson.tasks.BuildTrigger>
+ </publishers>
<buildWrappers/>
</project>
\ No newline at end of file
Property changes on: trunk/Tools/JenkinsCI/home/slave_win/jobs/FDO x86
___________________________________________________________________
Modified: svn:ignore
- builds
nextBuildNumber
+ builds
nextBuildNumber
lastStable
lastSuccessful
workspace
Modified: trunk/Tools/JenkinsCI/home/slave_win/jobs/FDO x86/config.xml
===================================================================
--- trunk/Tools/JenkinsCI/home/slave_win/jobs/FDO x86/config.xml 2013-06-01 18:22:19 UTC (rev 7549)
+++ trunk/Tools/JenkinsCI/home/slave_win/jobs/FDO x86/config.xml 2013-06-02 12:49:36 UTC (rev 7550)
@@ -2,7 +2,7 @@
<project>
<actions/>
<description></description>
- <logRotator>
+ <logRotator class="hudson.tasks.LogRotator">
<daysToKeep>-1</daysToKeep>
<numToKeep>1</numToKeep>
<artifactDaysToKeep>-1</artifactDaysToKeep>
@@ -13,45 +13,20 @@
<hudson.model.ParametersDefinitionProperty>
<parameterDefinitions>
<hudson.model.StringParameterDefinition>
- <name>BUILD_SRC</name>
+ <name>FDO_BUILD_SRC</name>
<description>FDO Source directory</description>
- <defaultValue>C:\fdo-3.8-x86</defaultValue>
+ <defaultValue>C:\working\sources\fdo-3.8</defaultValue>
</hudson.model.StringParameterDefinition>
<hudson.model.StringParameterDefinition>
- <name>BUILD_OUTPUT</name>
- <description>FDO build output directory</description>
- <defaultValue>C:\builds\fdo\3.8\x86_vc10</defaultValue>
- </hudson.model.StringParameterDefinition>
- <hudson.model.StringParameterDefinition>
- <name>MYSQL_SDK</name>
- <description>MySQL Connector C SDK path (x86)</description>
- <defaultValue>C:\fdo_rdbms_thirdparty\mysql</defaultValue>
- </hudson.model.StringParameterDefinition>
- <hudson.model.StringParameterDefinition>
- <name>ORACLE_SDK</name>
- <description>Oracle Instant Client SDK path (x86)</description>
- <defaultValue>C:\fdo_rdbms_thirdparty\oracle\instant_client\11.2\sdk</defaultValue>
- </hudson.model.StringParameterDefinition>
- <hudson.model.StringParameterDefinition>
<name>FDO_VERSION</name>
<description>FDO Version Number (major.minor.rev)</description>
<defaultValue>3.8.0</defaultValue>
</hudson.model.StringParameterDefinition>
- <hudson.model.StringParameterDefinition>
- <name>FDO_STAMP_FILE</name>
- <description>Path to store the last FDO svn revision</description>
- <defaultValue>C:\builds\last_fdo_x86_revision.txt</defaultValue>
- </hudson.model.StringParameterDefinition>
- <hudson.model.StringParameterDefinition>
- <name>REVNUM_FILE</name>
- <description>Path to revnum.pl script</description>
- <defaultValue>C:\builds\revnum.pl</defaultValue>
- </hudson.model.StringParameterDefinition>
- <hudson.model.StringParameterDefinition>
- <name>FDO_BIN_EXTRAS</name>
- <description>Path to FDO binaries to overlay on top of the build output</description>
- <defaultValue>C:\builds\fdo_extras_x86</defaultValue>
- </hudson.model.StringParameterDefinition>
+ <hudson.model.BooleanParameterDefinition>
+ <name>CLEAR_WORKING_AREA</name>
+ <description></description>
+ <defaultValue>true</defaultValue>
+ </hudson.model.BooleanParameterDefinition>
</parameterDefinitions>
</hudson.model.ParametersDefinitionProperty>
</properties>
@@ -66,41 +41,103 @@
<builders>
<hudson.tasks.BatchFile>
<command>@echo off
-SET FDOMYSQL=%MYSQL_SDK%
-SET FDOORACLE=%ORACLE_SDK%
-if exist %BUILD_OUTPUT% rd /S /Q %BUILD_OUTPUT%
-pushd %BUILD_SRC%
+SET FDOMYSQL=%MG_LIB_ROOT%\fdo_rdbms_thirdparty\mysql
+SET FDOORACLE=%MG_LIB_ROOT%\fdo_rdbms_thirdparty\oracle\instantclient\11.2\sdk
+SET FDO_BUILD_OUTPUT=%MG_BUILD_ARTIFACT_PATH%\fdo\%FDO_VERSION%\x86_vc10
+SET FDO_BIN_EXTRAS=%MG_LIB_ROOT%\fdo_extras\%FDO_VERSION%\x86
+SET REVNUM_FILE=%MG_TOOL_PATH%\revnum.pl
+SET FDO_STAMP_FILE=%MG_BUILD_ARTIFACT_PATH%\last_fdo_%FDO_VERSION%_revision_x86.txt
+SET FDO_WORKING_AREA=%MG_BUILD_AREA%\FDO\%FDO_VERSION%\x86
+
+echo ============ Env Vars for FDO Build =====================
+echo FDOMYSQL = %FDOMYSQL%
+echo FDOORACLE = %FDOORACLE%
+echo FDO_BUILD_OUTPUT = %FDO_BUILD_OUTPUT%
+echo FDO_BIN_EXTRAS = %FDO_BIN_EXTRAS%
+echo REVNUM_FILE = %REVNUM_FILE%
+echo FDO_STAMP_FILE = %FDO_STAMP_FILE%
+echo FDO_WORKING_AREA = %FDO_WORKING_AREA%
+echo =========================================================
+
+REM Pre-build checks, nuke artifact dir and working area
+echo [prepare]: Clean out build area and build artifacts
+if exist %FDO_BUILD_OUTPUT% rd /S /Q %FDO_BUILD_OUTPUT%
+if "%CLEAR_WORKING_AREA%"=="false" (
+ echo [prepare]: Skip cleaning build area
+ goto build_fdo
+)
+if exist %FDO_WORKING_AREA% rd /S /Q %FDO_WORKING_AREA%
+if not exist %FDO_WORKING_AREA% mkdir %FDO_WORKING_AREA%
+
+REM Need to supply --force otherwise it won't export into the dir we made
+echo [prepare]: Exporting SVN working copy to build area
+SET BUILD_ACTION=Exporting SVN working copy to build area
+svn export %FDO_BUILD_SRC% %FDO_WORKING_AREA% --force
+if "%errorlevel%"=="1" goto error
+
+REM Copy non-UAC UpdateVersion
+echo [prepare]: Copy non UAC-gimped UpdateVersion
+SET BUILD_ACTION=Copy non UAC-gimped UpdateVersion
+copy /Y %MG_TOOL_PATH%\UpdateVersion.exe %FDO_WORKING_AREA%\Thirdparty\util\UpdateVersion\bin
+if "%errorlevel%"=="1" goto error
+
+REM Prepare for Windows SDK 7.1 C++ compiler
+REM echo [prepare]: Enabling build settings for compilation with Windows 7.1 SDK C++ compiler
+REM SET BUILD_ACTION=Enabling build settings for compilation with Windows 7.1 SDK C++ compiler
+REM call %MG_TOOL_PATH%\fdo_enable_vcexpress64.bat %FDO_WORKING_AREA%
+REM if "%errorlevel%"=="1" goto error
+
+:build_fdo
+echo [prepare]: Noting SVN revision
+pushd %FDO_BUILD_SRC%
REM If we ever do implement CI build triggers, remove this update command
-svn update .
svn info . | perl %REVNUM_FILE% > revision.txt
set /p REVISION= < revision.txt
copy /Y revision.txt %FDO_STAMP_FILE%
+popd
+
+pushd %FDO_WORKING_AREA%
echo [build]: Set env vars
+REM call "%WINDOWS_SDK_71_ROOT%\Bin\SetEnv.cmd" /release /x86
call setenvironment.bat x86 VC10
+
echo [build]: build thirdparty
-call build_thirdparty.bat -p=Win32 -a=buildinstall -o=%BUILD_OUTPUT%
+SET BUILD_ACTION=Build FDO Thirdparty
+call build_thirdparty.bat -p=Win32 -a=buildinstall -o=%FDO_BUILD_OUTPUT%
+if "%errorlevel%"=="1" goto error
+
echo [build]: build core and providers
-call build.bat -p=Win32 -a=buildinstall -o=%BUILD_OUTPUT%
+SET BUILD_ACTION=Build FDO core/providers
+call build.bat -p=Win32 -a=buildinstall -o=%FDO_BUILD_OUTPUT%
+if "%errorlevel%"=="1" goto error
+
if not exist %FDO_BIN_EXTRAS% goto pack
+echo [build]: Overlaying FDO extras to build artifacts
pushd %FDO_BIN_EXTRAS%
-copy /Y *.* %BUILD_OUTPUT%\Fdo\Bin
+copy /Y *.* %FDO_BUILD_OUTPUT%\Fdo\Bin
popd
:pack
echo [build]: Pack files
-rem call createtarzipbinfiles.bat -i=%BUILD_OUTPUT%\Fdo -o=%BUILD_OUTPUT%\dist -w=fdo -b=%REVISION% -r=%FDO_VERSION%
-rem call createtarzipbinfiles.bat -i=%BUILD_OUTPUT%\Fdo -o=%BUILD_OUTPUT%\dist -w=shp -b=%REVISION% -r=%FDO_VERSION%
-rem call createtarzipbinfiles.bat -i=%BUILD_OUTPUT%\Fdo -o=%BUILD_OUTPUT%\dist -w=sdf -b=%REVISION% -r=%FDO_VERSION%
-rem call createtarzipbinfiles.bat -i=%BUILD_OUTPUT%\Fdo -o=%BUILD_OUTPUT%\dist -w=wfs -b=%REVISION% -r=%FDO_VERSION%
-rem call createtarzipbinfiles.bat -i=%BUILD_OUTPUT%\Fdo -o=%BUILD_OUTPUT%\dist -w=wms -b=%REVISION% -r=%FDO_VERSION%
-rem call createtarzipbinfiles.bat -i=%BUILD_OUTPUT%\Fdo -o=%BUILD_OUTPUT%\dist -w=rdbms -b=%REVISION% -r=%FDO_VERSION%
-rem call createtarzipbinfiles.bat -i=%BUILD_OUTPUT%\Fdo -o=%BUILD_OUTPUT%\dist -w=mysql -b=%REVISION% -r=%FDO_VERSION%
-rem call createtarzipbinfiles.bat -i=%BUILD_OUTPUT%\Fdo -o=%BUILD_OUTPUT%\dist -w=odbc -b=%REVISION% -r=%FDO_VERSION%
-rem call createtarzipbinfiles.bat -i=%BUILD_OUTPUT%\Fdo -o=%BUILD_OUTPUT%\dist -w=sqlspatial -b=%REVISION% -r=%FDO_VERSION%
-rem call createtarzipbinfiles.bat -i=%BUILD_OUTPUT%\Fdo -o=%BUILD_OUTPUT%\dist -w=gdal -b=%REVISION% -r=%FDO_VERSION%
-rem call createtarzipbinfiles.bat -i=%BUILD_OUTPUT%\Fdo -o=%BUILD_OUTPUT%\dist -w=kingoracle -b=%REVISION% -r=%FDO_VERSION%
-rem call createtarzipbinfiles.bat -i=%BUILD_OUTPUT%\Fdo -o=%BUILD_OUTPUT%\dist -w=ogr -b=%REVISION% -r=%FDO_VERSION%
-rem call createtarzipbinfiles.bat -i=%BUILD_OUTPUT%\Fdo -o=%BUILD_OUTPUT%\dist -w=sqlite -b=%REVISION% -r=%FDO_VERSION%
-popd</command>
+rem call createtarzipbinfiles.bat -i=%FDO_BUILD_OUTPUT%\Fdo -o=%FDO_BUILD_OUTPUT%\dist -w=fdo -b=%REVISION% -r=%FDO_VERSION%
+rem call createtarzipbinfiles.bat -i=%FDO_BUILD_OUTPUT%\Fdo -o=%FDO_BUILD_OUTPUT%\dist -w=shp -b=%REVISION% -r=%FDO_VERSION%
+rem call createtarzipbinfiles.bat -i=%FDO_BUILD_OUTPUT%\Fdo -o=%FDO_BUILD_OUTPUT%\dist -w=sdf -b=%REVISION% -r=%FDO_VERSION%
+rem call createtarzipbinfiles.bat -i=%FDO_BUILD_OUTPUT%\Fdo -o=%FDO_BUILD_OUTPUT%\dist -w=wfs -b=%REVISION% -r=%FDO_VERSION%
+rem call createtarzipbinfiles.bat -i=%FDO_BUILD_OUTPUT%\Fdo -o=%FDO_BUILD_OUTPUT%\dist -w=wms -b=%REVISION% -r=%FDO_VERSION%
+rem call createtarzipbinfiles.bat -i=%FDO_BUILD_OUTPUT%\Fdo -o=%FDO_BUILD_OUTPUT%\dist -w=rdbms -b=%REVISION% -r=%FDO_VERSION%
+rem call createtarzipbinfiles.bat -i=%FDO_BUILD_OUTPUT%\Fdo -o=%FDO_BUILD_OUTPUT%\dist -w=mysql -b=%REVISION% -r=%FDO_VERSION%
+rem call createtarzipbinfiles.bat -i=%FDO_BUILD_OUTPUT%\Fdo -o=%FDO_BUILD_OUTPUT%\dist -w=odbc -b=%REVISION% -r=%FDO_VERSION%
+rem call createtarzipbinfiles.bat -i=%FDO_BUILD_OUTPUT%\Fdo -o=%FDO_BUILD_OUTPUT%\dist -w=sqlspatial -b=%REVISION% -r=%FDO_VERSION%
+rem call createtarzipbinfiles.bat -i=%FDO_BUILD_OUTPUT%\Fdo -o=%FDO_BUILD_OUTPUT%\dist -w=gdal -b=%REVISION% -r=%FDO_VERSION%
+rem call createtarzipbinfiles.bat -i=%FDO_BUILD_OUTPUT%\Fdo -o=%FDO_BUILD_OUTPUT%\dist -w=kingoracle -b=%REVISION% -r=%FDO_VERSION%
+rem call createtarzipbinfiles.bat -i=%FDO_BUILD_OUTPUT%\Fdo -o=%FDO_BUILD_OUTPUT%\dist -w=ogr -b=%REVISION% -r=%FDO_VERSION%
+rem call createtarzipbinfiles.bat -i=%FDO_BUILD_OUTPUT%\Fdo -o=%FDO_BUILD_OUTPUT%\dist -w=sqlite -b=%REVISION% -r=%FDO_VERSION%
+popd
+goto end
+:error
+echo An error occurred while building FDO: %BUILD_ACTION%
+exit /b 1
+:end
+exit /b 0</command>
</hudson.tasks.BatchFile>
</builders>
<publishers>
Modified: trunk/Tools/JenkinsCI/home/slave_win/jobs/MapGuide Open Source x64/config.xml
===================================================================
--- trunk/Tools/JenkinsCI/home/slave_win/jobs/MapGuide Open Source x64/config.xml 2013-06-01 18:22:19 UTC (rev 7549)
+++ trunk/Tools/JenkinsCI/home/slave_win/jobs/MapGuide Open Source x64/config.xml 2013-06-02 12:49:36 UTC (rev 7550)
@@ -97,6 +97,8 @@
echo REVNUM_FILE64 = %REVNUM_FILE64%
echo MG_STAMP_FILE64 = %MG_STAMP_FILE64%
echo INSTANT_SETUP_SRC = %INSTANT_SETUP_SRC%
+echo JAVA_HOME = %JAVA_HOME%
+echo ANT_HOME = %ANT_HOME%
echo =======================================================================
echo [prepare]: Cleaning out build artifacts
Property changes on: trunk/Tools/JenkinsCI/home/slave_win/jobs/MapGuide Open Source x86
___________________________________________________________________
Modified: svn:ignore
- builds
nextBuildNumber
+ builds
nextBuildNumber
lastStable
lastSuccessful
workspace
Modified: trunk/Tools/JenkinsCI/home/slave_win/jobs/MapGuide Open Source x86/config.xml
===================================================================
--- trunk/Tools/JenkinsCI/home/slave_win/jobs/MapGuide Open Source x86/config.xml 2013-06-01 18:22:19 UTC (rev 7549)
+++ trunk/Tools/JenkinsCI/home/slave_win/jobs/MapGuide Open Source x86/config.xml 2013-06-02 12:49:36 UTC (rev 7550)
@@ -2,7 +2,7 @@
<project>
<actions/>
<description></description>
- <logRotator>
+ <logRotator class="hudson.tasks.LogRotator">
<daysToKeep>-1</daysToKeep>
<numToKeep>1</numToKeep>
<artifactDaysToKeep>-1</artifactDaysToKeep>
@@ -15,13 +15,48 @@
<hudson.model.StringParameterDefinition>
<name>RELEASE_LABEL</name>
<description></description>
- <defaultValue>Beta1</defaultValue>
+ <defaultValue>Final</defaultValue>
</hudson.model.StringParameterDefinition>
<hudson.model.StringParameterDefinition>
<name>WITH_ARCSDE</name>
<description></description>
- <defaultValue>no</defaultValue>
+ <defaultValue>yes</defaultValue>
</hudson.model.StringParameterDefinition>
+ <hudson.model.StringParameterDefinition>
+ <name>MG_VER_MAJOR</name>
+ <description></description>
+ <defaultValue>2</defaultValue>
+ </hudson.model.StringParameterDefinition>
+ <hudson.model.StringParameterDefinition>
+ <name>MG_VER_MINOR</name>
+ <description></description>
+ <defaultValue>5</defaultValue>
+ </hudson.model.StringParameterDefinition>
+ <hudson.model.StringParameterDefinition>
+ <name>MG_VER_BUILD</name>
+ <description></description>
+ <defaultValue>1</defaultValue>
+ </hudson.model.StringParameterDefinition>
+ <hudson.model.StringParameterDefinition>
+ <name>MG_BUILD_SRC</name>
+ <description></description>
+ <defaultValue>C:\working\sources\mg-2.5</defaultValue>
+ </hudson.model.StringParameterDefinition>
+ <hudson.model.StringParameterDefinition>
+ <name>FDO_SRC</name>
+ <description></description>
+ <defaultValue>C:\builds\fdo\3.8.0\x86_vc10\Fdo</defaultValue>
+ </hudson.model.StringParameterDefinition>
+ <hudson.model.StringParameterDefinition>
+ <name>INSTANT_SETUP_SRC</name>
+ <description></description>
+ <defaultValue>C:\working\sources\MgInstantSetup</defaultValue>
+ </hudson.model.StringParameterDefinition>
+ <hudson.model.BooleanParameterDefinition>
+ <name>CLEAR_WORKING_AREA</name>
+ <description></description>
+ <defaultValue>true</defaultValue>
+ </hudson.model.BooleanParameterDefinition>
</parameterDefinitions>
</hudson.model.ParametersDefinitionProperty>
</properties>
@@ -30,7 +65,7 @@
<disabled>false</disabled>
<blockBuildWhenDownstreamBuilding>false</blockBuildWhenDownstreamBuilding>
<blockBuildWhenUpstreamBuilding>false</blockBuildWhenUpstreamBuilding>
- <jdk>(Default)</jdk>
+ <jdk>JDK6 32-bit</jdk>
<triggers class="vector"/>
<concurrentBuild>false</concurrentBuild>
<builders>
@@ -39,73 +74,243 @@
SET VCBEXTENSION=_vs10
SET VC_COMPILER=vc100
-SET ACTIVENAMECHECK="Microsoft Visual Studio 10"
-SET ACTIVEPATHCHECK="C:\Program Files\Microsoft Visual Studio 10.0\VC"
-if exist %ACTIVEPATHCHECK% goto VSExist else exit 1
-SET ACTIVEPATHCHECK="C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC"
-if exist %ACTIVEPATHCHECK% goto VSExist else exit 1
-:VSExist
-call %ACTIVEPATHCHECK%\vcvarsall.bat x86
+call "%WINDOWS_SDK_71_ROOT%\Bin\SetEnv.cmd" /release /x86
-SET MG_VER_MAJOR=2
-SET MG_VER_MINOR=5
-SET MG_VER_BUILD=0
+REM Sigh! We can't seem to reference this from Jenkins
+SET MSBUILD_NET35=C:\Windows\Microsoft.NET\Framework\v3.5\msbuild.exe
+
SET MG_VER_MAJOR_MINOR=%MG_VER_MAJOR%.%MG_VER_MINOR%
SET MG_VER_MAJOR_MINOR_BUILD=%MG_VER_MAJOR_MINOR%.%MG_VER_BUILD%
-SET FDO_VER_MAJOR_MINOR=3.8
+SET MG_BUILD_OUTPUT_ROOT=%MG_BUILD_ARTIFACT_PATH%\mapguide
+SET MG_BUILD_OUTPUT=%MG_BUILD_OUTPUT_ROOT%\%MG_VER_MAJOR_MINOR_BUILD%\x86\release
+SET MG_BUILD_AREA=%MG_BUILD_AREA%\mapguide\%MG_VER_MAJOR_MINOR_BUILD%\x86
+SET REVNUM_FILE=%MG_TOOL_PATH%\revnum.pl
+SET MG_STAMP_FILE=%MG_BUILD_ARTIFACT_PATH%\last_mapguide_%MG_VER_MAJOR_MINOR_BUILD%_revision_x86.txt
+SET BUILD_ACTION=
-SET FDO_SRC=C:\builds\fdo\%FDO_VER_MAJOR_MINOR%\x86_vc10\Fdo
-SET BUILD_SRC=C:\mg-%MG_VER_MAJOR_MINOR%-x86
-SET CURRENT_DIR=C:\builds\
-SET BUILD_OUTPUT=C:\builds\mapguide\%MG_VER_MAJOR_MINOR%\x86\release
-SET JAVA_HOME=C:\Program Files (x86)\Java\jdk1.6.0_33
-SET ANT_HOME=C:\apache-ant-1.8.3
-SET DOXYGEN=C:\Program Files\doxygen\bin
-if exist %BUILD_OUTPUT% rd /S /Q %BUILD_OUTPUT%
-if exist "%BUILD_SRC%\Output" rd /S /Q "%BUILD_SRC%\Output"
-cd %BUILD_SRC%\MgDev\Oem\FDO
+echo =================== Env Vars for MapGuide =============================
+echo MG_VER_MAJOR_MINOR = %MG_VER_MAJOR_MINOR%
+echo MG_VER_MAJOR_MINOR_BUILD = %MG_VER_MAJOR_MINOR_BUILD%
+echo MG_BUILD_OUTPUT_ROOT = %MG_BUILD_OUTPUT_ROOT%
+echo MG_BUILD_OUTPUT = %MG_BUILD_OUTPUT%
+echo MG_BUILD_AREA = %MG_BUILD_AREA%
+echo REVNUM_FILE = %REVNUM_FILE%
+echo MG_STAMP_FILE = %MG_STAMP_FILE%
+echo INSTANT_SETUP_SRC = %INSTANT_SETUP_SRC%
+echo JAVA_HOME = %JAVA_HOME%
+echo ANT_HOME = %ANT_HOME%
+echo =======================================================================
+
+echo [prepare]: Cleaning out build artifacts
+if exist %MG_BUILD_OUTPUT% rd /S /Q %MG_BUILD_OUTPUT%
+
+if "%CLEAR_WORKING_AREA%"=="false" (
+ echo [prepare]: Skip cleaning build area
+ goto build_mapguide
+)
+
+echo [prepare]: Cleaning out SVN metadata in build area
+if exist %MG_BUILD_AREA% for /R %MG_BUILD_AREA% %%X in (.svn) do (RD /S /Q %%X 2>nul)
+echo [prepare]: Cleaning out build area
+if exist %MG_BUILD_AREA% rd /S /Q %MG_BUILD_AREA%
+echo [prepare]: Re-creating output directories
+if not exist %MG_BUILD_AREA%\Installer mkdir %MG_BUILD_AREA%\Installer
+if not exist %MG_BUILD_AREA%\MgDev mkdir %MG_BUILD_AREA%\MgDev
+if not exist %MG_BUILD_ARTIFACT_PATH%\mg-desktop mkdir %MG_BUILD_ARTIFACT_PATH%\mg-desktop
+
+echo [prepare]: Exporting SVN working copy to build area (Installer)
+SET BUILD_ACTION=Exporting SVN working copy to build area (Installer)
+svn export %MG_BUILD_SRC%\Installer %MG_BUILD_AREA%\Installer --force
+if "%errorlevel%"=="1" goto error
+
+echo [prepare]: Copying SVN working copy to build area (MgDev)
+SET BUILD_ACTION=Copying SVN working copy to build area (MgDev)
+svn export %MG_BUILD_SRC%\MgDev %MG_BUILD_AREA%\MgDev --force
+if "%errorlevel%"=="1" goto error
+
+echo [prepare]: Overlaying SVN metadata
+REM Yeah, we're basically re-copying, but this will include missing SVN metadata that export obviously leaves out
+robocopy %MG_BUILD_SRC%\MgDev\Oem\fusion_build %MG_BUILD_AREA%\MgDev\Oem\fusion_build /E /NFL /NDL /nc /ns /np /MT
+robocopy %MG_BUILD_SRC%\MgDev\Web\src\localized %MG_BUILD_AREA%\MgDev\Web\src\localized /E /NFL /NDL /nc /ns /np /MT
+robocopy %MG_BUILD_SRC%\MgDev\Web\src\mapadmin %MG_BUILD_AREA%\MgDev\Web\src\mapadmin /E /NFL /NDL /nc /ns /np /MT
+robocopy %MG_BUILD_SRC%\MgDev\UnitTest/WebTier\MapAgent\MapAgentForms %MG_BUILD_AREA%\MgDev\UnitTest/WebTier\MapAgent\MapAgentForms /E /NFL /NDL /nc /ns /np /MT
+robocopy %MG_BUILD_SRC%\MgDev\Web\src\mapviewerjava %MG_BUILD_AREA%\MgDev\Web\src\mapviewerjava /E /NFL /NDL /nc /ns /np /MT
+robocopy %MG_BUILD_SRC%\MgDev\Web\src\mapviewernet %MG_BUILD_AREA%\MgDev\Web\src\mapviewernet /E /NFL /NDL /nc /ns /np /MT
+robocopy %MG_BUILD_SRC%\MgDev\Web\src\mapviewerphp %MG_BUILD_AREA%\MgDev\Web\src\mapviewerphp /E /NFL /NDL /nc /ns /np /MT
+robocopy %MG_BUILD_SRC%\MgDev\Web\src\schemareport %MG_BUILD_AREA%\MgDev\Web\src\schemareport /E /NFL /NDL /nc /ns /np /MT
+robocopy %MG_BUILD_SRC%\MgDev\Web\src\stdicons %MG_BUILD_AREA%\MgDev\Web\src\stdicons /E /NFL /NDL /nc /ns /np /MT
+robocopy %MG_BUILD_SRC%\MgDev\Web\src\viewerfiles %MG_BUILD_AREA%\MgDev\Web\src\viewerfiles /E /NFL /NDL /nc /ns /np /MT
+robocopy %MG_BUILD_SRC%\MgDev\Doc\samples\dotnetsamples %MG_BUILD_AREA%\MgDev\Doc\samples\dotnetsamples /E /NFL /NDL /nc /ns /np /MT
+robocopy %MG_BUILD_SRC%\MgDev\Doc\samples\dotnetviewersample %MG_BUILD_AREA%\MgDev\Doc\samples\dotnetviewersample /E /NFL /NDL /nc /ns /np /MT
+robocopy %MG_BUILD_SRC%\MgDev\Doc\samples\javasamples %MG_BUILD_AREA%\MgDev\Doc\samples\javasamples /E /NFL /NDL /nc /ns /np /MT
+robocopy %MG_BUILD_SRC%\MgDev\Doc\samples\javaviewersample %MG_BUILD_AREA%\MgDev\Doc\samples\javaviewersample /E /NFL /NDL /nc /ns /np /MT
+robocopy %MG_BUILD_SRC%\MgDev\Doc\samples\phpsamples %MG_BUILD_AREA%\MgDev\Doc\samples\phpsamples /E /NFL /NDL /nc /ns /np /MT
+robocopy %MG_BUILD_SRC%\MgDev\Doc\samples\phpviewersample %MG_BUILD_AREA%\MgDev\Doc\samples\phpviewersample /E /NFL /NDL /nc /ns /np /MT
+robocopy %MG_BUILD_SRC%\MgDev\Doc\viewerapi %MG_BUILD_AREA%\MgDev\Doc\viewerapi /E /NFL /NDL /nc /ns /np /MT
+
+echo [prepare]: Setup FDO in Oem
+cd %MG_BUILD_AREA%\MgDev\Oem\FDO
xcopy /S /Y /I %FDO_SRC%\Inc Inc
xcopy /S /Y /I %FDO_SRC%\Lib Lib
xcopy /S /Y /I %FDO_SRC%\Bin Bin\Release
xcopy /S /Y /I %FDO_SRC%\Bin\com\*.* Bin\Release\com
-cd %BUILD_SRC%\MgDev\Web
-rd /S /Q bin
-rd /S /Q lib
-rd /S /Q obj
-cd %BUILD_SRC%\MgDev
-echo [build]: Updating to latest revision
-REM If we ever do implement CI build triggers, remove this update command
-svn cleanup
-svn update .
-svn info . | perl C:\builds\revnum.pl > revision.txt
-set /p REVISION= < revision.txt
-copy /Y revision.txt C:\builds\last_mg_x86_revision.txt
-cscript updateversion.vbs /major:%MG_VER_MAJOR% /minor:%MG_VER_MINOR% /point:%MG_VER_BUILD% /build:%REVISION%
-call stampassemblies.bat %MG_VER_MAJOR_MINOR_BUILD%.%REVISION%
+REM For release we don't want pdbs and .net assemblies
+cd %MG_BUILD_AREA%\MgDev\Oem\FDO\Bin\Release
+del /Q OSGeo.FDO.*
+del /Q *.pdb
+
+REM echo [prepare]: Pre-process for 64-bit compilation with Windows SDK 7.1
+REM sed -i "s/\%%MSBUILD\%% InstallerPreReq\%%VS_SLN_SUFFIX\%%.sln/REM \%%MSBUILD\%% InstallerPreReq\%%VS_SLN_SUFFIX\%%.sln/g" %MG_BUILD_AREA%\Installer\build64.bat
+REM sed -i "s/REM call build64_vce.bat/call build64_vce.bat/g" %MG_BUILD_AREA%\Installer\build64.bat
+REM echo Updated - %MG_BUILD_AREA%\Installer\build64.bat
+
+:build_mapguide
+cd %MG_BUILD_SRC%\MgDev
+echo [prepare]: Noting SVN revision
+svn info . | perl %REVNUM_FILE% > revision.txt
+set /p MG_REVISION= < revision.txt
+copy /Y revision.txt %MG_STAMP_FILE%
+
+cd %MG_BUILD_AREA%\MgDev
+echo [build]: Stamp version numbers
+SET BUILD_ACTION=Stamp version numbers
+cscript updateversion.vbs /major:%MG_VER_MAJOR% /minor:%MG_VER_MINOR% /point:%MG_VER_BUILD% /build:%MG_REVISION%
+call stampassemblies.bat %MG_VER_MAJOR_MINOR_BUILD%.%MG_REVISION%
+if "%errorlevel%"=="1" goto error
+
+REM ========================================= MapGuide ====================================================
+
+cd %MG_BUILD_AREA%\MgDev
echo [build]: Set env vars
call setenvironment.bat vc10
+
echo [build]: build oem/server/web
-call build.bat -o=%BUILD_OUTPUT%
-echo [build]: install files
-call build.bat -a=install -o=%BUILD_OUTPUT%
-cd %BUILD_SRC%\Installer
-echo [build]: Updating to latest revision
+SET BUILD_ACTION=build oem/server/web
+call build.bat -o=%MG_BUILD_OUTPUT%
+if "%errorlevel%"=="1" goto error
+
+echo [build]: install files to build artifact directory
+SET BUILD_ACTION=install files to build artifact directory
+call build.bat -a=install -o=%MG_BUILD_OUTPUT%
+if "%errorlevel%"=="1" goto error
+
+REM Move fusion-selfbuild tools out of staging area
+pushd %MG_BUILD_OUTPUT%\fusion-selfbuild
+move /Y fusion-buildtools.zip %MG_BUILD_OUTPUT_ROOT%
+popd
+pushd %MG_BUILD_OUTPUT%
+rd /S /Q fusion-selfbuild
+popd
+
+REM ========================================= mg-desktop ====================================================
+:build_mgdesktop
+REM HACK: mg-desktop batch files not aware of new output dir so set old one
+SET MG_OUTPUT=%MG_BUILD_AREA%\MgDev\Release
+pushd %MG_BUILD_AREA%\MgDev
+echo [build]: mg-desktop
+SET BUILD_ACTION=Build mg-desktop
+call build_desktop.bat x86
+if "%errorlevel%"=="1" goto error
+popd
+
+pushd %MG_BUILD_AREA%\MgDev\nuget
+echo [clean]: Nuget package temp files
+call package_clean.bat
+popd
+
+pushd %MG_BUILD_AREA%\MgDev
+echo [build]: Nuget packages
+call nuget_prepare.bat %MG_VER_MAJOR_MINOR_BUILD%.%MG_REVISION% x86
+SET BUILD_ACTION=Nuget packages
+call nuget_pack.bat x86
+if "%errorlevel%"=="1" goto error
+popd
+
+pushd %MG_BUILD_AREA%\MgDev\nuget
+echo [build]: Copy mg-desktop build artifacts (NuGet packages)
+set BUILD_ACTION=Copy mg-desktop build artifacts (NuGet packages)
+move *.nupkg %MG_BUILD_ARTIFACT_PATH%\mg-desktop
+if "%errorlevel%"=="1" goto error
+popd
+
+pushd %MG_BUILD_AREA%\MgDev\Release
+echo [build]: Copy mg-desktop build artifacts (zip dist)
+SET BUILD_ACTION=Copy mg-desktop build artifacts (zip dist)
+7z a -mx9 %MG_BUILD_ARTIFACT_PATH%\mg-desktop\mg-desktop-%MG_VER_MAJOR_MINOR_BUILD%.%MG_REVISION%-net40-vc10-x86.zip Desktop DesktopSamples
+if "%errorlevel%"=="1" goto error
+popd
+
+REM ========================================= Instant Setup =========================================================
+pushd %MG_BUILD_AREA%\Installer
+echo [build]: Prepare artifact directory
+SET BUILD_ACTION=Prepare artifact directory
+call build.bat -a=prepare -source=%MG_BUILD_OUTPUT%
+if "%errorlevel%"=="1" goto error
+popd
+
+if not exist %INSTANT_SETUP_SRC% goto checkout_instantsetup
+goto update_instantsetup
+:checkout_instantsetup
+echo [build]: svn checkout MgInstantSetup
+SET BUILD_ACTION=svn checkout MgInstantSetup
+svn co %INSTANT_SETUP_SVN_URL% %INSTANT_SETUP_SRC%
+if "%errorlevel%"=="1" goto error
+goto build_instantsetup
+
+:update_instantsetup
+REM We'll allow this to fail
+echo [build]: svn update MgInstantSetup
+pushd %INSTANT_SETUP_SRC%
svn update
-call build.bat -a=prepare -source=%BUILD_OUTPUT%
-call build.bat -a=generate -source=%BUILD_OUTPUT%
-call build.bat -source=%BUILD_OUTPUT% -version=%MG_VER_MAJOR_MINOR_BUILD%.%REVISION% -name=MapGuideOpenSource-%MG_VER_MAJOR_MINOR_BUILD%.%REVISION%-%RELEASE_LABEL%-x86 -title="MapGuide Open Source %MG_VER_MAJOR_MINOR% %RELEASE_LABEL%"
-move /Y Output\en-US\MapGuideOpenSource-%MG_VER_MAJOR_MINOR_BUILD%.%REVISION%-%RELEASE_LABEL%-x86.exe C:\builds\mapguide</command>
+popd
+
+:build_instantsetup
+echo [build]: MgInstantSetup
+pushd %INSTANT_SETUP_SRC%
+SET BUILD_ACTION=Building MgInstantSetup
+%MSBUILD_NET35% /p:Configuration=Release;Platform="Any CPU" MgInstantSetup.sln
+if "%errorlevel%"=="1" goto error
+popd
+
+:copy_instantsetup_build_artifacts
+echo [build]: Copy MgInstantSetup build artifacts
+if not exist %MG_BUILD_OUTPUT%\Setup mkdir %MG_BUILD_OUTPUT%\Setup
+pushd %INSTANT_SETUP_SRC%\InstantSetup\bin\release
+copy /Y *.exe %MG_BUILD_OUTPUT%\Setup
+copy /Y *.pdb %MG_BUILD_OUTPUT%\Setup
+copy /Y *.dll %MG_BUILD_OUTPUT%\Setup
+copy /Y *.config %MG_BUILD_OUTPUT%\Setup
+popd
+
+:zip_mginstantsetup
+pushd %MG_BUILD_OUTPUT%
+7z a %MG_BUILD_OUTPUT_ROOT%\MapGuideOpenSource-%MG_VER_MAJOR_MINOR_BUILD%.%MG_REVISION%-InstantSetup-x86.exe -mmt -mx5 -sfx7z.sfx .
+popd
+
+REM ========================================= MapGuide Installer ====================================================
+
+:build_installer
+pushd %MG_BUILD_AREA%\Installer
+echo [build]: Generate installer file listings
+SET BUILD_ACTION=Generate installer file listings
+call build.bat -a=generate -source=%MG_BUILD_OUTPUT%
+if "%errorlevel%"=="1" goto error
+
+echo [build]: Build the installer
+SET BUILD_ACTION=Build the installer
+call build.bat -source=%MG_BUILD_OUTPUT% -version=%MG_VER_MAJOR_MINOR_BUILD%.%MG_REVISION% -name=MapGuideOpenSource-%MG_VER_MAJOR_MINOR_BUILD%.%MG_REVISION%-%RELEASE_LABEL%-x86 -title="MapGuide Open Source %MG_VER_MAJOR_MINOR% %RELEASE_LABEL%"
+if "%errorlevel%"=="1" goto error
+
+move /Y Output\en-US\MapGuideOpenSource-%MG_VER_MAJOR_MINOR_BUILD%.%MG_REVISION%-%RELEASE_LABEL%-x86.exe %MG_BUILD_OUTPUT_ROOT%
+popd
+goto end
+:error
+echo An error occurred while building MapGuide: %BUILD_ACTION%
+exit /b 1
+:end
+exit /b 0</command>
</hudson.tasks.BatchFile>
</builders>
- <publishers>
- <hudson.tasks.BuildTrigger>
- <childProjects>mg-desktop-net40-vc10-x86</childProjects>
- <threshold>
- <name>SUCCESS</name>
- <ordinal>0</ordinal>
- <color>BLUE</color>
- </threshold>
- </hudson.tasks.BuildTrigger>
- </publishers>
+ <publishers/>
<buildWrappers/>
</project>
\ No newline at end of file
More information about the mapguide-commits
mailing list