From 4eb511c33d78d8ff1b8d1084f64f86fe60c5fdc2 Mon Sep 17 00:00:00 2001 From: ThorstenB Date: Sat, 23 Jun 2012 14:28:42 +0200 Subject: [PATCH 01/44] Prepare 2.8.0 branch. fg/sg submodules still tracking "next" (until sg/fg are branched, too). --- flightgear | 2 +- hudson_win_build32.bat | 2 +- hudson_win_build64.bat | 2 +- simgear | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/flightgear b/flightgear index 7e2aaf0..1c83a15 160000 --- a/flightgear +++ b/flightgear @@ -1 +1 @@ -Subproject commit 7e2aaf061ee53b3b9a5cd840555b2deeecd1bd45 +Subproject commit 1c83a151100931405f9bb923718396d82cdd9cfb diff --git a/hudson_win_build32.bat b/hudson_win_build32.bat index 57e50fe..8b67722 100644 --- a/hudson_win_build32.bat +++ b/hudson_win_build32.bat @@ -1,7 +1,7 @@ IF NOT DEFINED WORKSPACE SET WORKSPACE=%~dp0 -ECHO #define SIMGEAR_VERSION "2.6.0" > %WORKSPACE%\simgear\simgear\version.h +ECHO #define SIMGEAR_VERSION "2.8.0" > %WORKSPACE%\simgear\simgear\version.h rem set PATH=%PATH%;D:\Program Files (x86)\CMake 2.8\bin rem call "C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\Tools\vsvars32.bat" md build-sg diff --git a/hudson_win_build64.bat b/hudson_win_build64.bat index ba12920..4f66644 100644 --- a/hudson_win_build64.bat +++ b/hudson_win_build64.bat @@ -1,7 +1,7 @@ IF NOT DEFINED WORKSPACE SET WORKSPACE=%~dp0 -ECHO #define SIMGEAR_VERSION "2.6.0" > %WORKSPACE%\simgear\simgear\version.h +ECHO #define SIMGEAR_VERSION "2.8.0" > %WORKSPACE%\simgear\simgear\version.h rem set PATH=%PATH%;D:\Program Files (x86)\CMake 2.8\bin rem call "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\vcvarsall.bat" amd64 md build-sg64 diff --git a/simgear b/simgear index cfda390..ad4a9ee 160000 --- a/simgear +++ b/simgear @@ -1 +1 @@ -Subproject commit cfda390557f506c051bfae0cb36b206e59961481 +Subproject commit ad4a9eeaa5c6a33b4f192bd0fab043bef930152f From 1ff0264a57109237a97a11d6b9691fd65cc035cd Mon Sep 17 00:00:00 2001 From: James Turner Date: Mon, 25 Jun 2012 14:14:58 +0100 Subject: [PATCH 02/44] Updated Mac release build script. Capture most of the build logic in a script (ie. visible to Git, and outside Jenkins). use XCodebuild to run the actual compiles, so we get Clang. Use the Xcode 4.3 SDK paths. --- hudson_mac_build_launcher.sh | 15 -------- hudson_mac_build_release.sh | 66 ++++++++++++++++++++++++++++++++++++ 2 files changed, 66 insertions(+), 15 deletions(-) delete mode 100755 hudson_mac_build_launcher.sh create mode 100755 hudson_mac_build_release.sh diff --git a/hudson_mac_build_launcher.sh b/hudson_mac_build_launcher.sh deleted file mode 100755 index dc3bd24..0000000 --- a/hudson_mac_build_launcher.sh +++ /dev/null @@ -1,15 +0,0 @@ -#!/bin/sh - -SDK_PATH="/Developer/SDKs/MacOSX10.6.sdk" -OSX_TARGET="10.6" - -svn co https://macflightgear.svn.sourceforge.net/svnroot/macflightgear/trunk/FlightGearOSX macflightgear - -pushd macflightgear - -# compile the stub executable -gcc -o FlightGear -mmacosx-version-min=$OSX_TARGET -isysroot $SDK_PATH -arch i386 main.m \ - -framework Cocoa -framework RubyCocoa -framework Foundation -framework AppKit - -popd - diff --git a/hudson_mac_build_release.sh b/hudson_mac_build_release.sh new file mode 100755 index 0000000..f2ed207 --- /dev/null +++ b/hudson_mac_build_release.sh @@ -0,0 +1,66 @@ +#!/bin/sh + +if [ "$WORKSPACE" == "" ]; then + echo "ERROR: Missing WORKSPACE environment variable." + exit 1 +fi + +############################################################################### +# remove old and create fresh build directories +rm -rf sgBuild +rm -rf fgBuild +mkdir -p sgBuild +mkdir -p fgBuild +mkdir -p output +rm -rf output/* +rm -rf $WORKSPACE/dist/include/simgear $WORKSPACE/dist/libSim* $WORKSPACE/dist/libsg*.a + +############################################################################### +echo "Starting on SimGear" +pushd sgBuild +cmake -DCMAKE_INSTALL_PREFIX:PATH=$WORKSPACE/dist -G Xcode -DSIMGEAR_SHARED:BOOL="ON" ../simgear + +# compile +xcodebuild -configuration Release -target install build + +if [ $? -ne '0' ]; then + echo "make simgear failed" + exit 1 +fi + +popd + +################################################################################ +echo "Starting on FlightGear" +pushd fgBuild +cmake -DCMAKE_INSTALL_PREFIX:PATH=$WORKSPACE/dist -G Xcode -DSIMGEAR_SHARED:BOOL="ON" ../flightgear + +xcodebuild -configuration Release -target install build + +if [ $? -ne '0' ]; then + echo "make flightgear failed" + exit 1 +fi + +popd + +chmod +x $WORKSPACE/dist/bin/osgversion + +################################################################################ +echo "Building Macflightgear launcher" + +SDK_PATH="/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.6.sdk" +OSX_TARGET="10.6" + +svn co https://macflightgear.svn.sourceforge.net/svnroot/macflightgear/trunk/FlightGearOSX macflightgear + +pushd macflightgear + +# compile the stub executable +gcc -o FlightGear -mmacosx-version-min=$OSX_TARGET -isysroot $SDK_PATH -arch i386 main.m \ + -framework Cocoa -framework RubyCocoa -framework Foundation -framework AppKit + +popd + +echo "Running package script" +./hudson_mac_package_release.rb From 4c54c5feb6927ca280d64b7b721a9d47b523ae13 Mon Sep 17 00:00:00 2001 From: James Turner Date: Tue, 26 Jun 2012 09:17:42 +0100 Subject: [PATCH 03/44] Skip missing OSG plugins silently in Mac packaging --- hudson_mac_package_release.rb | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/hudson_mac_package_release.rb b/hudson_mac_package_release.rb index d1cfb24..b572327 100755 --- a/hudson_mac_package_release.rb +++ b/hudson_mac_package_release.rb @@ -1,6 +1,8 @@ #!/usr/bin/ruby require 'ERB' +require 'fileutils' #I know, no underscore is not ruby-like +include FileUtils $osgLibs = ['osgFX', 'osgParticle', 'osg', 'osgGA', 'osgText', 'osgUtil', 'osgSim', 'osgViewer', 'osgDB'] $osgPlugins = ['ac', 'osg', 'freetype', 'qt', 'imageio', 'rgb', 'txf', 'mdl', '3ds'] @@ -84,8 +86,11 @@ libFile = "libOpenThreads.#{$openThreadsSoVersion}.dylib" $osgPlugins.each do |p| pluginFile = "osgdb_#{p}.so" - `cp #{prefixDir}/lib/osgPlugins-#{osgVersion}/#{pluginFile} #{osgPluginsDir}` - fix_install_names("#{osgPluginsDir}/#{pluginFile}") + sourcePath = "#{prefixDir}/lib/osgPlugins-#{osgVersion}/#{pluginFile}" + if File.exists?(sourcePath) + `cp #{sourcePath} #{osgPluginsDir}` + fix_install_names("#{osgPluginsDir}/#{pluginFile}") + end end # custom ALUT From 561b22144876559282f12ff21c780b3d12c73753 Mon Sep 17 00:00:00 2001 From: James Turner Date: Tue, 26 Jun 2012 10:22:32 +0100 Subject: [PATCH 04/44] Mac release builds should use static SimGear --- hudson_mac_build_release.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/hudson_mac_build_release.sh b/hudson_mac_build_release.sh index f2ed207..4808344 100755 --- a/hudson_mac_build_release.sh +++ b/hudson_mac_build_release.sh @@ -18,7 +18,7 @@ rm -rf $WORKSPACE/dist/include/simgear $WORKSPACE/dist/libSim* $WORKSPACE/dist/l ############################################################################### echo "Starting on SimGear" pushd sgBuild -cmake -DCMAKE_INSTALL_PREFIX:PATH=$WORKSPACE/dist -G Xcode -DSIMGEAR_SHARED:BOOL="ON" ../simgear +cmake -DCMAKE_INSTALL_PREFIX:PATH=$WORKSPACE/dist -G Xcode ../simgear # compile xcodebuild -configuration Release -target install build @@ -33,7 +33,7 @@ popd ################################################################################ echo "Starting on FlightGear" pushd fgBuild -cmake -DCMAKE_INSTALL_PREFIX:PATH=$WORKSPACE/dist -G Xcode -DSIMGEAR_SHARED:BOOL="ON" ../flightgear +cmake -DCMAKE_INSTALL_PREFIX:PATH=$WORKSPACE/dist -G Xcode ../flightgear xcodebuild -configuration Release -target install build From 57cafd62e15438ce981161b666375ce2d13808fe Mon Sep 17 00:00:00 2001 From: James Turner Date: Tue, 26 Jun 2012 10:22:46 +0100 Subject: [PATCH 05/44] Fix DMG output path, oops. --- hudson_mac_package_release.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hudson_mac_package_release.rb b/hudson_mac_package_release.rb index b572327..3f41408 100755 --- a/hudson_mac_package_release.rb +++ b/hudson_mac_package_release.rb @@ -58,7 +58,7 @@ osgPluginsDir=contents+"/PlugIns/osgPlugins-#{osgVersion}" fgVersion = File.read("#{srcDir}/version").strip volName="\"FlightGear #{fgVersion}\"" -dmgPath = Dir.pwd + "/fg_mac_#{fgVersion}.dmg" +dmgPath = Dir.pwd + "/output/fg_mac_#{fgVersion}.dmg" puts "Creating directory structure" `mkdir -p #{macosDir}` From 35bc589a0423c0c50847e05c6f7e2b3d044af444 Mon Sep 17 00:00:00 2001 From: James Turner Date: Tue, 26 Jun 2012 10:23:40 +0100 Subject: [PATCH 06/44] Git-ignore updates for Mac build --- .gitignore | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index 930f8e0..e5f3491 100644 --- a/.gitignore +++ b/.gitignore @@ -8,3 +8,5 @@ Output output fgBuild sgBuild +image +macflightgear From 9c0ccec847fe2944927e05cb939a019aa507a9ed Mon Sep 17 00:00:00 2001 From: James Turner Date: Tue, 26 Jun 2012 15:21:51 +0100 Subject: [PATCH 07/44] Bump 2.8 fg+sg commits (still on next) Checking that Mac release build increments ok. --- flightgear | 2 +- simgear | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/flightgear b/flightgear index 1c83a15..20071b6 160000 --- a/flightgear +++ b/flightgear @@ -1 +1 @@ -Subproject commit 1c83a151100931405f9bb923718396d82cdd9cfb +Subproject commit 20071b66afd467bc87acea2e2c42cff90757f743 diff --git a/simgear b/simgear index ad4a9ee..2c54237 160000 --- a/simgear +++ b/simgear @@ -1 +1 @@ -Subproject commit ad4a9eeaa5c6a33b4f192bd0fab043bef930152f +Subproject commit 2c54237fe5071d3f2e8a3bf22d0000c7bc485591 From 7ef17cc4b29e4b587dd54801018642eb0f05a00e Mon Sep 17 00:00:00 2001 From: ThorstenB Date: Tue, 26 Jun 2012 23:24:51 +0200 Subject: [PATCH 08/44] Bump to 2.8.0 head --- flightgear | 2 +- simgear | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/flightgear b/flightgear index 20071b6..af53a2e 160000 --- a/flightgear +++ b/flightgear @@ -1 +1 @@ -Subproject commit 20071b66afd467bc87acea2e2c42cff90757f743 +Subproject commit af53a2eaf8038f6e1e530bf8183fa15a072d0b50 diff --git a/simgear b/simgear index 2c54237..3fa835d 160000 --- a/simgear +++ b/simgear @@ -1 +1 @@ -Subproject commit 2c54237fe5071d3f2e8a3bf22d0000c7bc485591 +Subproject commit 3fa835d74cbce1ba1ef862ac1fc9397c59709a20 From 72d2bb90444ca91019283a1e29c0b18aa61c7760 Mon Sep 17 00:00:00 2001 From: ThorstenB Date: Wed, 4 Jul 2012 22:26:39 +0200 Subject: [PATCH 09/44] Bump 2.8.0 release head. --- flightgear | 2 +- simgear | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/flightgear b/flightgear index af53a2e..0934ba8 160000 --- a/flightgear +++ b/flightgear @@ -1 +1 @@ -Subproject commit af53a2eaf8038f6e1e530bf8183fa15a072d0b50 +Subproject commit 0934ba859f981ba2426bf2bf76f83ed9108ef779 diff --git a/simgear b/simgear index 3fa835d..4838a96 160000 --- a/simgear +++ b/simgear @@ -1 +1 @@ -Subproject commit 3fa835d74cbce1ba1ef862ac1fc9397c59709a20 +Subproject commit 4838a9690e1a9492db6741f4950976b63868200d From 26e6b859a5e133c09a5e054e889770e8a7d3f84e Mon Sep 17 00:00:00 2001 From: Frederic Bouvier Date: Fri, 13 Jul 2012 16:11:47 +0200 Subject: [PATCH 10/44] Bump to latest next --- flightgear | 2 +- simgear | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/flightgear b/flightgear index 0934ba8..26aeb84 160000 --- a/flightgear +++ b/flightgear @@ -1 +1 @@ -Subproject commit 0934ba859f981ba2426bf2bf76f83ed9108ef779 +Subproject commit 26aeb8439926403972e0d24995ba36d09f821f07 diff --git a/simgear b/simgear index 4838a96..00e21af 160000 --- a/simgear +++ b/simgear @@ -1 +1 @@ -Subproject commit 4838a9690e1a9492db6741f4950976b63868200d +Subproject commit 00e21af5bb9f38eccb6e421b3afc00df58924942 From 868f7df661448942bc4cf3ab22bf51b82da74979 Mon Sep 17 00:00:00 2001 From: Frederic Bouvier Date: Fri, 13 Jul 2012 18:59:26 +0200 Subject: [PATCH 11/44] Bump --- simgear | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/simgear b/simgear index 00e21af..ddfdbd7 160000 --- a/simgear +++ b/simgear @@ -1 +1 @@ -Subproject commit 00e21af5bb9f38eccb6e421b3afc00df58924942 +Subproject commit ddfdbd75b87b62b831e899821795c2f735c0dbda From eebf4dbcafc89c8709ffae52dc23ed46cb270b28 Mon Sep 17 00:00:00 2001 From: Frederic Bouvier Date: Sat, 14 Jul 2012 14:24:25 +0200 Subject: [PATCH 12/44] Bump --- flightgear | 2 +- simgear | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/flightgear b/flightgear index 26aeb84..c1137f3 160000 --- a/flightgear +++ b/flightgear @@ -1 +1 @@ -Subproject commit 26aeb8439926403972e0d24995ba36d09f821f07 +Subproject commit c1137f371d1bc7c36ca6ba77420e63a96b443bb8 diff --git a/simgear b/simgear index ddfdbd7..e6ab3dd 160000 --- a/simgear +++ b/simgear @@ -1 +1 @@ -Subproject commit ddfdbd75b87b62b831e899821795c2f735c0dbda +Subproject commit e6ab3ddb7d263d340c03a826feb2de1a1c75e47a From a3c2a9424a9125c411f0cfa3febeed1d7f301469 Mon Sep 17 00:00:00 2001 From: ThorstenB Date: Tue, 17 Jul 2012 19:01:58 +0200 Subject: [PATCH 13/44] Switch fgmeta's existing 2.8.0 branch to now track new sg/fg 2.8.0 branches --- flightgear | 2 +- simgear | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/flightgear b/flightgear index c1137f3..9db625a 160000 --- a/flightgear +++ b/flightgear @@ -1 +1 @@ -Subproject commit c1137f371d1bc7c36ca6ba77420e63a96b443bb8 +Subproject commit 9db625af7977a91483a6fb35bd7cc1c034b8bda3 diff --git a/simgear b/simgear index e6ab3dd..3ba3121 160000 --- a/simgear +++ b/simgear @@ -1 +1 @@ -Subproject commit e6ab3ddb7d263d340c03a826feb2de1a1c75e47a +Subproject commit 3ba312116b0c602733e5f62b52870e9d3e2677cf From 3d99ef3ea24c9567077295611d581a5978688e54 Mon Sep 17 00:00:00 2001 From: ThorstenB Date: Fri, 20 Jul 2012 00:25:52 +0200 Subject: [PATCH 14/44] knock knock: 2.8.0 fg head --- flightgear | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flightgear b/flightgear index 9db625a..8f5d858 160000 --- a/flightgear +++ b/flightgear @@ -1 +1 @@ -Subproject commit 9db625af7977a91483a6fb35bd7cc1c034b8bda3 +Subproject commit 8f5d8580b69d71313271a9fbac46e2cd8e830a99 From 5a31e3133f5432935f73aba1cea0d103c8e62594 Mon Sep 17 00:00:00 2001 From: Frederic Bouvier Date: Fri, 20 Jul 2012 00:39:31 +0200 Subject: [PATCH 15/44] Give FG version to fgrun to control what path should be set and overwrite a previous installation in the preference file --- FlightGear.iss | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/FlightGear.iss b/FlightGear.iss index 09f3c55..962d68c 100755 --- a/FlightGear.iss +++ b/FlightGear.iss @@ -46,7 +46,7 @@ DefaultDirName={pf}\FlightGear DefaultGroupName=FlightGear {#FGVersion} LicenseFile=X:\flightgear\COPYING Uninstallable=yes -SetupIconFile=X:\flightgear\projects\VC90\flightgear.ico +SetupIconFile=X:\flightgear\package\flightgear.ico VersionInfoVersion={#FGVersion}.0 WizardImageFile=X:\flightgear\package\Win32-Inno\setupimg.bmp WizardImageStretch=No @@ -211,8 +211,8 @@ filename: "{app}\bin\Win64\vcredist_x64.exe"; WorkingDir: "{app}\bin\Win64"; Par filename: "{app}\bin\Win32\oalinst.exe"; WorkingDir: "{app}\bin\Win32"; Description: "Installing OpenAL"; Check: IsTaskSelected('insoal') and FileExists(ExpandConstant('{app}\bin\Win32\oalinst.exe')) ; Put installation directory into the fgrun.prefs -filename: "{app}\bin\Win32\fgrun.exe"; WorkingDir: "{app}\bin\Win32"; Parameters: "--silent ""--fg-exe={app}\bin\Win32\fgfs.exe"" ""--ts-exe={app}\bin\Win32\terrasync.exe"" ""--fg-root={app}\data"" ""--fg-scenery={app}\data\Scenery;{app}\scenery;{code:TerrasyncDir}"" --ts-dir=3"; Check: not Is64BitInstallMode or IsTaskSelected('force32') -filename: "{app}\bin\Win64\fgrun.exe"; WorkingDir: "{app}\bin\Win64"; Parameters: "--silent ""--fg-exe={app}\bin\Win64\fgfs.exe"" ""--ts-exe={app}\bin\Win32\terrasync.exe"" ""--fg-root={app}\data"" ""--fg-scenery={app}\data\Scenery;{app}\scenery;{code:TerrasyncDir}"" --ts-dir=3"; Check: Is64BitInstallMode and not IsTaskSelected('force32') +filename: "{app}\bin\Win32\fgrun.exe"; WorkingDir: "{app}\bin\Win32"; Parameters: "--silent ""--fg-exe={app}\bin\Win32\fgfs.exe"" ""--ts-exe={app}\bin\Win32\terrasync.exe"" ""--fg-root={app}\data"" ""--fg-scenery={app}\data\Scenery;{app}\scenery;{code:TerrasyncDir}"" --ts-dir=3 --version={#FGVersion}"; Check: not Is64BitInstallMode or IsTaskSelected('force32') +filename: "{app}\bin\Win64\fgrun.exe"; WorkingDir: "{app}\bin\Win64"; Parameters: "--silent ""--fg-exe={app}\bin\Win64\fgfs.exe"" ""--ts-exe={app}\bin\Win32\terrasync.exe"" ""--fg-root={app}\data"" ""--fg-scenery={app}\data\Scenery;{app}\scenery;{code:TerrasyncDir}"" --ts-dir=3 --version={#FGVersion}"; Check: Is64BitInstallMode and not IsTaskSelected('force32') ; Put installation and source directories into the fgadmin.prefs filename: "{app}\bin\Win32\fgadmin.exe"; WorkingDir: "{app}\bin\Win32"; Parameters: "--silent ""--install-source={src}\..\Scenery"" ""--scenery-dest={app}\scenery""" From 3e0eefa8f5839c2e54886bd871e4f7f4fa3422c3 Mon Sep 17 00:00:00 2001 From: James Turner Date: Fri, 27 Jul 2012 17:52:34 +0100 Subject: [PATCH 16/44] Bump release head for metar.exe fix on Windows. --- flightgear | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flightgear b/flightgear index 8f5d858..f892b4c 160000 --- a/flightgear +++ b/flightgear @@ -1 +1 @@ -Subproject commit 8f5d8580b69d71313271a9fbac46e2cd8e830a99 +Subproject commit f892b4cf8934ecd42628b0433a928733073b2667 From 06800a6c56aa0769f6297296fc9154f2615ed2f0 Mon Sep 17 00:00:00 2001 From: James Turner Date: Mon, 30 Jul 2012 18:09:12 +0100 Subject: [PATCH 17/44] Bump FG release for Mac fixes. --- flightgear | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flightgear b/flightgear index f892b4c..c889339 160000 --- a/flightgear +++ b/flightgear @@ -1 +1 @@ -Subproject commit f892b4cf8934ecd42628b0433a928733073b2667 +Subproject commit c889339ec3effc58bd7325bea80bef9da68a229f From 7190575775900468f0a644624c6225db41a7b4da Mon Sep 17 00:00:00 2001 From: James Turner Date: Tue, 31 Jul 2012 09:02:46 +0100 Subject: [PATCH 18/44] Bump Simgear head for Clang templates fix. --- simgear | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/simgear b/simgear index 3ba3121..a7519c9 160000 --- a/simgear +++ b/simgear @@ -1 +1 @@ -Subproject commit 3ba312116b0c602733e5f62b52870e9d3e2677cf +Subproject commit a7519c9e95d6c2c1bf7132d76c2a79d8a20e7e37 From 8b782ce69b8dc3c6197802f8572631a984e1e70f Mon Sep 17 00:00:00 2001 From: James Turner Date: Tue, 31 Jul 2012 11:02:38 +0100 Subject: [PATCH 19/44] Add the Mac launcher as an external. Folks on other platforms, it's tiny - and this is the simplest way to manage things for the release builds. If you strongly object please let me know and we can figure out an alternate approach. --- .gitmodules | 3 +++ maclauncher | 1 + 2 files changed, 4 insertions(+) create mode 160000 maclauncher diff --git a/.gitmodules b/.gitmodules index 29ede68..7671951 100644 --- a/.gitmodules +++ b/.gitmodules @@ -4,3 +4,6 @@ [submodule "flightgear"] path = flightgear url = git://gitorious.org/fg/flightgear.git +[submodule "maclauncher"] + path = maclauncher + url = git://gitorious.org/fg/maclauncher.git diff --git a/maclauncher b/maclauncher new file mode 160000 index 0000000..ed55fa6 --- /dev/null +++ b/maclauncher @@ -0,0 +1 @@ +Subproject commit ed55fa6f7d72c766d623763865ce2cfaa3806044 From e7011cab66009e2189eb55b9fd6773730989786b Mon Sep 17 00:00:00 2001 From: James Turner Date: Tue, 31 Jul 2012 19:02:26 +0100 Subject: [PATCH 20/44] Updates for Mac packaging. Note this is currently hard-coding a source path for rsync which only works on my machine - which is the Mac jenkins slave. This will be updated shortly. --- base-package.rules | 38 +++++++++++++++++++++++++++++++++++ hudson_mac_build_release.sh | 8 +++----- hudson_mac_package_release.rb | 11 +++++----- 3 files changed, 47 insertions(+), 10 deletions(-) create mode 100644 base-package.rules diff --git a/base-package.rules b/base-package.rules new file mode 100644 index 0000000..488a83e --- /dev/null +++ b/base-package.rules @@ -0,0 +1,38 @@ +- .git +- *.xcf +- *.tex + ++ /data/Aircraft/Generic ++ /data/Aircraft/Instruments ++ /data/Aircraft/Instruments-3d + ++ /data/Aircraft/UIUC ++ /data/Aircraft/c172p ++ /data/Aircraft/777 ++ /data/Aircraft/777-200 ++ /data/Aircraft/b1900d ++ /data/Aircraft/ufo ++ /data/Aircraft/CitationX ++ /data/Aircraft/ZLT-NT ++ /data/Aircraft/dhc2 ++ /data/Aircraft/Cub ++ /data/Aircraft/sopwithCamel ++ /data/Aircraft/f-14b ++ /data/Aircraft/ASK13 ++ /data/Aircraft/bo105 ++ /data/Aircraft/Dragonfly ++ /data/Aircraft/SenecaII ++ /data/Aircraft/A6M2 + +- /data/Aircraft/* + +- /data/Textures.high/*.new +- /data/Textures.high/*.orig +- /data/Textures.high/*.save +- /data/Textures/Unused +- /data/Textures/*.orig +- /data/Docs/source +- /data/Models/Airspace +- /data/Models/MNUAV + + diff --git a/hudson_mac_build_release.sh b/hudson_mac_build_release.sh index 4808344..d900525 100755 --- a/hudson_mac_build_release.sh +++ b/hudson_mac_build_release.sh @@ -49,12 +49,10 @@ chmod +x $WORKSPACE/dist/bin/osgversion ################################################################################ echo "Building Macflightgear launcher" -SDK_PATH="/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.6.sdk" -OSX_TARGET="10.6" +SDK_PATH="/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk" +OSX_TARGET="10.7" -svn co https://macflightgear.svn.sourceforge.net/svnroot/macflightgear/trunk/FlightGearOSX macflightgear - -pushd macflightgear +pushd maclauncher/FlightGearOSX # compile the stub executable gcc -o FlightGear -mmacosx-version-min=$OSX_TARGET -isysroot $SDK_PATH -arch i386 main.m \ diff --git a/hudson_mac_package_release.rb b/hudson_mac_package_release.rb index 3f41408..7b9945b 100755 --- a/hudson_mac_package_release.rb +++ b/hudson_mac_package_release.rb @@ -67,10 +67,10 @@ puts "Creating directory structure" `mkdir -p #{osgPluginsDir}` puts "Copying binaries" -bins = ['fgfs', 'terrasync'] +bins = ['fgfs', 'fgjs'] bins.each do |b| - `cp #{prefixDir}/bin/#{b} #{resourcesDir}/#{b}` - fix_install_names("#{resourcesDir}/#{b}") + `cp #{prefixDir}/bin/#{b} #{macosDir}/#{b}` + fix_install_names("#{macosDir}/#{b}") end puts "copying libraries" @@ -100,9 +100,9 @@ end # Macflightgear launcher puts "Copying Macflightgear launcher files" -Dir.chdir "macflightgear" do +Dir.chdir "maclauncher/FlightGearOSX" do `cp FlightGear #{macosDir}` - `rsync -a --exclude=\".svn\" *.rb *.lproj *.sh *.tiff #{resourcesDir}` + `rsync -a *.rb *.lproj *.sh *.tiff #{resourcesDir}` end # Info.plist @@ -115,6 +115,7 @@ File.open("#{contents}/Info.plist", 'w') { |f| `cp #{srcDir}/package/mac/FlightGear.icns #{resourcesDir}/FlightGear.icns` `cp #{srcDir}/COPYING #{dmgDir}` +`rsync -a --verbose --filter 'merge #{Dir.pwd}/base-package.rules' /Users/Shared/FGFS/data #{resourcesDir}` puts "Creating DMG" From 05f4f85b27b80f727f74fed44e147af4edead7b0 Mon Sep 17 00:00:00 2001 From: James Turner Date: Tue, 31 Jul 2012 19:04:45 +0100 Subject: [PATCH 21/44] Bump for updated Mac launcher --- maclauncher | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/maclauncher b/maclauncher index ed55fa6..960f11d 160000 --- a/maclauncher +++ b/maclauncher @@ -1 +1 @@ -Subproject commit ed55fa6f7d72c766d623763865ce2cfaa3806044 +Subproject commit 960f11dc6928d1c74d1abf54e42f601e077a89c4 From 022f1791d9a666675037de91936127f7038cbae9 Mon Sep 17 00:00:00 2001 From: James Turner Date: Thu, 2 Aug 2012 10:34:00 +0100 Subject: [PATCH 22/44] Update Mac release build to sync from Telascience --- .gitignore | 1 + base-package.rules | 58 +++++++++++++++++------------------ hudson_mac_build_release.sh | 5 +++ hudson_mac_package_release.rb | 4 ++- 4 files changed, 38 insertions(+), 30 deletions(-) diff --git a/.gitignore b/.gitignore index e5f3491..a4cb745 100644 --- a/.gitignore +++ b/.gitignore @@ -10,3 +10,4 @@ fgBuild sgBuild image macflightgear +fgdata diff --git a/base-package.rules b/base-package.rules index 488a83e..8e210bf 100644 --- a/base-package.rules +++ b/base-package.rules @@ -2,37 +2,37 @@ - *.xcf - *.tex -+ /data/Aircraft/Generic -+ /data/Aircraft/Instruments -+ /data/Aircraft/Instruments-3d ++ /fgdata/Aircraft/Generic ++ /fgdata/Aircraft/Instruments ++ /fgdata/Aircraft/Instruments-3d -+ /data/Aircraft/UIUC -+ /data/Aircraft/c172p -+ /data/Aircraft/777 -+ /data/Aircraft/777-200 -+ /data/Aircraft/b1900d -+ /data/Aircraft/ufo -+ /data/Aircraft/CitationX -+ /data/Aircraft/ZLT-NT -+ /data/Aircraft/dhc2 -+ /data/Aircraft/Cub -+ /data/Aircraft/sopwithCamel -+ /data/Aircraft/f-14b -+ /data/Aircraft/ASK13 -+ /data/Aircraft/bo105 -+ /data/Aircraft/Dragonfly -+ /data/Aircraft/SenecaII -+ /data/Aircraft/A6M2 ++ /fgdata/Aircraft/UIUC ++ /fgdata/Aircraft/c172p ++ /fgdata/Aircraft/777 ++ /fgdata/Aircraft/777-200 ++ /fgdata/Aircraft/b1900d ++ /fgdata/Aircraft/ufo ++ /fgdata/Aircraft/CitationX ++ /fgdata/Aircraft/ZLT-NT ++ /fgdata/Aircraft/dhc2 ++ /fgdata/Aircraft/Cub ++ /fgdata/Aircraft/sopwithCamel ++ /fgdata/Aircraft/f-14b ++ /fgdata/Aircraft/ASK13 ++ /fgdata/Aircraft/bo105 ++ /fgdata/Aircraft/Dragonfly ++ /fgdata/Aircraft/SenecaII ++ /fgdata/Aircraft/A6M2 -- /data/Aircraft/* +- /fgdata/Aircraft/* -- /data/Textures.high/*.new -- /data/Textures.high/*.orig -- /data/Textures.high/*.save -- /data/Textures/Unused -- /data/Textures/*.orig -- /data/Docs/source -- /data/Models/Airspace -- /data/Models/MNUAV +- /fgdata/Textures.high/*.new +- /fgdata/Textures.high/*.orig +- /fgdata/Textures.high/*.save +- /fgdata/Textures/Unused +- /fgdata/Textures/*.orig +- /fgdata/Docs/source +- /fgdata/Models/Airspace +- /fgdata/Models/MNUAV diff --git a/hudson_mac_build_release.sh b/hudson_mac_build_release.sh index d900525..8b29689 100755 --- a/hudson_mac_build_release.sh +++ b/hudson_mac_build_release.sh @@ -60,5 +60,10 @@ gcc -o FlightGear -mmacosx-version-min=$OSX_TARGET -isysroot $SDK_PATH -arch i38 popd +################################################################################ +echo "Syncing base packages files from sphere.telascience.org" +rsync -avz --filter 'merge base-package.rules' \ + -e ssh jturner@sphere.telascience.org:/home/jturner/fgdata . + echo "Running package script" ./hudson_mac_package_release.rb diff --git a/hudson_mac_package_release.rb b/hudson_mac_package_release.rb index 7b9945b..def85c1 100755 --- a/hudson_mac_package_release.rb +++ b/hudson_mac_package_release.rb @@ -115,7 +115,9 @@ File.open("#{contents}/Info.plist", 'w') { |f| `cp #{srcDir}/package/mac/FlightGear.icns #{resourcesDir}/FlightGear.icns` `cp #{srcDir}/COPYING #{dmgDir}` -`rsync -a --verbose --filter 'merge #{Dir.pwd}/base-package.rules' /Users/Shared/FGFS/data #{resourcesDir}` + +puts "Copying base package files into the image" +`rsync -a fgdata/ #{resourcesDir}/data` puts "Creating DMG" From e528468bd45f5881e6053438f3ec9486b67fd5ec Mon Sep 17 00:00:00 2001 From: Frederic Bouvier Date: Thu, 2 Aug 2012 23:04:23 +0200 Subject: [PATCH 23/44] Bump for Rembrandt fix --- flightgear | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flightgear b/flightgear index c889339..a50f1ad 160000 --- a/flightgear +++ b/flightgear @@ -1 +1 @@ -Subproject commit c889339ec3effc58bd7325bea80bef9da68a229f +Subproject commit a50f1adda5cce437685f467cdc90b5f268ef66b3 From e25d5289e2894411c0bc9e61e26ed62fef45eca0 Mon Sep 17 00:00:00 2001 From: Frederic Bouvier Date: Thu, 2 Aug 2012 23:24:06 +0200 Subject: [PATCH 24/44] Bump for another Rembrandt fix --- flightgear | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flightgear b/flightgear index a50f1ad..6f35a46 160000 --- a/flightgear +++ b/flightgear @@ -1 +1 @@ -Subproject commit a50f1adda5cce437685f467cdc90b5f268ef66b3 +Subproject commit 6f35a46bdb6f14a6d093a8563d748bf89872ff09 From f15b661076d489766d8ae8fc564b96460febcd8a Mon Sep 17 00:00:00 2001 From: James Turner Date: Sun, 5 Aug 2012 21:38:08 +0100 Subject: [PATCH 25/44] Bump release head for PUI menubar crash fix. --- flightgear | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flightgear b/flightgear index 6f35a46..96b3888 160000 --- a/flightgear +++ b/flightgear @@ -1 +1 @@ -Subproject commit 6f35a46bdb6f14a6d093a8563d748bf89872ff09 +Subproject commit 96b38887574d894ef2c1d31c02170e8acb62c630 From d8897780d2eb58b7bdadb03e385d414b7d419b82 Mon Sep 17 00:00:00 2001 From: James Turner Date: Wed, 8 Aug 2012 14:43:45 +0100 Subject: [PATCH 26/44] Mac packaging tweaks Pieces for libsvn deployment, code-signing and FGCom --- hudson_mac_package_release.rb | 69 +++++++++++++++++++++++++++-------- 1 file changed, 53 insertions(+), 16 deletions(-) diff --git a/hudson_mac_package_release.rb b/hudson_mac_package_release.rb index def85c1..213fc1a 100755 --- a/hudson_mac_package_release.rb +++ b/hudson_mac_package_release.rb @@ -5,7 +5,7 @@ require 'fileutils' #I know, no underscore is not ruby-like include FileUtils $osgLibs = ['osgFX', 'osgParticle', 'osg', 'osgGA', 'osgText', 'osgUtil', 'osgSim', 'osgViewer', 'osgDB'] -$osgPlugins = ['ac', 'osg', 'freetype', 'qt', 'imageio', 'rgb', 'txf', 'mdl', '3ds'] +$osgPlugins = ['ac', 'osg', 'freetype', 'imageio', 'rgb', 'txf', 'mdl', '3ds'] def runOsgVersion(option) env = "export DYLD_LIBRARY_PATH=#{Dir.pwd}/dist/lib" @@ -21,6 +21,10 @@ puts "osgVersion=#{osgVersion}, so-number=#{$osgSoVersion}" $alutSourcePath='/Library/Frameworks/ALUT.framework' +$svnLibs = ['svn_client', 'svn_wc', 'svn_delta', 'svn_diff', 'svn_ra', + 'svn_ra_local', 'svn_repos', 'svn_fs', 'svn_fs_fs', 'svn_fs_util', + 'svn_ra_svn', 'svn_subr'] + def fix_install_names(object) #puts "fixing install names for #{object}" @@ -39,10 +43,35 @@ def fix_install_names(object) `install_name_tool -change #{$alutSourcePath}/#{alutLib} #{alutBundlePath}/#{alutLib} #{object}` end -prefixDir=Dir.pwd + "/dist" +$prefixDir=Dir.pwd + "/dist" dmgDir=Dir.pwd + "/image" srcDir=Dir.pwd + "/flightgear" +def fix_svn_install_names(object) + $svnLibs.each do |l| + fileName = "lib#{l}-1.0.dylib" + oldName = "#{$prefixDir}/lib/#{fileName}" + newName = "@executable_path/../Frameworks/#{fileName}" + `install_name_tool -change #{oldName} #{newName} #{object}` + end +end + +def copy_svn_libs() + puts "Copying Subversion client libraries" + $svnLibs.each do |l| + libFile = "lib#{l}-1.0.dylib" + path = "#{$frameworksDir}/#{libFile}" + `cp #{$prefixDir}/lib/#{libFile} #{$frameworksDir}` + fix_svn_install_names(path) + `install_name_tool -id #{libFile} #{path}` + end +end + +def code_sign(path) + puts "Signing #{path}" + `codesign -s "Mac Developer: James Turner (3JTY4GZGL8)" #{path}` +end + puts "Erasing previous image dir" `rm -rf #{dmgDir}` @@ -50,7 +79,7 @@ puts "Erasing previous image dir" bundle=dmgDir + "/FlightGear.app" contents=bundle + "/Contents" macosDir=contents + "/MacOS" -frameworksDir=contents +"/Frameworks" +$frameworksDir=contents +"/Frameworks" resourcesDir=contents+"/Resources" osgPluginsDir=contents+"/PlugIns/osgPlugins-#{osgVersion}" @@ -62,40 +91,47 @@ dmgPath = Dir.pwd + "/output/fg_mac_#{fgVersion}.dmg" puts "Creating directory structure" `mkdir -p #{macosDir}` -`mkdir -p #{frameworksDir}` +`mkdir -p #{$frameworksDir}` `mkdir -p #{resourcesDir}` `mkdir -p #{osgPluginsDir}` puts "Copying binaries" -bins = ['fgfs', 'fgjs'] +bins = ['fgfs', 'fgjs', 'fgcom'] bins.each do |b| - `cp #{prefixDir}/bin/#{b} #{macosDir}/#{b}` - fix_install_names("#{macosDir}/#{b}") + if !File.exist?("#{$prefixDir}/bin/#{b}") + next + end + + outPath = "#{macosDir}/#{b}" + `cp #{$prefixDir}/bin/#{b} #{outPath}` + fix_install_names(outPath) + fix_svn_install_names(outPath) + code_sign(outPath) end puts "copying libraries" $osgLibs.each do |l| libFile = "lib#{l}.#{$osgSoVersion}.dylib" - `cp #{prefixDir}/lib/#{libFile} #{frameworksDir}` - fix_install_names("#{frameworksDir}/#{libFile}") + `cp #{$prefixDir}/lib/#{libFile} #{$frameworksDir}` + fix_install_names("#{$frameworksDir}/#{libFile}") end # and not forgetting OpenThreads libFile = "libOpenThreads.#{$openThreadsSoVersion}.dylib" -`cp #{prefixDir}/lib/#{libFile} #{frameworksDir}` +`cp #{$prefixDir}/lib/#{libFile} #{$frameworksDir}` $osgPlugins.each do |p| pluginFile = "osgdb_#{p}.so" - sourcePath = "#{prefixDir}/lib/osgPlugins-#{osgVersion}/#{pluginFile}" - if File.exists?(sourcePath) - `cp #{sourcePath} #{osgPluginsDir}` - fix_install_names("#{osgPluginsDir}/#{pluginFile}") - end + `cp #{$prefixDir}/lib/osgPlugins-#{osgVersion}/#{pluginFile} #{osgPluginsDir}` + fix_install_names("#{osgPluginsDir}/#{pluginFile}") end +# svn lib copying disabled for the moment +# copy_svn_libs() + # custom ALUT # must copy frameworks using ditto -`ditto #{$alutSourcePath} #{frameworksDir}/ALUT.framework` +`ditto #{$alutSourcePath} #{$frameworksDir}/ALUT.framework` # Macflightgear launcher puts "Copying Macflightgear launcher files" @@ -104,6 +140,7 @@ Dir.chdir "maclauncher/FlightGearOSX" do `cp FlightGear #{macosDir}` `rsync -a *.rb *.lproj *.sh *.tiff #{resourcesDir}` end +code_sign("#{macosDir}/FlightGear") # Info.plist template = File.read("Info.plist.in") From 69c46231d723229c9de1d7b66d088b804a35b9d9 Mon Sep 17 00:00:00 2001 From: James Turner Date: Wed, 8 Aug 2012 16:27:04 +0100 Subject: [PATCH 27/44] FGCom data copying for release package --- hudson_mac_package_release.rb | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/hudson_mac_package_release.rb b/hudson_mac_package_release.rb index 213fc1a..f20f69f 100755 --- a/hudson_mac_package_release.rb +++ b/hudson_mac_package_release.rb @@ -140,6 +140,12 @@ Dir.chdir "maclauncher/FlightGearOSX" do `cp FlightGear #{macosDir}` `rsync -a *.rb *.lproj *.sh *.tiff #{resourcesDir}` end + +if File.exist?("#{$prefixDir}/bin/fgcom-data") + puts "Copying FGCom data files" + `ditto #{$prefixDir}/bin/fgcom-data #{resourcesDir}/fgcom-data` +end + code_sign("#{macosDir}/FlightGear") # Info.plist From 3b202ff6077a5add61de3727511d42a5a102d83c Mon Sep 17 00:00:00 2001 From: Frederic Bouvier Date: Sat, 11 Aug 2012 12:30:38 +0200 Subject: [PATCH 28/44] Bump for missing rembrandt uniforms --- flightgear | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flightgear b/flightgear index 96b3888..0dd860e 160000 --- a/flightgear +++ b/flightgear @@ -1 +1 @@ -Subproject commit 96b38887574d894ef2c1d31c02170e8acb62c630 +Subproject commit 0dd860e25c582f730f06f008686b16ef432fb56d From b400a2adc1e58893f26f39ccff66ea792a0c08f3 Mon Sep 17 00:00:00 2001 From: James Turner Date: Sun, 12 Aug 2012 17:03:10 +0100 Subject: [PATCH 29/44] Bump release heads, enable SVN packaging. --- Info.plist.in | 6 ++++-- flightgear | 2 +- hudson_mac_package_release.rb | 3 +-- simgear | 2 +- 4 files changed, 7 insertions(+), 6 deletions(-) diff --git a/Info.plist.in b/Info.plist.in index 5fdd5d4..1dded92 100644 --- a/Info.plist.in +++ b/Info.plist.in @@ -2,12 +2,14 @@ + CFBundleDevelopmentRegion + English CFBundleIconFile FlightGear.icns CFBundlePackageType APPL CFBundleGetInfoString - FlightGear nightly build + FlightGear, the open-source flight simulator CFBundleSignature ???? CFBundleExecutable @@ -19,7 +21,7 @@ CFBundleShortVersionString <%= fgVersion %> LSMinimumSystemVersion - 10.5.0 + 10.6.0 NSMainNibFile MainMenu NSPrincipalClass diff --git a/flightgear b/flightgear index 0dd860e..0a822fb 160000 --- a/flightgear +++ b/flightgear @@ -1 +1 @@ -Subproject commit 0dd860e25c582f730f06f008686b16ef432fb56d +Subproject commit 0a822fb412e2fcc44028bf5412710e2fb32dc96b diff --git a/hudson_mac_package_release.rb b/hudson_mac_package_release.rb index f20f69f..5ccbe9d 100755 --- a/hudson_mac_package_release.rb +++ b/hudson_mac_package_release.rb @@ -126,8 +126,7 @@ $osgPlugins.each do |p| fix_install_names("#{osgPluginsDir}/#{pluginFile}") end -# svn lib copying disabled for the moment -# copy_svn_libs() +copy_svn_libs() # custom ALUT # must copy frameworks using ditto diff --git a/simgear b/simgear index a7519c9..2e60af7 160000 --- a/simgear +++ b/simgear @@ -1 +1 @@ -Subproject commit a7519c9e95d6c2c1bf7132d76c2a79d8a20e7e37 +Subproject commit 2e60af7cc032a5b4a7df8b1cdf92cf4a2553a76b From 0a40a360413c556b8bdf22130d6a46bce808f76e Mon Sep 17 00:00:00 2001 From: Frederic Bouvier Date: Sun, 12 Aug 2012 19:10:53 +0200 Subject: [PATCH 30/44] Bump for rembrandt fix --- flightgear | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flightgear b/flightgear index 0a822fb..2f8bb5e 160000 --- a/flightgear +++ b/flightgear @@ -1 +1 @@ -Subproject commit 0a822fb412e2fcc44028bf5412710e2fb32dc96b +Subproject commit 2f8bb5eab298d79055c387570e613fab7277735d From 41356c1ababf007d2a9fd13a79d51ba2783f2ffc Mon Sep 17 00:00:00 2001 From: James Turner Date: Mon, 13 Aug 2012 14:26:33 +0100 Subject: [PATCH 31/44] Code-sign using the identity from the environment. --- hudson_mac_package_release.rb | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/hudson_mac_package_release.rb b/hudson_mac_package_release.rb index 5ccbe9d..07ad53d 100755 --- a/hudson_mac_package_release.rb +++ b/hudson_mac_package_release.rb @@ -17,6 +17,9 @@ osgVersion = runOsgVersion('version-number') $osgSoVersion=runOsgVersion('so-number') $openThreadsSoVersion=runOsgVersion('openthreads-soversion-number') +$codeSignIdentity = ENV['FG_CODESIGN_IDENTITY'] +puts "Code signing identity is #{$codeSignIdentity}" + puts "osgVersion=#{osgVersion}, so-number=#{$osgSoVersion}" $alutSourcePath='/Library/Frameworks/ALUT.framework' @@ -69,7 +72,7 @@ end def code_sign(path) puts "Signing #{path}" - `codesign -s "Mac Developer: James Turner (3JTY4GZGL8)" #{path}` + `codesign -s "#{$codeSignIdentity}" #{path}` end From 2382a0600af84853f12b1f8106ec1f98a963e711 Mon Sep 17 00:00:00 2001 From: James Turner Date: Mon, 13 Aug 2012 14:26:47 +0100 Subject: [PATCH 32/44] Bump to latest Mac launcher. --- maclauncher | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/maclauncher b/maclauncher index 960f11d..57e971a 160000 --- a/maclauncher +++ b/maclauncher @@ -1 +1 @@ -Subproject commit 960f11dc6928d1c74d1abf54e42f601e077a89c4 +Subproject commit 57e971a159ef8d17c20f9dfed31d27a870ead26b From 0d7f99e261d22ab7bffa09de19ddcb2dd4516abc Mon Sep 17 00:00:00 2001 From: James Turner Date: Tue, 14 Aug 2012 10:46:00 +0100 Subject: [PATCH 33/44] Tweak Mac code-signing for 2.8 release. --- hudson_mac_package_release.rb | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/hudson_mac_package_release.rb b/hudson_mac_package_release.rb index 07ad53d..23a0713 100755 --- a/hudson_mac_package_release.rb +++ b/hudson_mac_package_release.rb @@ -26,7 +26,7 @@ $alutSourcePath='/Library/Frameworks/ALUT.framework' $svnLibs = ['svn_client', 'svn_wc', 'svn_delta', 'svn_diff', 'svn_ra', 'svn_ra_local', 'svn_repos', 'svn_fs', 'svn_fs_fs', 'svn_fs_util', - 'svn_ra_svn', 'svn_subr'] + 'svn_ra_svn', 'svn_subr', 'svn_ra_neon'] def fix_install_names(object) #puts "fixing install names for #{object}" @@ -109,7 +109,6 @@ bins.each do |b| `cp #{$prefixDir}/bin/#{b} #{outPath}` fix_install_names(outPath) fix_svn_install_names(outPath) - code_sign(outPath) end puts "copying libraries" @@ -148,8 +147,6 @@ if File.exist?("#{$prefixDir}/bin/fgcom-data") `ditto #{$prefixDir}/bin/fgcom-data #{resourcesDir}/fgcom-data` end -code_sign("#{macosDir}/FlightGear") - # Info.plist template = File.read("Info.plist.in") output = ERB.new(template).result(binding) @@ -164,6 +161,15 @@ File.open("#{contents}/Info.plist", 'w') { |f| puts "Copying base package files into the image" `rsync -a fgdata/ #{resourcesDir}/data` +# code sign all executables in MacOS dir. Do this last since reource +# changes will invalidate the signature! +Dir.foreach(macosDir) do |b| + if b == '.' or b == '..' then + next + end + code_sign("#{macosDir}/#{b}") +end + puts "Creating DMG" createArgs = "-format UDBZ -imagekey bzip2-level=9 -quiet -volname #{volName}" From 3ea2728b69176f7e264b7360d534741dcaab2e16 Mon Sep 17 00:00:00 2001 From: James Turner Date: Tue, 14 Aug 2012 12:11:48 +0100 Subject: [PATCH 34/44] Mac: Keychain unlock needs to happen later. Apparently the keychain re-locks fairly rapidly, so run the unlock script right before running the packaging script. This is non-portable to another Mac slave, but will do for now. --- hudson_mac_build_release.sh | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/hudson_mac_build_release.sh b/hudson_mac_build_release.sh index 8b29689..55e7608 100755 --- a/hudson_mac_build_release.sh +++ b/hudson_mac_build_release.sh @@ -65,5 +65,9 @@ echo "Syncing base packages files from sphere.telascience.org" rsync -avz --filter 'merge base-package.rules' \ -e ssh jturner@sphere.telascience.org:/home/jturner/fgdata . +# run the unlock script now - we need to do this right before code-signing, +# or the keychain may automatically re-lock after some period of time +/Users/Shared/Hudson/unlock-keychain.sh + echo "Running package script" ./hudson_mac_package_release.rb From 2cb313c6f1cdbb3174149a22ecf6477c1c1c5c0c Mon Sep 17 00:00:00 2001 From: James Turner Date: Tue, 14 Aug 2012 19:51:50 +0100 Subject: [PATCH 35/44] Bump for new Mac launcher head. --- maclauncher | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/maclauncher b/maclauncher index 57e971a..524e514 160000 --- a/maclauncher +++ b/maclauncher @@ -1 +1 @@ -Subproject commit 57e971a159ef8d17c20f9dfed31d27a870ead26b +Subproject commit 524e5147a7ee0b7d822e46fafd47a76c704f4aff From 302b1ff5b7bc9b9c11d0d6183667602472189d6e Mon Sep 17 00:00:00 2001 From: James Turner Date: Sun, 19 Aug 2012 20:25:34 +0100 Subject: [PATCH 36/44] Bump for Mac launcher tweak. --- maclauncher | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/maclauncher b/maclauncher index 524e514..9e20536 160000 --- a/maclauncher +++ b/maclauncher @@ -1 +1 @@ -Subproject commit 524e5147a7ee0b7d822e46fafd47a76c704f4aff +Subproject commit 9e205366d1ad5f0d2484533ec9effef98c7c8e97 From 154afebc4517daff7328195a63b7aa726fa3de6f Mon Sep 17 00:00:00 2001 From: James Turner Date: Wed, 22 Aug 2012 18:35:52 +0100 Subject: [PATCH 37/44] Tweaks for building on different Jenkins slave. --- hudson_mac_build_release.sh | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/hudson_mac_build_release.sh b/hudson_mac_build_release.sh index 55e7608..a9d1566 100755 --- a/hudson_mac_build_release.sh +++ b/hudson_mac_build_release.sh @@ -49,8 +49,7 @@ chmod +x $WORKSPACE/dist/bin/osgversion ################################################################################ echo "Building Macflightgear launcher" -SDK_PATH="/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk" -OSX_TARGET="10.7" +OSX_TARGET="10.6" pushd maclauncher/FlightGearOSX @@ -67,7 +66,7 @@ rsync -avz --filter 'merge base-package.rules' \ # run the unlock script now - we need to do this right before code-signing, # or the keychain may automatically re-lock after some period of time -/Users/Shared/Hudson/unlock-keychain.sh +unlock-keychain.sh echo "Running package script" ./hudson_mac_package_release.rb From e13daffc46af89ad5c161207e63768a245e3224c Mon Sep 17 00:00:00 2001 From: James Turner Date: Wed, 22 Aug 2012 22:34:27 +0100 Subject: [PATCH 38/44] Fix SV renaming for Mac release. --- hudson_mac_package_release.rb | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/hudson_mac_package_release.rb b/hudson_mac_package_release.rb index 23a0713..de6e854 100755 --- a/hudson_mac_package_release.rb +++ b/hudson_mac_package_release.rb @@ -53,9 +53,8 @@ srcDir=Dir.pwd + "/flightgear" def fix_svn_install_names(object) $svnLibs.each do |l| fileName = "lib#{l}-1.0.dylib" - oldName = "#{$prefixDir}/lib/#{fileName}" newName = "@executable_path/../Frameworks/#{fileName}" - `install_name_tool -change #{oldName} #{newName} #{object}` + `install_name_tool -change #{fileName} #{newName} #{object}` end end @@ -66,7 +65,7 @@ def copy_svn_libs() path = "#{$frameworksDir}/#{libFile}" `cp #{$prefixDir}/lib/#{libFile} #{$frameworksDir}` fix_svn_install_names(path) - `install_name_tool -id #{libFile} #{path}` + # `install_name_tool -id #{libFile} #{path}` end end From 23b0f4eea48a14b58760fd3f621bd8fdd2df1df7 Mon Sep 17 00:00:00 2001 From: James Turner Date: Thu, 23 Aug 2012 08:15:24 +0100 Subject: [PATCH 39/44] Bump flightgear head to 2.8.1 to get ATC crash fix. --- flightgear | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flightgear b/flightgear index 2f8bb5e..1bade10 160000 --- a/flightgear +++ b/flightgear @@ -1 +1 @@ -Subproject commit 2f8bb5eab298d79055c387570e613fab7277735d +Subproject commit 1bade1069f066ea5e2941cdfa145ca37de06dbe1 From 083269de807871b1c041539c2ebdeea1b4cf6c6b Mon Sep 17 00:00:00 2001 From: James Turner Date: Sat, 25 Aug 2012 14:55:20 +0100 Subject: [PATCH 40/44] Fix ALUT naming, ooops. --- hudson_mac_package_release.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hudson_mac_package_release.rb b/hudson_mac_package_release.rb index de6e854..ffd6a07 100755 --- a/hudson_mac_package_release.rb +++ b/hudson_mac_package_release.rb @@ -41,7 +41,7 @@ def fix_install_names(object) newName= "@executable_path/../Frameworks/#{oldName}" `install_name_tool -change #{oldName} #{newName} #{object}` - alutBundlePath = "@executable_path/../Frameworks/Alut.framework" + alutBundlePath = "@executable_path/../Frameworks/ALUT.framework" alutLib = "Versions/A/ALUT" `install_name_tool -change #{$alutSourcePath}/#{alutLib} #{alutBundlePath}/#{alutLib} #{object}` end From f1f4fcb0d84249e5c99e918a310a1ea78f6a90ce Mon Sep 17 00:00:00 2001 From: James Turner Date: Sat, 25 Aug 2012 14:55:34 +0100 Subject: [PATCH 41/44] Bump FG version. --- flightgear | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flightgear b/flightgear index 1bade10..bffb558 160000 --- a/flightgear +++ b/flightgear @@ -1 +1 @@ -Subproject commit 1bade1069f066ea5e2941cdfa145ca37de06dbe1 +Subproject commit bffb5589215182cb21ab2b2697ae7bf000db1412 From 81f5a48973aa5797ed6b3b809c630056788aee0a Mon Sep 17 00:00:00 2001 From: James Turner Date: Tue, 28 Aug 2012 13:47:37 +0100 Subject: [PATCH 42/44] Changes to Info.plist creation, fix copyright. Info.plist now generates correct copyright strings based on the current year. --- Info.plist.in | 4 +++- flightgear | 2 +- hudson_mac_package_release.rb | 3 +++ maclauncher | 2 +- 4 files changed, 8 insertions(+), 3 deletions(-) diff --git a/Info.plist.in b/Info.plist.in index 1dded92..b6dd5d4 100644 --- a/Info.plist.in +++ b/Info.plist.in @@ -9,7 +9,7 @@ CFBundlePackageType APPL CFBundleGetInfoString - FlightGear, the open-source flight simulator + FlightGear, the open-source flight simulator, <%= fgVersion %>. ©1996-<%= fgCurrentYear%>, The FlightGear Project CFBundleSignature ???? CFBundleExecutable @@ -26,6 +26,8 @@ MainMenu NSPrincipalClass NSApplication + NSHumanReadableCopyright + ©1996-<%= fgCurrentYear%>, The FlightGear Project diff --git a/flightgear b/flightgear index bffb558..ddc2a74 160000 --- a/flightgear +++ b/flightgear @@ -1 +1 @@ -Subproject commit bffb5589215182cb21ab2b2697ae7bf000db1412 +Subproject commit ddc2a745c67d138b34e3d95948d341341c85965d diff --git a/hudson_mac_package_release.rb b/hudson_mac_package_release.rb index ffd6a07..563f587 100755 --- a/hudson_mac_package_release.rb +++ b/hudson_mac_package_release.rb @@ -85,6 +85,9 @@ $frameworksDir=contents +"/Frameworks" resourcesDir=contents+"/Resources" osgPluginsDir=contents+"/PlugIns/osgPlugins-#{osgVersion}" +# for writing copyright year to Info.plist +t = Time.new +fgCurrentYear = t.year fgVersion = File.read("#{srcDir}/version").strip volName="\"FlightGear #{fgVersion}\"" diff --git a/maclauncher b/maclauncher index 9e20536..f9d2f97 160000 --- a/maclauncher +++ b/maclauncher @@ -1 +1 @@ -Subproject commit 9e205366d1ad5f0d2484533ec9effef98c7c8e97 +Subproject commit f9d2f97206bbbeebc4b5690c1d03cda5ce8e97ae From 48ad2d326fad7225b7d8991f9130b64684f67cd3 Mon Sep 17 00:00:00 2001 From: ThorstenB Date: Tue, 4 Sep 2012 00:00:42 +0200 Subject: [PATCH 43/44] Bump sg+fg. --- flightgear | 2 +- simgear | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/flightgear b/flightgear index ddc2a74..8039b6c 160000 --- a/flightgear +++ b/flightgear @@ -1 +1 @@ -Subproject commit ddc2a745c67d138b34e3d95948d341341c85965d +Subproject commit 8039b6cb8f68a9db157adf11d8ecd90b120c4881 diff --git a/simgear b/simgear index 2e60af7..b1baddd 160000 --- a/simgear +++ b/simgear @@ -1 +1 @@ -Subproject commit 2e60af7cc032a5b4a7df8b1cdf92cf4a2553a76b +Subproject commit b1baddd6dce9ceea0857790c46154e3c2087e62b From a717c77ee9446bd87a42a81ac219aa6c6359600a Mon Sep 17 00:00:00 2001 From: James Turner Date: Mon, 17 Sep 2012 23:02:55 +0100 Subject: [PATCH 44/44] Mac launcher fixes. --- hudson_mac_package_release.rb | 2 +- maclauncher | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/hudson_mac_package_release.rb b/hudson_mac_package_release.rb index 563f587..1180f15 100755 --- a/hudson_mac_package_release.rb +++ b/hudson_mac_package_release.rb @@ -101,7 +101,7 @@ puts "Creating directory structure" `mkdir -p #{osgPluginsDir}` puts "Copying binaries" -bins = ['fgfs', 'fgjs', 'fgcom'] +bins = ['fgfs', 'fgjs', 'fgcom', 'fgviewer'] bins.each do |b| if !File.exist?("#{$prefixDir}/bin/#{b}") next diff --git a/maclauncher b/maclauncher index f9d2f97..7ffef2c 160000 --- a/maclauncher +++ b/maclauncher @@ -1 +1 @@ -Subproject commit f9d2f97206bbbeebc4b5690c1d03cda5ce8e97ae +Subproject commit 7ffef2cb26442578f3c4b1e22158feb1ad812367