Compare commits

...

235 Commits

Author SHA1 Message Date
James Turner
b6bcaaa36d Update from Pat:
First time users of the script on ubuntu will find an error when the
script attempts to install packages using su instead of sudo.
2014-03-04 09:09:52 +00:00
James Turner
1026e75f7c Download_and_compile 1.9.14
1. Version bump for 2.99.9 now 3.0.0
 2. changed logging to log entire output of a sub-process
    rather than write individual lines of output to a logfile.
 3. logs are versioned.
 4. fix to support a change in fgdata version when fgdata is a symlink
 5. Automatic j option # of cores + 1
 6. fixed stable fgrun build
 7. stable is now 2.12.0 for fgfs & simgear, 2.12.1 for fgdata
 8. fixed broken stable build for 2.12.0
 9. Added section on setup
 10. once built, unless specifically requested by parameter
	OSG or PLIB:
	Don't rebuild OSG or plib
       Don't update OSG or plib sources
 12. self testing with ./download_and_compile.sh test.
 	this will build 2.12.0, stable, master, next, 3.0.0
 	in sub-directories under the one
	containing ./download_and_compile.sh
	if doing this test it is highly recommended that you
	create a directory "othersrc" in the same directory
	as download_and_compile.sh.  You may also want to place a
       recent copy of fgdata in both ../fgdata_3.0.0 and fgdata_2.12.1

       usage:  ./download_and_compile.sh test reset
	You had better have lots of disk space free.
	and plenty of time as it will download a copy of
	fgdata for each version if you don't provide one.
2014-01-29 14:23:24 +00:00
James Turner
d3955a4e2c Merge branch 'refs/heads/next' 2014-01-04 16:26:56 +00:00
James Turner
f98529dbce Bump submodule revisions. 2014-01-04 16:19:21 +00:00
James Turner
2e4f0171eb Updated download_and_compile script.
From Pat Callahan.
2014-01-04 16:16:57 +00:00
Clément de l'Hamaide
75cc4a410c Bump FGRun/FG/SG commit 2013-12-24 12:58:54 +01:00
James Turner
fe39e97c2e Bump for FGRun windows fixes 2013-12-02 22:03:40 +00:00
James Turner
5f94a6d623 Superbuild tweaks
- fix download/configure of Boost on Windows
- attempt to use custom build steps to fix re-builds.
2013-12-02 22:02:24 +00:00
Clément de l'Hamaide
102f797cc3 Bump FG, SG, FGrun commit 2013-12-01 11:01:57 +01:00
Clément de l'Hamaide
247ca7b113 Sync 3rdParty folder with SVN repo 2013-11-30 16:25:12 +01:00
James Turner
0a81018df9 Sync download&compile
Copy from master -> next since next is the new default branch.
2013-11-24 21:57:21 +00:00
James Turner
784a595e82 Updated maclauncher SHA 2013-11-24 21:55:06 +00:00
James Turner
95d0692b0e Keep Windows script in sync with new data name. 2013-11-22 22:48:56 +01:00
James Turner
af9a7e9bd2 Tweak data file name (.tar.bz to .tar.bz2)
This simplifies life for the upload step which only needs to deal
with one file suffix, not two.
2013-11-22 22:48:41 +01:00
Clément de l'Hamaide
a16f37e678 Bump to the last SG, FG and FGRun commit 2013-11-20 18:48:36 +01:00
Clement de l'Hamaide
4a10d32c61 Superbuild: Fix 3rdParty for FGRun x64 2013-11-20 18:33:50 +01:00
Clement de l'Hamaide
a2a2d6f354 Superbuild: compatible for Linux and Windows 2013-11-18 22:24:31 +01:00
Clément de l'Hamaide
866a234822 Bump submodule commits 2013-11-17 19:52:32 +01:00
Clément de l'Hamaide
57dfbfe524 ignore build/ directory 2013-11-17 19:50:33 +01:00
Clement de l'Hamaide
fe838ad8e8 Superbuild: revert SVN use for Boost (SVN throws too many unnecessary lines) 2013-11-16 00:40:02 +01:00
Clement de l'Hamaide
ba53b4ce5f Superbuild: use SVN for 3rdParty and Boost + add exit code in installWinDeps.bat if xcopy fails 2013-11-16 00:07:57 +01:00
Clément de l'Hamaide
e5531723b8 Update submodules to last commit 2013-11-15 21:01:19 +01:00
Clément de l'Hamaide
9a1a5ce7a6 Superbuild: fix flightgear 64 compilation 2013-11-15 20:58:05 +01:00
Clément de l'Hamaide
758488cd6d Make sumodule trancking next branch but maclauncher tracks master 2013-11-15 16:37:54 +01:00
Clément de l'Hamaide
4ba10aafda Superbuild: typo 2013-11-14 21:28:10 +01:00
Clément de l'Hamaide
9e8fc07ea1 Superbuild: FGRun tweak 2013-11-14 21:15:31 +01:00
Clément de l'Hamaide
9763440ef4 Superbuild: add FGRun compilation for Windows 2013-11-14 20:57:54 +01:00
Clément de l'Hamaide
c78949fd4a Superbuild: fix SimGear path for FG build - bis 2013-11-14 20:39:34 +01:00
Clément de l'Hamaide
7d21138771 Superbuild: fix SimGear path for FG build 2013-11-14 17:58:10 +01:00
Clément de l'Hamaide
0b5855fdee Superbuild: fix 3rdParty 32/64 compatibility 2013-11-14 02:35:33 +01:00
Clément de l'Hamaide
d627ec7360 Superbuild: make CMAKE_INSTALL_PREFIX usable for Unix and Win 2013-11-13 23:21:18 +01:00
Clément de l'Hamaide
56e9eb4b6a Superbuild: oops forget a level in path 2013-11-13 21:10:20 +01:00
Clément de l'Hamaide
24e55d6b92 Superbuild: add 64bits support for 3rdParty 2013-11-13 17:45:48 +01:00
Clément de l'Hamaide
f625f7b5e5 Superbuild: Fix and cleanup
- Fix OSG_INSTALL_PREFIX path
- Fix missing OSG_INSTALL_PREFIX for flightgear
- Add 64 bits support
- Don't override OSG install dir
- Fix CMAKE_INSTALL_PREFIX path for SG and FG
- Indentation cleanup
2013-11-13 17:34:29 +01:00
Clément de l'Hamaide
2f97b62112 Upgrade win package release adding FGCom installation 2013-11-01 19:02:33 +01:00
Clément de l'Hamaide
636548111e FG-Win-installer: add FGCom installation 2013-10-31 22:52:42 +01:00
James Turner
3378b289aa Bump to latest SG+FG 2013-10-30 14:52:36 +00:00
Clément de l'Hamaide
6a0c88934f build-mac-release: use new FGCom 2013-10-25 15:42:41 +02:00
James Turner
811d421382 Tweak data file name (.tar.bz to .tar.bz2)
This simplifies life for the upload step which only needs to deal
with one file suffix, not two.
2013-10-24 08:40:07 +01:00
James Turner
871236a9de Use different InnoSetup compiler.
(Hopefully this one reports errors to stdout instead of a GUI)
2013-10-24 08:40:07 +01:00
James Turner
51b9e61667 Make OpenThreads SO number dynamic. 2013-10-24 08:40:07 +01:00
James Turner
f4fc5a3a58 Add data package extraction to Windows script 2013-10-24 08:40:07 +01:00
James Turner
3d0dce4a11 Bump FGRun version to master. 2013-10-24 08:40:07 +01:00
James Turner
b493681787 Use Boost from Jenkins, on Windows. 2013-10-24 08:40:07 +01:00
James Turner
75815ca5bc More Super-build tweaks.
Download and extract libsvn files on Mac, and enable RTI on non-Windows builds. Factor dependencies so they work for all platforms.
2013-10-24 08:40:07 +01:00
James Turner
fecaccdb8e Catalog XML creation basically works.
Still need to write <aircraft> entries.
2013-10-24 08:40:07 +01:00
James Turner
b59449aa63 XML write-out improving.
Use existing catalog for static data, revision counting.
2013-10-24 08:40:07 +01:00
James Turner
ac4189b12b Metabuild starting to work on Windows 2013-10-24 08:40:07 +01:00
James Turner
6d8aadb35f SuperBuild tweaks 2013-10-24 08:40:07 +01:00
James Turner
5405da6e3f RTI support 2013-10-24 08:40:07 +01:00
James Turner
3b41a1f8dc SuperBuild file 2013-10-24 08:40:07 +01:00
James Turner
32c5b8819a Work-in-progress on Python script to create catalog.xml
Script to generate tarballs and serve directory from an Aircraft folder. Includes
thumbnail extraction, MD5 creation, tarball creation and -set.xml parsing, but
still some further work to be done.
2013-10-24 08:40:07 +01:00
James Turner
091c466b9e Mac launcher tweaks for release. 2013-10-24 08:40:07 +01:00
James Turner
286253fda4 Extend Linux release script: create base package.
This uses the same tactic as Mac-release; a filtered rsync from the map server's git checkout.
2013-10-24 08:40:07 +01:00
James Turner
c97c439db7 DMG file naming tweaks. 2013-10-24 08:40:03 +01:00
James Turner
822926bcaa Fixed MSAA option in Mac launcher 2013-10-24 08:40:03 +01:00
James Turner
037176fb72 Mac launcher tweaks. 2013-10-24 08:39:59 +01:00
James Turner
c8afb19ce6 Include the Options html file in the Mac DMG. 2013-10-24 08:39:59 +01:00
James Turner
66b389f011 Include GetStart and Short-Ref PDFs in the DMG.
Rather than hiding these inside the bundle, lift them up to a visible place.
2013-10-24 08:39:59 +01:00
James Turner
b04de947a8 Bump to include Ati viewport hack. 2013-10-24 08:39:59 +01:00
James Turner
5014a47ead Updated Maclauncher version. 2013-10-24 08:39:59 +01:00
James Turner
00bbc6cea7 Build Mac release build with debugInfo.
(Experimental, let's see if this helps testing)
2013-10-24 08:39:58 +01:00
James Turner
e1ff3e5f69 Use 2.10.0 branch for maclauncher too. 2013-10-24 08:39:52 +01:00
James Turner
3ebf7b6286 Disable explicit SDK setting for Mac launcher.
Setting an SDK is breaking, but since the build slave is running our lowest supported OS version anyway, we can live with the default setting.
2013-10-24 08:39:45 +01:00
James Turner
f8046e65ec Maclauncher: No 32-bit anymore! 2013-10-24 08:31:00 +01:00
Pat
36e9b1d4f3 Version 1.9.12
1. Added the output of a rebuild command to facilitate
   rerunning with The same parameters.

   usage: chmod +x rebuild
          ./rebuild

2. Removed FGCOMGUI from the all build due to its failure to build
   at least on Ubuntu 13.04

3. Added options

   -B branch
   -R revision

   usage:  -B master -R HEAD
           -B next   -R HEAD
	   -B 2.10.0 -R HEAD
	   -B 2.12.0 -R HEAD

   other entries are possibl -R defaults to HEAD, but can also be a commit #
   or a tag name

4. OSG Version option -G

   usage:

	-G 3.0.1 (default)
	-G 3.1.9
        -G 3.1.9d (debug build for osg - untested)

5. Stop after building one module

   This was added to facilitate testing.

   usage: -z

6. Enable Flightgear 2.10.0 as stable

   usage: -s

7. Add optional build for OPENRADAR

   usage:

   ./download_and_compile.sh OPENRADAR

   untested

8. Echo compile bash variable values to terminal and logfile

9. add patches for fltk libraries on Ubuntu 13.04

10. Sets the window title at each step

11. Initial support for keeping multiple versions of fgdata

    To do this, create directories in the parent of where you are building:

    fgdata_2.10.0
    fgdata_2.12.0
    fgdata_2.99.9

    move a copy of ANY fgdata git clone into all three

    the next initial build of a given version will set the corresponding
    fgdata to the right version.

    to use these, set up a symbolic link to fgdata_x from install/fgfs/fgdata

12. Added output to an additonal log: download_and_compile.log

    The log contains only a record of starting each component build
    and the end of the build.

    Fun fact:  OSG builds in about 4 minutes using -j 9
               on an i7 4770k with 16gb memory

    ../download_and_compile.sh -xvp n -j 9 -B 2.12.0 ALL
    cat download_and_compile.log
../download_and_compile.sh -xvp n -j 9 -B 2.12.0 ALL
		started building in /home/pac1/work/fg/test-gits/team-master/2.12.0
		        at Tue Aug 27 22:43:17 EDT 2013
		finished at Tue Aug 27 22:56:04 EDT 2013

Version 1.9.12-pre5  5th pre-release version of 1.9.12
function write_log() added.
	write_log writes summary information to sysout and a summary log file
	the function is added as a preview of changes to the logging for the script
function SET_WINDOW_TITLE()
	changes the window title to indicate what is being built.
function check_build()
	writes to the summary log a list of what was found as executables after a build.
outputs a rebuild command
	the rebuild command can be used to re-execute the same build without entry of options or parameters.

removes fgcomgui from the list of modules built when ALL is specified

STOP_AFTER_ONE_MODULE
Adds options z, B, R and G

option z will set this so that only one module will be built, and then the script
will immediately stop.  This is useful during testing of the script.

Option B allows the build of a specific branch. Without the R option it will build the head of the branch.
option R allows the build of a specific revision or commit.
Option G allows selection of a specific version of OpenSceneGraph.

This version introduces the use of a bash associative array to select branch and version for building.

patches allow building with fltk under Ubuntu 13.04

Open radar has been added
2013-10-24 08:20:27 +01:00
James Turner
8fe9281692 Update superbuild
- remove libSvn
- compile Boost ourselves on Windows
- tweak OSG detection
2013-10-21 22:19:45 +01:00
James Turner
5610f352af Use OSG 3.2 for superbuild.
Bump to current FG+SG head revisions on next
2013-09-15 22:04:58 +01:00
James Turner
19e9e62ba6 Add data package extraction to Windows script 2013-08-28 13:12:14 +01:00
Pat
75f1a35520 Version 1.9.12 see release notes on
http://wiki.flightgear.org/Scripted_Compilation_on_Linux_Debian/Ubuntu
2013-08-01 13:32:32 +01:00
Pat
06df73928f Version 1.9.11 approved by Francesco Brisa 2013-08-01 13:31:43 +01:00
Pat
1e183ed9de Cumulative Changes from versions 1.9.5 through 1.9.10
Changes 1.9.5 through 1.9.10
Multiple changes restructuring parts of the script
FGRUN added to ALL list
Regular expression used to determine if a component is to be built
OPENRTI added

Fixes and changes in 1.9.10
url for plib has / at the end to prevent problems with svn
url for osg has been updated to http://svn.openscenegraph.org/osg/OpenSceneGraph/tags/OpenSceneGraph-3.0.1/
x and v options added to aid in script debugging
w option added to aid in cmake debugging
2013-06-15 12:38:49 +01:00
James Turner
8f53e02e26 Bump to latest 'next' heads. 2013-03-28 11:11:24 +00:00
James Turner
19705077f5 Bump to latest fg+sg 2013-03-10 15:10:15 +00:00
James Turner
5e82468203 Use Boost from Jenkins, on Windows. 2013-03-06 12:38:22 +00:00
James Turner
40b0daec9f Bump SG+FG versions. 2013-03-03 16:09:41 +00:00
James Turner
9019d3c49c More Super-build tweaks.
Download and extract libsvn files on Mac, and enable RTI on non-Windows builds. Factor dependencies so they work for all platforms.
2013-03-01 17:55:55 +00:00
James Turner
530e41f1b0 Catalog XML creation basically works.
Still need to write <aircraft> entries.
2013-03-01 16:34:50 +00:00
James Turner
c20802b84f XML write-out improving.
Use existing catalog for static data, revision counting.
2013-03-01 16:34:49 +00:00
James Turner
b4b5f665c1 Metabuild starting to work on Windows 2013-03-01 16:26:38 +00:00
James Turner
e5f6218be9 SuperBuild tweaks 2013-02-24 21:14:08 +00:00
James Turner
3c32c48955 RTI support 2013-02-21 14:21:26 +00:00
James Turner
8fc045b409 Latest SG+FG 2013-02-21 11:08:06 +00:00
James Turner
ecd1537a61 SuperBuild file 2013-02-21 11:06:29 +00:00
James Turner
82fedc7362 Work-in-progress on Python script to create catalog.xml
Script to generate tarballs and serve directory from an Aircraft folder. Includes
thumbnail extraction, MD5 creation, tarball creation and -set.xml parsing, but
still some further work to be done.
2013-02-17 17:19:57 +00:00
James Turner
958a9ac2ba Merge branch 'refs/heads/release/2.10.0' into next 2013-02-17 12:02:25 +00:00
James Turner
9a02d6ecb7 Mac launcher tweaks for release. 2013-02-09 11:04:50 +00:00
James Turner
20fffd5b2e Extend Linux release script: create base package.
This uses the same tactic as Mac-release; a filtered rsync from the map server's git checkout.
2013-02-09 10:34:26 +00:00
James Turner
bd19b4a2bd Update for revised nav-cache rebuild. 2013-02-04 08:40:44 +00:00
James Turner
cf425684a6 DMG file naming tweaks. 2013-02-01 14:45:30 +00:00
James Turner
ace2336cde Fixed MSAA option in Mac launcher 2013-02-01 10:00:59 +00:00
James Turner
abe9cb809a Bump to include Mac keypad fix. 2013-01-31 18:49:09 +00:00
James Turner
e72e6c5621 Mac launcher tweaks. 2013-01-31 14:02:02 +00:00
James Turner
33693907c3 Include the Options html file in the Mac DMG. 2013-01-31 09:26:45 +00:00
James Turner
55933a7621 Include GetStart and Short-Ref PDFs in the DMG.
Rather than hiding these inside the bundle, lift them up to a visible place.
2013-01-30 15:46:15 +00:00
James Turner
91fdda387d Bump to include Ati viewport hack. 2013-01-28 23:42:06 +00:00
James Turner
c2edd66b51 Updated Maclauncher version. 2013-01-28 16:14:16 +00:00
James Turner
94ea65ec2e Build Mac release build with debugInfo.
(Experimental, let's see if this helps testing)
2013-01-28 16:14:16 +00:00
James Turner
df6ee9a211 One more bump of the fg release branch. 2013-01-25 13:18:11 +01:00
James Turner
60c95026ec Bump FlightGear version for release branch. 2013-01-24 11:38:12 +01:00
James Turner
24fd57edd3 Bump to flightgear branch head. 2013-01-19 16:29:52 +00:00
James Turner
ecbee417b8 Use 2.10.0 branch for maclauncher too. 2013-01-19 16:28:58 +00:00
James Turner
2c2c819a44 Initial release-branch heads. 2013-01-18 13:17:41 +00:00
James Turner
bac9b55f06 Disable explicit SDK setting for Mac launcher.
Setting an SDK is breaking, but since the build slave is running our lowest supported OS version anyway, we can live with the default setting.
2013-01-18 13:13:22 +00:00
James Turner
4e9ab5aa80 Maclauncher: No 32-bit anymore! 2013-01-18 13:13:16 +00:00
James Turner
6380e284c2 Bump FG & SG to latest, testing release build. 2013-01-04 10:43:24 +00:00
James Turner
e27bfc00cf Remove any references to ALUT from Mac build. 2013-01-04 10:40:43 +00:00
James Turner
f165971a23 Merge branch 'refs/heads/release/2.8.0' 2013-01-04 10:37:42 +00:00
Frederic Bouvier
2ffc2e2161 Bump fgmeta to latest sources 2012-12-20 08:46:41 +01:00
Frederic Bouvier
675d32f137 Update to latest sources 2012-12-04 09:18:56 +01:00
Frederic Bouvier
24b0e27fee Fix the windows 64 release build 2012-12-04 09:18:22 +01:00
Frederic Bouvier
76abd56d61 Build release with last Boost 2012-11-30 19:52:22 +01:00
Frederic Bouvier
b60191638b Bump fgmeta to latest next 2012-11-30 16:30:35 +01:00
ThorstenB
73fac5dd6a Francesco Brisa: d&c script update
* fix OpenRTI support for simgear.
* fix package management on debian 6.0
2012-11-27 22:09:03 +01:00
ThorstenB
6941d72b9f Francesco Brisa: d&c script, F-JJTH has done some big improvements
Added OpenRTI to compilation list
Added FGX to compilation list
Simgear now can be compiled with openrti option.
Minor minor fixes for plib
2012-11-22 20:38:51 +01:00
ThorstenB
1b1be1678e Francesco Angelo Brisa: plib update for d&c script. 2012-11-20 19:40:35 +01:00
ThorstenB
babafbb198 Francesco Angelo Brisa: FGRun update for d&c script.
Also pulls FGrun from git repository now, thanks to Pac.
2012-11-01 13:28:51 +01:00
James Turner
a717c77ee9 Mac launcher fixes. 2012-09-17 23:02:55 +01:00
ThorstenB
48ad2d326f Bump sg+fg. 2012-09-04 00:00:42 +02:00
Frederic Bouvier
7cbc6a0439 Update fgmeta master to latest sources 2012-09-03 10:51:33 +02:00
James Turner
81f5a48973 Changes to Info.plist creation, fix copyright.
Info.plist now generates correct copyright strings based on the current year.
2012-08-28 13:47:37 +01:00
James Turner
f1f4fcb0d8 Bump FG version. 2012-08-25 14:55:34 +01:00
James Turner
083269de80 Fix ALUT naming, ooops. 2012-08-25 14:55:20 +01:00
ThorstenB
9a80c0103e Francesco Angelo Brisa: Updated d_and_c script for FG2.8.0 2012-08-23 20:49:07 +02:00
James Turner
23b0f4eea4 Bump flightgear head to 2.8.1 to get ATC crash fix. 2012-08-23 08:15:24 +01:00
James Turner
e13daffc46 Fix SV renaming for Mac release. 2012-08-22 22:34:27 +01:00
James Turner
154afebc45 Tweaks for building on different Jenkins slave. 2012-08-22 18:35:52 +01:00
James Turner
302b1ff5b7 Bump for Mac launcher tweak. 2012-08-19 20:25:34 +01:00
Frederic Bouvier
9ca5e06578 Give FG version to fgrun to control what path should be set and overwrite a previous installation in the preference file 2012-08-17 22:27:48 +02:00
Frederic Bouvier
c7ef5567d3 Bump for fgrun 2012-08-17 21:12:25 +02:00
Frederic Bouvier
78dfd31128 Build embedded fgrun 2012-08-17 21:07:05 +02:00
Frederic Bouvier
9fc39e9575 Bump master for test purposes 2012-08-15 23:55:23 +02:00
James Turner
2cb313c6f1 Bump for new Mac launcher head. 2012-08-14 19:51:50 +01:00
James Turner
3ea2728b69 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.
2012-08-14 12:11:48 +01:00
James Turner
0d7f99e261 Tweak Mac code-signing for 2.8 release. 2012-08-14 10:46:00 +01:00
James Turner
2382a0600a Bump to latest Mac launcher. 2012-08-13 14:26:47 +01:00
James Turner
41356c1aba Code-sign using the identity from the environment. 2012-08-13 14:26:33 +01:00
Frederic Bouvier
0a40a36041 Bump for rembrandt fix 2012-08-12 19:10:53 +02:00
James Turner
b400a2adc1 Bump release heads, enable SVN packaging. 2012-08-12 17:03:10 +01:00
Frederic Bouvier
3b202ff607 Bump for missing rembrandt uniforms 2012-08-11 12:30:38 +02:00
James Turner
69c46231d7 FGCom data copying for release package 2012-08-08 16:27:04 +01:00
James Turner
d8897780d2 Mac packaging tweaks
Pieces for libsvn deployment, code-signing and FGCom
2012-08-08 14:43:45 +01:00
Frederic Bouvier
dd0bbe0a05 Add fgrun git repository as git module for future release (not 2.8). Hand edited .gitmodules as msysgit doesn't modify that file 2012-08-05 23:24:00 +02:00
Frederic Bouvier
86d0cef390 Add fgrun git repository as git module for future release (not 2.8) 2012-08-05 22:47:38 +02:00
James Turner
f15b661076 Bump release head for PUI menubar crash fix. 2012-08-05 21:38:08 +01:00
Frederic Bouvier
e25d5289e2 Bump for another Rembrandt fix 2012-08-02 23:24:06 +02:00
Frederic Bouvier
e528468bd4 Bump for Rembrandt fix 2012-08-02 23:04:23 +02:00
James Turner
022f1791d9 Update Mac release build to sync from Telascience 2012-08-02 10:34:00 +01:00
James Turner
05f4f85b27 Bump for updated Mac launcher 2012-07-31 19:04:45 +01:00
James Turner
e7011cab66 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.
2012-07-31 19:02:26 +01:00
James Turner
8b782ce69b 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.
2012-07-31 11:02:38 +01:00
James Turner
7190575775 Bump Simgear head for Clang templates fix. 2012-07-31 09:02:46 +01:00
James Turner
06800a6c56 Bump FG release for Mac fixes. 2012-07-30 18:09:12 +01:00
James Turner
3e0eefa8f5 Bump release head for metar.exe fix on Windows. 2012-07-27 17:52:34 +01:00
Frederic Bouvier
5a31e3133f Give FG version to fgrun to control what path should be set and overwrite a previous installation in the preference file 2012-07-20 00:40:03 +02:00
ThorstenB
3d99ef3ea2 knock knock: 2.8.0 fg head 2012-07-20 00:25:52 +02:00
ThorstenB
a3c2a9424a Switch fgmeta's existing 2.8.0 branch to now track new sg/fg 2.8.0 branches 2012-07-17 19:01:58 +02:00
Frederic Bouvier
eebf4dbcaf Bump 2012-07-14 14:24:25 +02:00
Frederic Bouvier
868f7df661 Bump 2012-07-13 18:59:26 +02:00
Frederic Bouvier
26e6b859a5 Bump to latest next 2012-07-13 16:11:47 +02:00
ThorstenB
72d2bb9044 Bump 2.8.0 release head. 2012-07-04 22:26:39 +02:00
ThorstenB
7ef17cc4b2 Bump to 2.8.0 head 2012-06-26 23:25:33 +02:00
James Turner
9c0ccec847 Bump 2.8 fg+sg commits (still on next)
Checking that Mac release build increments ok.
2012-06-26 15:21:51 +01:00
James Turner
35bc589a04 Git-ignore updates for Mac build 2012-06-26 10:23:40 +01:00
James Turner
57cafd62e1 Fix DMG output path, oops. 2012-06-26 10:22:46 +01:00
James Turner
561b221448 Mac release builds should use static SimGear 2012-06-26 10:22:32 +01:00
James Turner
4c54c5feb6 Skip missing OSG plugins silently in Mac packaging 2012-06-26 09:17:42 +01:00
James Turner
1ff0264a57 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.
2012-06-25 14:14:58 +01:00
ThorstenB
4eb511c33d Prepare 2.8.0 branch.
fg/sg submodules still tracking "next" (until sg/fg are branched, too).
2012-06-23 14:28:42 +02:00
ThorstenB
ffa12d720b Francesco Brisa & F-JJTH: d&c script bugfixes 2012-04-20 19:28:06 +02:00
ThorstenB
45a38fe121 Francesco Angelo Brisa: d_and_compile now using out-of-directory builds
Building binaries in a separate directory keeps the original source
directory clean.
2012-04-18 10:38:22 +02:00
ThorstenB
eaed135885 Francesco Angelo Brisa: download_and_compile now using cmake for fgrun 2012-04-12 19:58:37 +02:00
ThorstenB
444ebf92e7 Merge branch 'release/2.6.0' 2012-03-01 22:51:57 +01:00
Frederic Bouvier
7f31b781cd Fix Win64 packaging (include win32 dlls for tools that are not available in 64bit) 2012-02-27 23:25:54 +01:00
Frederic Bouvier
a0b8fdd867 Add fgpanel to the release on Windows 2012-02-27 23:25:30 +01:00
Frederic Bouvier
a226592697 Call vcredist*.exe and oalinst.exe when available 2012-02-27 23:25:07 +01:00
Frederic Bouvier
0dc89062f2 Fix Win64 packaging (include win32 dlls for tools that are not available in 64bit) 2012-02-27 23:19:49 +01:00
ThorstenB
beb8dfebc8 Francesco Angelo Brisa: d&c script update for FG2.6.0
updated all the 2.4.0-final tags to 2.6.0-final.
compilation runs fine (2.7 version).
compilation using -s switch (2.6 version) runs fine.
2012-02-21 09:24:37 +01:00
Frederic Bouvier
e0c104c494 bump 2012-02-12 23:55:01 +01:00
ThorstenB
856c1108a2 bump 2012-02-12 20:06:43 +01:00
ThorstenB
4e737a93f1 bump 2012-02-11 17:13:06 +01:00
ThorstenB
5cd7da7e4c bump 2012-02-11 10:07:05 +01:00
Frederic Bouvier
f350707547 Add fgpanel to the release on Windows 2012-02-11 09:50:42 +01:00
ThorstenB
6f13418057 bump 2012-02-11 01:32:52 +01:00
ThorstenB
d7a3e9d743 bump 2012-02-10 22:46:47 +01:00
ThorstenB
53b0de6b12 Bump. 2012-02-10 21:21:24 +01:00
ThorstenB
bcebb30a35 bump 2012-02-06 23:25:46 +01:00
ThorstenB
cd10243834 Francesco Angelo Brisa: add required package for Atlas compilation 2012-02-06 21:22:38 +01:00
ThorstenB
f596081cb6 Bump. 2012-01-31 23:21:02 +01:00
Frederic Bouvier
3fbecf9997 Call vcredist*.exe and oalinst.exe when available 2012-01-30 09:16:48 +01:00
ThorstenB
5cd7c88bab bump release head 2012-01-29 14:41:00 +01:00
ThorstenB
324df28baa bump release head 2012-01-29 14:30:27 +01:00
ThorstenB
52e9019363 bump release head 2012-01-29 10:19:31 +01:00
Frederic Bouvier
39924c29ee Working dual (32/64bit) setup on windows 2012-01-27 09:10:26 +01:00
Frederic Bouvier
675002e298 Improve dual (32/64bit) setup on windows (not complete) 2012-01-27 09:10:26 +01:00
Frederic Bouvier
a71117b58f Try to fix fgsetup build by Inno Setup 2012-01-27 09:10:26 +01:00
Frederic Bouvier
3a9abdb092 Second try at building a 64-bit version of the release : flightgear 2012-01-27 09:10:26 +01:00
Frederic Bouvier
bea03a5011 First try at building a 64-bit version of the release : simgear 2012-01-27 09:10:26 +01:00
Frederic Bouvier
1e00b6a679 Move setting environment variable out of the build script 2012-01-27 09:10:26 +01:00
Frederic Bouvier
4d3fffd8e4 Adapt Inno-setup packaging to new build system 2012-01-27 09:10:25 +01:00
Frederic Bouvier
ad3595fdc6 First try at building Windows release with VS2010 and Cmake 2012-01-27 09:09:18 +01:00
Frederic Bouvier
0b66e49bc4 Working dual (32/64bit) setup on windows 2012-01-27 09:05:36 +01:00
Frederic Bouvier
32521d47a7 Improve dual (32/64bit) setup on windows (not complete) 2012-01-27 01:09:51 +01:00
Frederic Bouvier
47b9af454a Try to fix fgsetup build by Inno Setup 2012-01-26 08:59:53 +01:00
Frederic Bouvier
b61f1403db Second try at building a 64-bit version of the release : flightgear 2012-01-25 21:58:41 +01:00
Frederic Bouvier
0afd203f54 First try at building a 64-bit version of the release : simgear 2012-01-25 21:11:50 +01:00
James Turner
0b71935b7c Bump for bug 620 fix. (Cocoa menus) 2012-01-25 19:04:25 +00:00
ThorstenB
0b54827835 Bump. 2012-01-25 18:01:18 +01:00
Frederic Bouvier
e4348d7086 Move setting environment variable out of the build script 2012-01-24 08:06:20 +01:00
Frederic Bouvier
768400600c Adapt Inno-setup packaging to new build system 2012-01-23 23:29:26 +01:00
Frederic Bouvier
a3f33c5e97 First try at building Windows release with VS2010 and Cmake 2012-01-23 09:04:47 +01:00
ThorstenB
c90b114ac9 Update downl_and_comp script to version of Francesco Brisa 2012-01-22 19:19:02 +01:00
ThorstenB
f1ed5ae3eb Bump 2012-01-22 19:17:52 +01:00
ThorstenB
a22928912d Bump version to fg/sg release head. 2012-01-22 12:49:01 +01:00
ThorstenB
035dab673a Wipe artifacts of previous build. 2012-01-18 22:40:04 +01:00
ThorstenB
d54131041d Bump flightgear revision. 2012-01-18 21:43:34 +01:00
ThorstenB
cfde12ad6d Switch Linux release build to "SHARED_SIMGEAR". 2012-01-18 20:45:21 +01:00
ThorstenB
accced5c0e Also copy flightgear result to output directory. 2012-01-18 01:08:33 +01:00
ThorstenB
b894a457d7 Build release using separate directories.
Don't build in the git repositories' directories - so
they're always fresh and clean...
2012-01-18 00:32:16 +01:00
ThorstenB
427964586c Fix jenkins release build script
Properly build the source package.
2012-01-17 23:43:12 +01:00
ThorstenB
d243047bf8 Update jenkins releae build script to use CMake 2012-01-17 22:36:46 +01:00
ThorstenB
cf87d84cfe Bump fg+sg references to release/2.6.0 2012-01-17 22:27:31 +01:00
ThorstenB
eb5c64e656 Download_and_compile update 1.7
(Removed the Xinerama/Xft hacks, since the issue should be fixed in
git/next).
2012-01-03 22:04:42 +01:00
ThorstenB
85635d4f68 Francesco Brisa: ubuntu + cmake update for downl_and_compile script
- switch to CMake
- support for Ubuntu 11.10 (beta 2)
2011-09-27 21:00:02 +02:00
ThorstenB
db795fbca7 Francesco Brisa: Ubuntu/Debian-specific package dependencies for down&compile script 2011-09-18 11:25:48 +02:00
ThorstenB
bcd325c78d Francesco Brisa: add FGO! to build script 2011-08-24 20:34:30 +02:00
ThorstenB
4c949dff4d download_and_compile.sh: ignore errors when creating branches
Branches may already exist, errors must be properly since the "-e" flag
is set to abort the script on any errors.
Thanks to Francesco for testing.
2011-08-18 21:19:32 +02:00
ThorstenB
bf9d84fb3a Update download_and_compile script for FG2.4.0
More GIT magic: cleanly switch between stable and unstable branches.
2011-08-18 21:18:03 +02:00
ThorstenB
379aa18877 Update download_and_compile script for FG2.4.0
Pick up 2.4.0 release tag for stable version (Note: specifying commit IDs
alone doesn't work - since the same commits are on different branches =>
either use commitID+branch or preferably the release-tag).
Update FGRUN stable version for FG2.4.0

Conflicts:

	download_and_compile.sh
2011-08-18 21:17:54 +02:00
Frederic Bouvier
9f8fb2fc03 Fix typo in 64-bit plugin deployment 2011-08-01 23:39:42 +02:00
Frederic Bouvier
ade63a8bc3 Add several OSG plugins required by some models 2011-08-01 22:55:00 +02:00
ThorstenB
fdf2311152 Update download_and_compile script to use OSG3.0.1 with fg GIT 2011-07-31 14:40:03 +02:00
Torsten Dreyer
ecc8111986 Fix typo in hudson win32/64 build scripts
Also remove obsolete build of SimGear which is included
in the build of the solution.
2011-07-29 14:12:32 +02:00
James Turner
5c289cb98c Set next versions of FG/SG, for testing 2011-05-21 15:11:57 +01:00
James Turner
8302a21ef7 Pickup SimGear version from its workspace (only works with 2.3.0 or higher) 2011-05-21 15:11:22 +01:00
20 changed files with 2336 additions and 649 deletions

14
.gitignore vendored
View File

@@ -5,3 +5,17 @@ install
boost_1_44_0
InstallConfig.iss
Output
output
fgBuild
sgBuild
image
build
macflightgear
fgdata
src
tmp
Makefile
CMakeFiles
archivebuild
osgbuild
CMakeCache.txt

6
.gitmodules vendored
View File

@@ -4,3 +4,9 @@
[submodule "flightgear"]
path = flightgear
url = git://gitorious.org/fg/flightgear.git
[submodule "fgrun"]
path = fgrun
url = git://gitorious.org/fg/fgrun.git
[submodule "maclauncher"]
path = maclauncher
url = git://gitorious.org/fg/maclauncher.git

233
CMakeLists.txt Normal file
View File

@@ -0,0 +1,233 @@
cmake_minimum_required (VERSION 2.6.4)
include (ExternalProject)
project(FlightGear-Meta)
if(NOT CMAKE_INSTALL_PREFIX)
set(CMAKE_INSTALL_PREFIX ${CMAKE_BINARY_DIR}/install)
message(STATUS "Default install dir to ${CMAKE_INSTALL_PREFIX}")
endif()
if (UNIX)
set(BOOST_BOOTSTRAP "./bootstrap.sh" --prefix=${CMAKE_INSTALL_PREFIX})
else()
set(BOOST_BOOTSTRAP "bootstrap.bat")
endif()
set(SG_DEPS OSG)
set(FG_DEPS SimGear)
set(SG_CMAKE_ARGS "")
set(FG_CMAKE_ARGS "")
set(FGRUN_CMAKE_ARGS "")
if(APPLE)
set(BOOST_ARGS link=static stage --with-system)
ExternalProject_Add(Boost
PREFIX ${CMAKE_BINARY_DIR}
SVN_REPOSITORY http://svn.boost.org/svn/boost/tags/release/Boost_1_52_0
UPDATE_COMMAND ${BOOST_BOOTSTRAP}
CONFIGURE_COMMAND ""
BUILD_COMMAND ./bjam ${BOOST_ARGS}
BUILD_IN_SOURCE 1
INSTALL_COMMAND ./b2 install ${BOOST_ARGS})
list(APPEND SG_DEPS Boost)
endif() # of Apple
set(OSG_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX})
set(SG_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX})
set(FG_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX})
set(PLIB_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX})
set(RTI_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX})
set(FGRUN_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX})
# OpenSceneGraph configuration
set(OSG_SOURCE http://www.openscenegraph.org/downloads/developer_releases/OpenSceneGraph-3.2.0.zip)
if (APPLE)
set(SDKROOT /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk)
# force disable Qt and Jasper, and ensure an SDKROOT is set, or
# osgViewer system detection goes wrongh
set(OSG_CMAKE_ARGS -DCMAKE_OSX_SYSROOT=${SDKROOT}
-DOSG_USE_QT=0
-DJASPER_LIBRARY=
-DSDL_LIBRARY:FILEPATH=
-DCMAKE_OSX_ARCHITECTURES=x86_64
-DCMAKE_OSX_DEPLOYMENT_TARGET=10.7
)
# OSG with some patches applied for Mac
# set(OSG_SOURCE GIT_REPOSITORY git://gitorious.org/+flightgear-developers/openscenegraph/mac-release-osg.git)
# set(OSG_SOURCE URL http://www.openscenegraph.org/downloads/developer_releases/OpenSceneGraph-3.2.0.zip)
elseif(MSVC)
set(OSG_MSVC "msvc")
if (${MSVC_VERSION} EQUAL 1700)
set(OSG_MSVC ${OSG_MSVC}110)
elseif (${MSVC_VERSION} EQUAL 1600)
set(OSG_MSVC ${OSG_MSVC}100)
else (${MSVC_VERSION} EQUAL 1700)
set(OSG_MSVC ${OSG_MSVC}90)
endif (${MSVC_VERSION} EQUAL 1700)
if (CMAKE_CL_64)
set(OSG_MSVC ${OSG_MSVC}-64)
set(RDPARTY_DIR 3rdParty.x64)
list(APPEND FG_CMAKE_ARGS -DWITH_FGPANEL=OFF)
else ()
set(RDPARTY_DIR 3rdParty)
endif (CMAKE_CL_64)
SET(OSG_CMAKE_ARGS
-DACTUAL_3RDPARTY_DIR:PATH=${CMAKE_BINARY_DIR}/${RDPARTY_DIR}
-DBUILD_OSG_APPLICATIONS:BOOL=ON
-DOSG_PLUGIN_SEARCH_INSTALL_DIR_FOR_PLUGINS:BOOL=OFF
-DFREETYPE_LIBRARY:FILEPATH=${CMAKE_BINARY_DIR}/${RDPARTY_DIR}/lib/freetype243.lib
-DGDAL_INCLUDE_DIR:PATH=
-DGDAL_LIBRARY:FILEPATH=
)
# for compatability with MSVC directory layout
set(OSG_INSTALL_PREFIX ${OSG_INSTALL_PREFIX}/${OSG_MSVC}/OpenSceneGraph)
set(FGRUN_INSTALL_PREFIX ${FGRUN_INSTALL_PREFIX}/${OSG_MSVC}/FGRun)
set(FG_INSTALL_PREFIX ${FG_INSTALL_PREFIX}/${OSG_MSVC}/FlightGear)
set(SG_INSTALL_PREFIX ${SG_INSTALL_PREFIX}/${OSG_MSVC}/SimGear)
list(APPEND OSG_DEPS WinDeps)
else()
# normal OSG
endif()
if (MSVC)
# download 3rdparty dependencies zip, including boost
ExternalProject_Add(WinDeps
SVN_REPOSITORY http://fgfs.goneabitbursar.com/fgwin3rdparty/trunk/msvc100/${RDPARTY_DIR}
# extract to current root
SOURCE_DIR ${CMAKE_BINARY_DIR}/winDeps/${RDPARTY_DIR}
BINARY_DIR ${CMAKE_BINARY_DIR}
UPDATE_COMMAND ""
CONFIGURE_COMMAND ""
BUILD_COMMAND ${CMAKE_SOURCE_DIR}/installWinDeps.bat
INSTALL_COMMAND ""
)
set(BOOST_ARGS link=static stage --with-system)
set(Boost_Version 1.54.0)
string(REPLACE "." "_" Boost_Version_Underscore ${Boost_Version})
ExternalProject_Add(Boost
PREFIX ${CMAKE_BINARY_DIR}
URL http://downloads.sourceforge.net/project/boost/boost/${Boost_Version}/boost_${Boost_Version_Underscore}.zip
URL_MD5 78a35834c45220a6164310e280abe675
UPDATE_COMMAND ""
CONFIGURE_COMMAND ${BOOST_BOOTSTRAP}
BUILD_COMMAND bjam --with-program_options ${BOOST_ARGS}
BUILD_IN_SOURCE 1
INSTALL_COMMAND ""
)
list(APPEND SG_DEPS Boost)
list(APPEND SG_CMAKE_ARGS -DBOOST_ROOT=${CMAKE_BINARY_DIR}/src/Boost)
list(APPEND FG_CMAKE_ARGS -DBOOST_ROOT=${CMAKE_BINARY_DIR}/src/Boost)
list(APPEND FGRUN_CMAKE_ARGS -DBOOST_ROOT=${CMAKE_BINARY_DIR}/src/Boost)
endif(MSVC) # of Windows
ExternalProject_Add(OSG
DEPENDS ${OSG_DEPS}
PREFIX ${CMAKE_BINARY_DIR}
URL ${OSG_SOURCE}
URL_HASH MD5=4980f8692712a24d4c99f363f80c6814
BINARY_DIR osgbuild
CMAKE_ARGS ${OSG_CMAKE_ARGS} -DCMAKE_INSTALL_PREFIX=${OSG_INSTALL_PREFIX}
)
# Because OSG install the libraries in lib64/ instead of lib/
if (${CMAKE_SYSTEM_NAME} MATCHES "Linux")
ExternalProject_Add_Step(OSG after_install
COMMAND ${CMAKE_COMMAND} -E copy_directory ${OSG_INSTALL_PREFIX}/lib64 ${OSG_INSTALL_PREFIX}/lib
COMMAND ${CMAKE_COMMAND} -E remove_directory ${OSG_INSTALL_PREFIX}/lib64
DEPENDEES install
)
endif(${CMAKE_SYSTEM_NAME} MATCHES "Linux")
# FIXME install of OpenRTI is failing on Windows, files in PREFIX/share which
# are ending up in C:/Program Files/OpenRTI
if (NOT MSVC)
ExternalProject_Add(OpenRTI
PREFIX ${CMAKE_BINARY_DIR}
DOWNLOAD_COMMAND GIT_REPOSITORY git://gitorious.org/openrti/openrti.git
BINARY_DIR rtibuild
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${RTI_INSTALL_PREFIX}
)
list(APPEND SG_DEPS OpenRTI)
list(APPEND SG_CMAKE_ARGS -DENABLE_RTI=1)
list(APPEND FG_CMAKE_ARGS -DENABLE_RTI=1)
endif()
ExternalProject_Add(SimGear
PREFIX ${CMAKE_BINARY_DIR}
DEPENDS ${SG_DEPS}
DOWNLOAD_COMMAND "" # no need to download
UPDATE_COMMAND "" # or update.
SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/simgear
BINARY_DIR sgbuild
CMAKE_ARGS ${SG_CMAKE_ARGS} -DCMAKE_INSTALL_PREFIX=${SG_INSTALL_PREFIX} -DCMAKE_PREFIX_PATH=${OSG_INSTALL_PREFIX}
)
# because we download SimGear externally (via Git submodules),
# the change-detection doesn't work. Ensure we always change
# for changes
ExternalProject_Add_Step(SimGear forcebuild
ALWAYS 1
COMMAND ${CMAKE_COMMAND} -E echo foo
DEPENDERS build
)
# on Windows, PLIB is in the 3rd-party dependencies zip
if (NOT WIN32)
set(PLIB_ARGS --disable-pw --disable-sl --disable-psl --disable-ssg --disable-ssgaux)
ExternalProject_Add(PLIB
PREFIX ${CMAKE_BINARY_DIR}
URL http://plib.sourceforge.net/dist/plib-1.8.5.tar.gz
URL_HASH MD5=47a6fbf63668c1eed631024038b2ea90
CONFIGURE_COMMAND <SOURCE_DIR>/configure --prefix=${PLIB_INSTALL_PREFIX} ${PLIB_ARGS}
BUILD_IN_SOURCE 1
)
list(APPEND FG_DEPS PLIB)
endif()
# Only compile FGRun for Windows
if (MSVC)
list(APPEND FGRUN_CMAKE_ARGS -DMSVC_3RDPARTY_ROOT:PATH=${CMAKE_BINARY_DIR})
list(APPEND FGRUN_CMAKE_ARGS -DFLTK_FLUID_EXECUTABLE:FILEPATH=${CMAKE_BINARY_DIR}/${RDPARTY_DIR}/bin/fluid.exe)
list(APPEND FGRUN_CMAKE_ARGS -DGETTEXT_MSGFMT_EXECUTABLE:FILEPATH==${CMAKE_BINARY_DIR}/${RDPARTY_DIR}/bin/msgfmt.exe)
list(APPEND FGRUN_CMAKE_ARGS -DGETTEXT_MSGMERGE_EXECUTABLE:FILEPATH=${CMAKE_BINARY_DIR}/${RDPARTY_DIR}/bin/msgmerge.exe)
ExternalProject_Add(FGRun
PREFIX ${CMAKE_BINARY_DIR}
DEPENDS ${FG_DEPS}
DOWNLOAD_COMMAND "" # no need to download
UPDATE_COMMAND "" # or update.
SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/fgrun
BINARY_DIR fgrunbuild
CMAKE_ARGS ${FGRUN_CMAKE_ARGS} -DCMAKE_INSTALL_PREFIX=${FGRUN_INSTALL_PREFIX} -DCMAKE_PREFIX_PATH=${OSG_INSTALL_PREFIX} -DADDITIONAL_LIBRARY_PATHS=${SG_INSTALL_PREFIX}
)
endif()
ExternalProject_Add(FlightGear
PREFIX ${CMAKE_BINARY_DIR}
DEPENDS ${FG_DEPS}
DOWNLOAD_COMMAND "" # no need to download
UPDATE_COMMAND "" # or update.
SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/flightgear
BINARY_DIR fgbuild
CMAKE_ARGS ${FG_CMAKE_ARGS} -DCMAKE_INSTALL_PREFIX=${FG_INSTALL_PREFIX} -DCMAKE_PREFIX_PATH=${OSG_INSTALL_PREFIX} -DADDITIONAL_LIBRARY_PATHS=${SG_INSTALL_PREFIX}
)
# because we download FlightGear externally (via Git submodules),
# the change-detection doesn't work. Ensure we always change
# for changes
ExternalProject_Add_Step(FlightGear forcebuild
ALWAYS 1
COMMAND ${CMAKE_COMMAND} -E echo foo
DEPENDERS build
)

View File

@@ -21,16 +21,16 @@
#include "InstallConfig.iss"
#if GetEnv("VSINSTALLDIR") == ""
#define VSInstallDir "C:\Program Files\Microsoft Visual Studio 9.0"
#define VSInstallDir "C:\Program Files (x86)\Microsoft Visual Studio 10.0"
#else
#define VSInstallDir GetEnv("VSINSTALLDIR")
#endif
#define VCInstallDir VSInstallDir + "\VC"
#define OSGInstallDir "X:\install\msvc90\OpenSceneGraph"
#define OSGInstallDir "X:\install\msvc100\OpenSceneGraph"
#define OSGPluginsDir OSGInstallDir + "\bin\osgPlugins-" + OSGVersion
#define OSG64InstallDir "X:\install\msvc90-64\OpenSceneGraph"
#define OSG64InstallDir "X:\install\msvc100-64\OpenSceneGraph"
#define OSG64PluginsDir OSG64InstallDir + "\bin\osgPlugins-" + OSGVersion
[Setup]
@@ -46,79 +46,136 @@ 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
WizardSmallImageFile=X:\flightgear\package\Win32-Inno\setupsmall.bmp
VersionInfoCompany=The FlightGear Team
UninstallDisplayIcon=X:\flightgear\projects\VC90\flightgear.ico
ArchitecturesInstallIn64BitMode=x64
ArchitecturesAllowed=x86 x64
[Tasks]
; NOTE: The following entry contains English phrases ("Create a desktop icon" and "Additional icons"). You are free to translate them into another language if required.
Name: "desktopicon"; Description: "Create a &desktop icon"; GroupDescription: "Additional icons:"
Name: "insoal"; Description: "Install OpenAL (the sound engine)"
Name: "force32"; Description: "Force 32bit install on 64bit system"; Check: Is64BitInstallMode
[Files]
; NOTE: run subst X: F:\ (or whatever path the expanded tree resides at)
;Source: "X:\*.txt"; DestDir: "{app}"; Flags: ignoreversion
Source: "X:\flightgear\projects\VC90\Win32\Release\*.exe"; DestDir: "{app}\bin\Win32"; Flags: ignoreversion
Source: "X:\flightgear\projects\VC90\x64\Release\*.exe"; DestDir: "{app}\bin\Win64"; Flags: ignoreversion skipifsourcedoesntexist
Source: "X:\fgrun\msvc\9.0\Win32\Release\fgrun.exe"; DestDir: "{app}\bin\Win32"; Flags: ignoreversion
Source: "X:\fgrun\msvc\9.0\Win32\Release\locale\*"; DestDir: "{app}\bin\Win32\locale"; Flags: ignoreversion recursesubdirs
Source: "X:\fgrun\msvc\9.0\x64\Release\fgrun.exe"; DestDir: "{app}\bin\Win64"; Flags: ignoreversion
Source: "X:\fgrun\msvc\9.0\Win32\Release\locale\*"; DestDir: "{app}\bin\Win64\locale"; Flags: ignoreversion recursesubdirs
Source: "X:\install\msvc100\FlightGear\bin\fgfs.exe"; DestDir: "{app}\bin\Win32"; Flags: ignoreversion; Check: not Is64BitInstallMode or IsTaskSelected('force32')
Source: "X:\install\msvc100-64\FlightGear\bin\fgfs.exe"; DestDir: "{app}\bin\Win64"; Flags: ignoreversion skipifsourcedoesntexist; Check: Is64BitInstallMode and not IsTaskSelected('force32')
;Unconditional install
Source: "X:\install\msvc100\FlightGear\bin\fgadmin.exe"; DestDir: "{app}\bin\Win32"; Flags: ignoreversion
Source: "X:\install\msvc100\FlightGear\bin\terrasync.exe"; DestDir: "{app}\bin\Win32"; Flags: ignoreversion
Source: "X:\install\msvc100\FlightGear\bin\js_demo.exe"; DestDir: "{app}\bin\Win32"; Flags: ignoreversion
Source: "X:\install\msvc100\FlightGear\bin\fgjs.exe"; DestDir: "{app}\bin\Win32"; Flags: ignoreversion
Source: "X:\install\msvc100\FlightGear\bin\fgpanel.exe"; DestDir: "{app}\bin\Win32"; Flags: ignoreversion
Source: "X:\install\msvc100\FlightGear\bin\GPSsmooth.exe"; DestDir: "{app}\bin\Win32"; Flags: ignoreversion
Source: "X:\install\msvc100\FlightGear\bin\UGsmooth.exe"; DestDir: "{app}\bin\Win32"; Flags: ignoreversion
Source: "X:\install\msvc100\FlightGear\bin\MIDGsmooth.exe"; DestDir: "{app}\bin\Win32"; Flags: ignoreversion
Source: "X:\install\msvc100\FlightGear\bin\metar.exe"; DestDir: "{app}\bin\Win32"; Flags: ignoreversion
Source: "X:\install\msvc100\FlightGear\bin\yasim.exe"; DestDir: "{app}\bin\Win32"; Flags: ignoreversion
Source: "X:\3rdParty\bin\*.dll"; DestDir: "{app}\bin\Win32"
Source: "X:\3rdParty.x64\bin\*.dll"; DestDir: "{app}\bin\Win64"; Flags: skipifsourcedoesntexist; Check: Is64BitInstallMode
Source: "{#VCInstallDir}\redist\x86\Microsoft.VC90.CRT\*.dll"; DestDir: "{app}\bin\Win32"
Source: "{#VCInstallDir}\redist\x64\Microsoft.VC90.CRT\*.dll"; DestDir: "{app}\bin\Win64"; Flags: skipifsourcedoesntexist; Check: Is64BitInstallMode
Source: "X:\install\msvc100\FlightGear\bin\fgcom.exe"; DestDir: "{app}\bin\Win32"; Flags: ignoreversion
Source: "X:\install\msvc100\FlightGear\share\flightgear\positions.txt"; DestDir: "{app}\share\flightgear"
Source: "X:\install\msvc100\FlightGear\share\flightgear\special_frequencies.txt"; DestDir: "{app}\share\flightgear"
Source: "X:\install\msvc100\FGRun\bin\fgrun.exe"; DestDir: "{app}\bin\Win32"; Flags: ignoreversion ; Check: not Is64BitInstallMode or IsTaskSelected('force32')
Source: "X:\install\msvc100\FGRun\share\locale\*"; DestDir: "{app}\bin\Win32\locale"; Flags: ignoreversion recursesubdirs; Check: not Is64BitInstallMode or IsTaskSelected('force32')
Source: "X:\install\msvc100-64\FGRun\bin\fgrun.exe"; DestDir: "{app}\bin\Win64"; Flags: ignoreversion skipifsourcedoesntexist; Check: Is64BitInstallMode and not IsTaskSelected('force32')
Source: "X:\install\msvc100-64\FGRun\share\locale\*"; DestDir: "{app}\bin\Win64\locale"; Flags: ignoreversion recursesubdirs skipifsourcedoesntexist; Check: Is64BitInstallMode and not IsTaskSelected('force32')
Source: "X:\3rdParty.x64\bin\*.dll"; DestDir: "{app}\bin\Win64"; Flags: skipifsourcedoesntexist; Check: Is64BitInstallMode and not IsTaskSelected('force32')
Source: "{#VCInstallDir}\redist\x86\Microsoft.VC100.CRT\*.dll"; DestDir: "{app}\bin\Win32"
Source: "{#VCInstallDir}\redist\x64\Microsoft.VC100.CRT\*.dll"; DestDir: "{app}\bin\Win64"; Flags: skipifsourcedoesntexist; Check: Is64BitInstallMode and not IsTaskSelected('force32')
Source: "X:\3rdParty\bin\vcredist_x86.exe"; DestDir: "{app}\bin\Win32"; Flags: skipifsourcedoesntexist
Source: "X:\3rdParty.x64\bin\vcredist_x64.exe"; DestDir: "{app}\bin\Win64"; Flags: skipifsourcedoesntexist; Check: Is64BitInstallMode and not IsTaskSelected('force32')
Source: "X:\3rdParty\bin\oalinst.exe"; DestDir: "{app}\bin\Win32"; Flags: ignoreversion skipifsourcedoesntexist
Source: "X:\data\*.*"; DestDir: "{app}\data"; Flags: ignoreversion recursesubdirs skipifsourcedoesntexist
; NOTE: tar.gz file uses name 'fgdata', to avoid renaming it, look for both names.
; assuming no setup has both names and hence we don't package twice :)
Source: "X:\fgdata\*.*"; DestDir: "{app}\data"; Flags: ignoreversion recursesubdirs skipifsourcedoesntexist
Source: "{#OSGInstallDir}\bin\osg{#OSGSoNumber}-osg.dll"; DestDir: "{app}\bin\Win32"
Source: "{#OSGInstallDir}\bin\osg{#OSGSoNumber}-osgDB.dll"; DestDir: "{app}\bin\Win32"
Source: "{#OSGInstallDir}\bin\osg{#OSGSoNumber}-osgGA.dll"; DestDir: "{app}\bin\Win32"
Source: "{#OSGInstallDir}\bin\osg{#OSGSoNumber}-osgParticle.dll"; DestDir: "{app}\bin\Win32"
Source: "{#OSGInstallDir}\bin\osg{#OSGSoNumber}-osgText.dll"; DestDir: "{app}\bin\Win32"
Source: "{#OSGInstallDir}\bin\osg{#OSGSoNumber}-osgUtil.dll"; DestDir: "{app}\bin\Win32"
Source: "{#OSGInstallDir}\bin\osg{#OSGSoNumber}-osgViewer.dll"; DestDir: "{app}\bin\Win32"
Source: "{#OSGInstallDir}\bin\osg{#OSGSoNumber}-osgSim.dll"; DestDir: "{app}\bin\Win32"
Source: "{#OSGInstallDir}\bin\osg{#OSGSoNumber}-osgFX.dll"; DestDir: "{app}\bin\Win32"
Source: "{#OSGInstallDir}\bin\osg{#OSGSoNumber}-osg.dll"; DestDir: "{app}\bin\Win32"; Check: not Is64BitInstallMode or IsTaskSelected('force32')
Source: "{#OSGInstallDir}\bin\osg{#OSGSoNumber}-osgDB.dll"; DestDir: "{app}\bin\Win32"; Check: not Is64BitInstallMode or IsTaskSelected('force32')
Source: "{#OSGInstallDir}\bin\osg{#OSGSoNumber}-osgGA.dll"; DestDir: "{app}\bin\Win32"; Check: not Is64BitInstallMode or IsTaskSelected('force32')
Source: "{#OSGInstallDir}\bin\osg{#OSGSoNumber}-osgParticle.dll"; DestDir: "{app}\bin\Win32"; Check: not Is64BitInstallMode or IsTaskSelected('force32')
Source: "{#OSGInstallDir}\bin\osg{#OSGSoNumber}-osgText.dll"; DestDir: "{app}\bin\Win32"; Check: not Is64BitInstallMode or IsTaskSelected('force32')
Source: "{#OSGInstallDir}\bin\osg{#OSGSoNumber}-osgUtil.dll"; DestDir: "{app}\bin\Win32"; Check: not Is64BitInstallMode or IsTaskSelected('force32')
Source: "{#OSGInstallDir}\bin\osg{#OSGSoNumber}-osgViewer.dll"; DestDir: "{app}\bin\Win32"; Check: not Is64BitInstallMode or IsTaskSelected('force32')
Source: "{#OSGInstallDir}\bin\osg{#OSGSoNumber}-osgSim.dll"; DestDir: "{app}\bin\Win32"; Check: not Is64BitInstallMode or IsTaskSelected('force32')
Source: "{#OSGInstallDir}\bin\osg{#OSGSoNumber}-osgFX.dll"; DestDir: "{app}\bin\Win32"; Check: not Is64BitInstallMode or IsTaskSelected('force32')
Source: "{#OSGInstallDir}\bin\ot12-OpenThreads.dll"; DestDir: "{app}\bin\Win32"
Source: "{#OSGInstallDir}\bin\ot{#OTSoNumber}-OpenThreads.dll"; DestDir: "{app}\bin\Win32"; Check: not Is64BitInstallMode or IsTaskSelected('force32')
Source: "{#OSGPluginsDir}\osgdb_ac.dll"; DestDir: "{app}\bin\Win32\osgPlugins-{#OSGVersion}"
Source: "{#OSGPluginsDir}\osgdb_osg.dll"; DestDir: "{app}\bin\Win32\osgPlugins-{#OSGVersion}"
Source: "{#OSGPluginsDir}\osgdb_3ds.dll"; DestDir: "{app}\bin\Win32\osgPlugins-{#OSGVersion}"
Source: "{#OSGPluginsDir}\osgdb_mdl.dll"; DestDir: "{app}\bin\Win32\osgPlugins-{#OSGVersion}"
Source: "{#OSGPluginsDir}\osgdb_jpeg.dll"; DestDir: "{app}\bin\Win32\osgPlugins-{#OSGVersion}"
Source: "{#OSGPluginsDir}\osgdb_rgb.dll"; DestDir: "{app}\bin\Win32\osgPlugins-{#OSGVersion}"
Source: "{#OSGPluginsDir}\osgdb_png.dll"; DestDir: "{app}\bin\Win32\osgPlugins-{#OSGVersion}"
Source: "{#OSGPluginsDir}\osgdb_txf.dll"; DestDir: "{app}\bin\Win32\osgPlugins-{#OSGVersion}"
Source: "{#OSGPluginsDir}\osgdb_ac.dll"; DestDir: "{app}\bin\Win32\osgPlugins-{#OSGVersion}"; Check: not Is64BitInstallMode or IsTaskSelected('force32')
Source: "{#OSGPluginsDir}\osgdb_osg.dll"; DestDir: "{app}\bin\Win32\osgPlugins-{#OSGVersion}"; Check: not Is64BitInstallMode or IsTaskSelected('force32')
Source: "{#OSGPluginsDir}\osgdb_osga.dll"; DestDir: "{app}\bin\Win32\osgPlugins-{#OSGVersion}"; Check: not Is64BitInstallMode or IsTaskSelected('force32')
Source: "{#OSGPluginsDir}\osgdb_3ds.dll"; DestDir: "{app}\bin\Win32\osgPlugins-{#OSGVersion}"; Check: not Is64BitInstallMode or IsTaskSelected('force32')
Source: "{#OSGPluginsDir}\osgdb_mdl.dll"; DestDir: "{app}\bin\Win32\osgPlugins-{#OSGVersion}"; Check: not Is64BitInstallMode or IsTaskSelected('force32')
Source: "{#OSGPluginsDir}\osgdb_jpeg.dll"; DestDir: "{app}\bin\Win32\osgPlugins-{#OSGVersion}"; Check: not Is64BitInstallMode or IsTaskSelected('force32')
Source: "{#OSGPluginsDir}\osgdb_rgb.dll"; DestDir: "{app}\bin\Win32\osgPlugins-{#OSGVersion}"; Check: not Is64BitInstallMode or IsTaskSelected('force32')
Source: "{#OSGPluginsDir}\osgdb_png.dll"; DestDir: "{app}\bin\Win32\osgPlugins-{#OSGVersion}"; Check: not Is64BitInstallMode or IsTaskSelected('force32')
Source: "{#OSGPluginsDir}\osgdb_dds.dll"; DestDir: "{app}\bin\Win32\osgPlugins-{#OSGVersion}"; Check: not Is64BitInstallMode or IsTaskSelected('force32')
Source: "{#OSGPluginsDir}\osgdb_txf.dll"; DestDir: "{app}\bin\Win32\osgPlugins-{#OSGVersion}"; Check: not Is64BitInstallMode or IsTaskSelected('force32')
Source: "{#OSGPluginsDir}\osgdb_freetype.dll"; DestDir: "{app}\bin\Win32\osgPlugins-{#OSGVersion}"; Check: not Is64BitInstallMode or IsTaskSelected('force32')
Source: "{#OSGPluginsDir}\osgdb_serializers_osg.dll"; DestDir: "{app}\bin\Win32\osgPlugins-{#OSGVersion}"; Check: not Is64BitInstallMode or IsTaskSelected('force32')
Source: "{#OSGPluginsDir}\osgdb_serializers_osganimation.dll"; DestDir: "{app}\bin\Win32\osgPlugins-{#OSGVersion}"; Check: not Is64BitInstallMode or IsTaskSelected('force32')
Source: "{#OSGPluginsDir}\osgdb_serializers_osgfx.dll"; DestDir: "{app}\bin\Win32\osgPlugins-{#OSGVersion}"; Check: not Is64BitInstallMode or IsTaskSelected('force32')
Source: "{#OSGPluginsDir}\osgdb_serializers_osgmanipulator.dll"; DestDir: "{app}\bin\Win32\osgPlugins-{#OSGVersion}"; Check: not Is64BitInstallMode or IsTaskSelected('force32')
Source: "{#OSGPluginsDir}\osgdb_serializers_osgparticle.dll"; DestDir: "{app}\bin\Win32\osgPlugins-{#OSGVersion}"; Check: not Is64BitInstallMode or IsTaskSelected('force32')
Source: "{#OSGPluginsDir}\osgdb_serializers_osgshadow.dll"; DestDir: "{app}\bin\Win32\osgPlugins-{#OSGVersion}"; Check: not Is64BitInstallMode or IsTaskSelected('force32')
Source: "{#OSGPluginsDir}\osgdb_serializers_osgsim.dll"; DestDir: "{app}\bin\Win32\osgPlugins-{#OSGVersion}"; Check: not Is64BitInstallMode or IsTaskSelected('force32')
Source: "{#OSGPluginsDir}\osgdb_serializers_osgterrain.dll"; DestDir: "{app}\bin\Win32\osgPlugins-{#OSGVersion}"; Check: not Is64BitInstallMode or IsTaskSelected('force32')
Source: "{#OSGPluginsDir}\osgdb_serializers_osgtext.dll"; DestDir: "{app}\bin\Win32\osgPlugins-{#OSGVersion}"; Check: not Is64BitInstallMode or IsTaskSelected('force32')
Source: "{#OSGPluginsDir}\osgdb_serializers_osgvolume.dll"; DestDir: "{app}\bin\Win32\osgPlugins-{#OSGVersion}"; Check: not Is64BitInstallMode or IsTaskSelected('force32')
Source: "{#OSGPluginsDir}\osgdb_deprecated_osg.dll"; DestDir: "{app}\bin\Win32\osgPlugins-{#OSGVersion}"; Check: not Is64BitInstallMode or IsTaskSelected('force32')
Source: "{#OSGPluginsDir}\osgdb_deprecated_osgparticle.dll"; DestDir: "{app}\bin\Win32\osgPlugins-{#OSGVersion}"; Check: not Is64BitInstallMode or IsTaskSelected('force32')
Source: "{#OSG64InstallDir}\bin\osg{#OSGSoNumber}-osg.dll"; DestDir: "{app}\bin\Win64"; Flags: skipifsourcedoesntexist
Source: "{#OSG64InstallDir}\bin\osg{#OSGSoNumber}-osgDB.dll"; DestDir: "{app}\bin\Win64"; Flags: skipifsourcedoesntexist
Source: "{#OSG64InstallDir}\bin\osg{#OSGSoNumber}-osgGA.dll"; DestDir: "{app}\bin\Win64"; Flags: skipifsourcedoesntexist
Source: "{#OSG64InstallDir}\bin\osg{#OSGSoNumber}-osgParticle.dll"; DestDir: "{app}\bin\Win64"; Flags: skipifsourcedoesntexist
Source: "{#OSG64InstallDir}\bin\osg{#OSGSoNumber}-osgText.dll"; DestDir: "{app}\bin\Win64"; Flags: skipifsourcedoesntexist
Source: "{#OSG64InstallDir}\bin\osg{#OSGSoNumber}-osgUtil.dll"; DestDir: "{app}\bin\Win64"; Flags: skipifsourcedoesntexist
Source: "{#OSG64InstallDir}\bin\osg{#OSGSoNumber}-osgViewer.dll"; DestDir: "{app}\bin\Win64"; Flags: skipifsourcedoesntexist
Source: "{#OSG64InstallDir}\bin\osg{#OSGSoNumber}-osgSim.dll"; DestDir: "{app}\bin\Win64"; Flags: skipifsourcedoesntexist
Source: "{#OSG64InstallDir}\bin\osg{#OSGSoNumber}-osgFX.dll"; DestDir: "{app}\bin\Win64"; Flags: skipifsourcedoesntexist
Source: "{#OSG64InstallDir}\bin\osg{#OSGSoNumber}-osg.dll"; DestDir: "{app}\bin\Win64"; Flags: skipifsourcedoesntexist; Check: Is64BitInstallMode and not IsTaskSelected('force32')
Source: "{#OSG64InstallDir}\bin\osg{#OSGSoNumber}-osgDB.dll"; DestDir: "{app}\bin\Win64"; Flags: skipifsourcedoesntexist; Check: Is64BitInstallMode and not IsTaskSelected('force32')
Source: "{#OSG64InstallDir}\bin\osg{#OSGSoNumber}-osgGA.dll"; DestDir: "{app}\bin\Win64"; Flags: skipifsourcedoesntexist; Check: Is64BitInstallMode and not IsTaskSelected('force32')
Source: "{#OSG64InstallDir}\bin\osg{#OSGSoNumber}-osgParticle.dll"; DestDir: "{app}\bin\Win64"; Flags: skipifsourcedoesntexist; Check: Is64BitInstallMode and not IsTaskSelected('force32')
Source: "{#OSG64InstallDir}\bin\osg{#OSGSoNumber}-osgText.dll"; DestDir: "{app}\bin\Win64"; Flags: skipifsourcedoesntexist; Check: Is64BitInstallMode and not IsTaskSelected('force32')
Source: "{#OSG64InstallDir}\bin\osg{#OSGSoNumber}-osgUtil.dll"; DestDir: "{app}\bin\Win64"; Flags: skipifsourcedoesntexist; Check: Is64BitInstallMode and not IsTaskSelected('force32')
Source: "{#OSG64InstallDir}\bin\osg{#OSGSoNumber}-osgViewer.dll"; DestDir: "{app}\bin\Win64"; Flags: skipifsourcedoesntexist; Check: Is64BitInstallMode and not IsTaskSelected('force32')
Source: "{#OSG64InstallDir}\bin\osg{#OSGSoNumber}-osgSim.dll"; DestDir: "{app}\bin\Win64"; Flags: skipifsourcedoesntexist; Check: Is64BitInstallMode and not IsTaskSelected('force32')
Source: "{#OSG64InstallDir}\bin\osg{#OSGSoNumber}-osgFX.dll"; DestDir: "{app}\bin\Win64"; Flags: skipifsourcedoesntexist; Check: Is64BitInstallMode and not IsTaskSelected('force32')
Source: "{#OSG64InstallDir}\bin\ot12-OpenThreads.dll"; DestDir: "{app}\bin\Win64"; Flags: skipifsourcedoesntexist
Source: "{#OSG64InstallDir}\bin\ot{#OTSoNumber}-OpenThreads.dll"; DestDir: "{app}\bin\Win64"; Flags: skipifsourcedoesntexist; Check: Is64BitInstallMode and not IsTaskSelected('force32')
Source: "{#OSG64PluginsDir}\osgdb_ac.dll"; DestDir: "{app}\bin\Win64\osgPlugins-{#OSGVersion}"; Flags: skipifsourcedoesntexist
Source: "{#OSG64PluginsDir}\osgdb_osg.dll"; DestDir: "{app}\bin\Win64\osgPlugins-{#OSGVersion}"; Flags: skipifsourcedoesntexist
Source: "{#OSG64PluginsDir}\osgdb_3ds.dll"; DestDir: "{app}\bin\Win64\osgPlugins-{#OSGVersion}"; Flags: skipifsourcedoesntexist
Source: "{#OSG64PluginsDir}\osgdb_mdl.dll"; DestDir: "{app}\bin\Win64\osgPlugins-{#OSGVersion}"; Flags: skipifsourcedoesntexist
Source: "{#OSG64PluginsDir}\osgdb_jpeg.dll"; DestDir: "{app}\bin\Win64\osgPlugins-{#OSGVersion}"; Flags: skipifsourcedoesntexist
Source: "{#OSG64PluginsDir}\osgdb_rgb.dll"; DestDir: "{app}\bin\Win64\osgPlugins-{#OSGVersion}"; Flags: skipifsourcedoesntexist
Source: "{#OSG64PluginsDir}\osgdb_png.dll"; DestDir: "{app}\bin\Win64\osgPlugins-{#OSGVersion}"; Flags: skipifsourcedoesntexist
Source: "{#OSG64PluginsDir}\osgdb_txf.dll"; DestDir: "{app}\bin\Win64\osgPlugins-{#OSGVersion}"; Flags: skipifsourcedoesntexist
Source: "{#OSG64PluginsDir}\osgdb_ac.dll"; DestDir: "{app}\bin\Win64\osgPlugins-{#OSGVersion}"; Flags: skipifsourcedoesntexist; Check: Is64BitInstallMode and not IsTaskSelected('force32')
Source: "{#OSG64PluginsDir}\osgdb_osg.dll"; DestDir: "{app}\bin\Win64\osgPlugins-{#OSGVersion}"; Flags: skipifsourcedoesntexist; Check: Is64BitInstallMode and not IsTaskSelected('force32')
Source: "{#OSG64PluginsDir}\osgdb_osga.dll"; DestDir: "{app}\bin\Win64\osgPlugins-{#OSGVersion}"; Flags: skipifsourcedoesntexist; Check: Is64BitInstallMode and not IsTaskSelected('force32')
Source: "{#OSG64PluginsDir}\osgdb_3ds.dll"; DestDir: "{app}\bin\Win64\osgPlugins-{#OSGVersion}"; Flags: skipifsourcedoesntexist; Check: Is64BitInstallMode and not IsTaskSelected('force32')
Source: "{#OSG64PluginsDir}\osgdb_mdl.dll"; DestDir: "{app}\bin\Win64\osgPlugins-{#OSGVersion}"; Flags: skipifsourcedoesntexist; Check: Is64BitInstallMode and not IsTaskSelected('force32')
Source: "{#OSG64PluginsDir}\osgdb_jpeg.dll"; DestDir: "{app}\bin\Win64\osgPlugins-{#OSGVersion}"; Flags: skipifsourcedoesntexist; Check: Is64BitInstallMode and not IsTaskSelected('force32')
Source: "{#OSG64PluginsDir}\osgdb_rgb.dll"; DestDir: "{app}\bin\Win64\osgPlugins-{#OSGVersion}"; Flags: skipifsourcedoesntexist; Check: Is64BitInstallMode and not IsTaskSelected('force32')
Source: "{#OSG64PluginsDir}\osgdb_png.dll"; DestDir: "{app}\bin\Win64\osgPlugins-{#OSGVersion}"; Flags: skipifsourcedoesntexist; Check: Is64BitInstallMode and not IsTaskSelected('force32')
Source: "{#OSG64PluginsDir}\osgdb_dds.dll"; DestDir: "{app}\bin\Win64\osgPlugins-{#OSGVersion}"; Flags: skipifsourcedoesntexist; Check: Is64BitInstallMode and not IsTaskSelected('force32')
Source: "{#OSG64PluginsDir}\osgdb_txf.dll"; DestDir: "{app}\bin\Win64\osgPlugins-{#OSGVersion}"; Flags: skipifsourcedoesntexist; Check: Is64BitInstallMode and not IsTaskSelected('force32')
Source: "{#OSG64PluginsDir}\osgdb_freetype.dll"; DestDir: "{app}\bin\Win64\osgPlugins-{#OSGVersion}"; Flags: skipifsourcedoesntexist; Check: Is64BitInstallMode and not IsTaskSelected('force32')
Source: "{#OSG64PluginsDir}\osgdb_serializers_osg.dll"; DestDir: "{app}\bin\Win64\osgPlugins-{#OSGVersion}"; Flags: skipifsourcedoesntexist; Check: Is64BitInstallMode and not IsTaskSelected('force32')
Source: "{#OSG64PluginsDir}\osgdb_serializers_osganimation.dll"; DestDir: "{app}\bin\Win64\osgPlugins-{#OSGVersion}"; Flags: skipifsourcedoesntexist; Check: Is64BitInstallMode and not IsTaskSelected('force32')
Source: "{#OSG64PluginsDir}\osgdb_serializers_osgfx.dll"; DestDir: "{app}\bin\Win64\osgPlugins-{#OSGVersion}"; Flags: skipifsourcedoesntexist; Check: Is64BitInstallMode and not IsTaskSelected('force32')
Source: "{#OSG64PluginsDir}\osgdb_serializers_osgmanipulator.dll"; DestDir: "{app}\bin\Win64\osgPlugins-{#OSGVersion}"; Flags: skipifsourcedoesntexist; Check: Is64BitInstallMode and not IsTaskSelected('force32')
Source: "{#OSG64PluginsDir}\osgdb_serializers_osgparticle.dll"; DestDir: "{app}\bin\Win64\osgPlugins-{#OSGVersion}"; Flags: skipifsourcedoesntexist; Check: Is64BitInstallMode and not IsTaskSelected('force32')
Source: "{#OSG64PluginsDir}\osgdb_serializers_osgshadow.dll"; DestDir: "{app}\bin\Win64\osgPlugins-{#OSGVersion}"; Flags: skipifsourcedoesntexist; Check: Is64BitInstallMode and not IsTaskSelected('force32')
Source: "{#OSG64PluginsDir}\osgdb_serializers_osgsim.dll"; DestDir: "{app}\bin\Win64\osgPlugins-{#OSGVersion}"; Flags: skipifsourcedoesntexist; Check: Is64BitInstallMode and not IsTaskSelected('force32')
Source: "{#OSG64PluginsDir}\osgdb_serializers_osgterrain.dll"; DestDir: "{app}\bin\Win64\osgPlugins-{#OSGVersion}"; Flags: skipifsourcedoesntexist; Check: Is64BitInstallMode and not IsTaskSelected('force32')
Source: "{#OSG64PluginsDir}\osgdb_serializers_osgtext.dll"; DestDir: "{app}\bin\Win64\osgPlugins-{#OSGVersion}"; Flags: skipifsourcedoesntexist; Check: Is64BitInstallMode and not IsTaskSelected('force32')
Source: "{#OSG64PluginsDir}\osgdb_serializers_osgvolume.dll"; DestDir: "{app}\bin\Win64\osgPlugins-{#OSGVersion}"; Flags: skipifsourcedoesntexist; Check: Is64BitInstallMode and not IsTaskSelected('force32')
Source: "{#OSG64PluginsDir}\osgdb_deprecated_osg.dll"; DestDir: "{app}\bin\Win64\osgPlugins-{#OSGVersion}"; Flags: skipifsourcedoesntexist; Check: Is64BitInstallMode and not IsTaskSelected('force32')
Source: "{#OSG64PluginsDir}\osgdb_deprecated_osgparticle.dll"; DestDir: "{app}\bin\Win64\osgPlugins-{#OSGVersion}"; Flags: skipifsourcedoesntexist; Check: Is64BitInstallMode and not IsTaskSelected('force32')
[Dirs]
; Make the user installable scenery directory
@@ -126,24 +183,29 @@ Name: "{app}\scenery"; Permissions: everyone-modify
Name: "{code:TerrasyncDir}"; Permissions: everyone-modify
[Icons]
Name: "{group}\FlightGear Launcher"; Filename: "{app}\bin\Win32\fgrun.exe"; WorkingDir: "{app}";
Name: "{group}\FlightGear Launcher"; Filename: "{app}\bin\Win32\fgrun.exe"; WorkingDir: "{app}"; Check: not Is64BitInstallMode or IsTaskSelected('force32')
Name: "{group}\FlightGear Launcher"; Filename: "{app}\bin\Win64\fgrun.exe"; WorkingDir: "{app}"; Check: Is64BitInstallMode and not IsTaskSelected('force32')
; Name: "{group}\FlightGear"; Filename: "{app}\bin\Win32\fgfs.exe"; Parameters: "--fg-root=."; WorkingDir: "{app}";
Name: "{group}\FlightGear Manual"; Filename: "{app}\data\Docs\getstart.pdf"
Name: "{group}\FlightGear Documentation"; Filename: "{app}\data\Docs\index.html"
Name: "{group}\Flightgear Wiki"; Filename: "http://wiki.flightgear.org"
Name: "{userdesktop}\FlightGear {#FGVersion}"; Filename: "{app}\bin\Win32\fgrun.exe"; WorkingDir: "{app}"; Tasks: desktopicon
Name: "{userdesktop}\FlightGear {#FGVersion}"; Filename: "{app}\bin\Win32\fgrun.exe"; WorkingDir: "{app}"; Tasks: desktopicon; Check: not Is64BitInstallMode or IsTaskSelected('force32')
Name: "{userdesktop}\FlightGear {#FGVersion}"; Filename: "{app}\bin\Win64\fgrun.exe"; WorkingDir: "{app}"; Tasks: desktopicon; Check: Is64BitInstallMode and not IsTaskSelected('force32')
Name: "{group}\Tools\Install & Uninstall Scenery"; Filename: "{app}\bin\Win32\fgadmin.exe"; WorkingDir: "{app}";
Name: "{group}\Tools\TerraSync"; Filename: "{app}\bin\Win32\terrasync.exe"; Parameters: "-S -p 5505 -d ""{app}\terrasync"""; WorkingDir: "{app}";
Name: "{group}\Tools\Install & Uninstall Scenery"; Filename: "{app}\bin\Win32\fgadmin.exe"; WorkingDir: "{app}"
Name: "{group}\Tools\TerraSync"; Filename: "{app}\bin\Win32\terrasync.exe"; Parameters: "-S -p 5505 -d ""{app}\terrasync"""; WorkingDir: "{app}"
Name: "{group}\Tools\Uninstall FlightGear"; Filename: "{uninstallexe}"
Name: "{group}\Tools\js_demo"; Filename: "{app}\bin\Win32\js_demo.exe"
Name: "{group}\Tools\fgjs"; Filename: "cmd"; Parameters: "/k fgjs.exe ""--fg-root={app}\data"""; WorkingDir: "{app}\bin\Win32";
Name: "{group}\Tools\GPSsmooth"; Filename: "cmd"; Parameters: "/k ""{app}\bin\Win32\GPSsmooth.exe"" -h"; WorkingDir: "{app}\bin\Win32";
Name: "{group}\Tools\UGsmooth"; Filename: "cmd"; Parameters: "/k ""{app}\bin\Win32\UGsmooth.exe"" -h"; WorkingDir: "{app}\bin\Win32";
Name: "{group}\Tools\MIDSsmooth"; Filename: "cmd"; Parameters: "/k ""{app}\bin\Win32\MIDSsmooth.exe"" -h"; WorkingDir: "{app}\bin\Win32";
Name: "{group}\Tools\MIDGsmooth"; Filename: "cmd"; Parameters: "/k ""{app}\bin\Win32\MIDGsmooth.exe"" -h"; WorkingDir: "{app}\bin\Win32";
Name: "{group}\Tools\metar"; Filename: "cmd"; Parameters: "/k ""{app}\bin\Win32\metar.exe"" -h"; WorkingDir: "{app}\bin\Win32";
Name: "{group}\Tools\yasim"; Filename: "cmd"; Parameters: "/k ""{app}\bin\Win32\yasim.exe"" -h"; WorkingDir: "{app}\bin\Win32";
Name: "{group}\Tools\fgpanel"; Filename: "cmd"; Parameters: "/k ""{app}\bin\Win32\fgpanel.exe"" -h"; WorkingDir: "{app}\bin\Win32";
Name: "{group}\Tools\FGCom"; Filename: "{app}\bin\Win32\fgcom.exe"; Parameters: "--positions=""{app}\share\flightgear\positions.txt"" --special=""{app}\share\flightgear\special_frequencies.txt"""; WorkingDir: "{app}\bin\Win32";
Name: "{group}\Tools\FGCom-testing"; Filename: "{app}\bin\Win32\fgcom.exe"; Parameters: "-f910 --positions=""{app}\share\flightgear\positions.txt"" --special=""{app}\share\flightgear\special_frequencies.txt"""; WorkingDir: "{app}\bin\Win32";
Name: "{group}\Tools\Explore Documentation Folder"; Filename: "{app}\data\Docs"
@@ -151,9 +213,15 @@ Name: "{group}\Tools\Explore Documentation Folder"; Filename: "{app}\data\Docs"
; Name: "{userdesktop}\FlightGear v2.0.0"; Filename: "{app}\bin\Win32\fgfs.exe"; Parameters: "--fg-root=."; WorkingDir: "{app}"; Tasks: desktopicon
[Run]
filename: "cmd.exe"; WorkingDir: "{app}\bin\Win32"; Parameters: "/C del msvc*.dll"; Check: FileExists(ExpandConstant('{app}\bin\Win32\vcredist_x86.exe'))
filename: "cmd.exe"; WorkingDir: "{app}\bin\Win64"; Parameters: "/C del msvc*.dll"; Check: FileExists(ExpandConstant('{app}\bin\Win64\vcredist_x64.exe'))
filename: "{app}\bin\Win32\vcredist_x86.exe"; WorkingDir: "{app}\bin\Win32"; Parameters: "/passive /norestart"; Description: "Installing MS Visual C++ runtime components"; Check: FileExists(ExpandConstant('{app}\bin\Win32\vcredist_x86.exe'))
filename: "{app}\bin\Win64\vcredist_x64.exe"; WorkingDir: "{app}\bin\Win64"; Parameters: "/passive /norestart"; Description: "Installing MS Visual C++ runtime components"; Check: Is64BitInstallMode and not IsTaskSelected('force32') and FileExists(ExpandConstant('{app}\bin\Win64\vcredist_x64.exe'))
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"
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"""

View File

@@ -2,12 +2,14 @@
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleDevelopmentRegion</key>
<string>English</string>
<key>CFBundleIconFile</key>
<string>FlightGear.icns</string>
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleGetInfoString</key>
<string>FlightGear nightly build</string>
<string>FlightGear, the open-source flight simulator, <%= fgVersion %>. ©1996-<%= fgCurrentYear%>, The FlightGear Project</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleExecutable</key>
@@ -19,11 +21,13 @@
<key>CFBundleShortVersionString</key>
<string><%= fgVersion %></string>
<key>LSMinimumSystemVersion</key>
<string>10.5.0</string>
<string>10.6.0</string>
<key>NSMainNibFile</key>
<string>MainMenu</string>
<key>NSPrincipalClass</key>
<string>NSApplication</string>
<key>NSHumanReadableCopyright</key>
<string>©1996-<%= fgCurrentYear%>, The FlightGear Project</string>
</dict>
</plist>

38
base-package.rules Normal file
View File

@@ -0,0 +1,38 @@
- .git
- *.xcf
- *.tex
+ /fgdata/Aircraft/Generic
+ /fgdata/Aircraft/Instruments
+ /fgdata/Aircraft/Instruments-3d
+ /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
- /fgdata/Aircraft/*
- /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

171
create_catalog.py Executable file
View File

@@ -0,0 +1,171 @@
#!/usr/bin/python
import os
import sys
import fnmatch
import tarfile
import hashlib
import shutil
import xml.etree.cElementTree as ET
rootPath = sys.argv[1]
outputDir = sys.argv[2]
existingCatalogPath = os.path.join(outputDir, 'catalog.xml')
existingCatalog = None
print 'existing ctalog path:' + existingCatalogPath
if os.path.exists(existingCatalogPath):
existingCatalog = ET.parse(existingCatalogPath)
for file in os.listdir(outputDir):
if fnmatch.fnmatch(file, '*.tar.gz'):
os.remove(os.path.join(outputDir, file));
thumbsDir = os.path.join(outputDir, 'thumbs')
shutil.rmtree(thumbsDir)
os.makedirs(thumbsDir)
def setProperty(node, id, value):
s = node.find(id) # check for existing
if s is None:
s = ET.SubElement(node, id)
s.text = value
def clearChildren(node, tag):
for c in node.findall(tag):
node.remove(c)
def parse_setXml(path):
tree = ET.parse(path)
desc = tree.find('sim/description')
ratings = tree.find('sim/rating')
if (ratings is not None):
for rating in list(ratings):
if rating.tag == 'status':
continue
rvalue = int(rating.text)
if rvalue < 2:
return None
else:
return None
d = {}
d['desc'] = desc
d['ratings'] = ratings;
d['status'] = tree.find('sim/status')
d['authors'] = tree.findall('sim/author')
return d
def process_aircraft(acft, path):
print '===' + acft + '==='
setFiles = []
thumbs = []
for file in os.listdir(path):
if fnmatch.fnmatch(file, '*-set.xml'):
setFiles.append(file);
if fnmatch.fnmatch(file, 'thumbnail*'):
thumbs.append(file)
aircraft = []
for s in setFiles:
d = parse_setXml(os.path.join(path, s))
if d is None:
continue
d['set'] = s[0:-8]
aircraft.append(d)
thumbnailNames = []
# copy thumbnails
for t in thumbs:
outThumb = os.path.join(thumbsDir, acft + "-" + t)
thumbnailNames.append(acft + "-" + t)
shutil.copyfile(os.path.join(path, t), outThumb)
if len(aircraft) == 0:
print "no aircraft profiles for " + acft
return
# tarball creation
outTar = os.path.join(outputDir, acft + ".tar.gz")
tar = tarfile.open(outTar, "w:gz")
tar.add(path, acft)
tar.close()
digest = hashlib.md5(open(outTar, 'r').read()).hexdigest()
revision = 1
# revision check
if acft in existingPackages:
previousMd5 = existingPackages[acft].find('md5').text
previousRevsion = int(existingPackages[acft].find('revision').text)
if digest != previousMd5:
print acft + ": MD5 has changed"
revision = previousRevsion + 1
else:
print acft + ": MD5 is unchanged"
else:
existingPackages[acft] = ET.Element('package')
setProperty(existingPackages[acft], 'id', acft)
setProperty(existingPackages[acft], 'revision', str(revision))
setProperty(existingPackages[acft], 'md5', digest)
setProperty(existingPackages[acft], 'description', aircraft[0]['desc'])
clearChildren(existingPackages[acft], 'thumbnail')
for t in thumbnailNames:
tn = ET.SubElement(existingPackages[acft], 'thumbnail')
tn.text = 'thumbs/' + t
clearChildren(existingPackages[acft], 'rating')
existingPackages[acft].append(aircraft[0]['ratings'])
print "wrote tarfile, digest is " + digest
root = ET.Element('PropertyList')
catalogTree = ET.ElementTree(root)
existingPackages = dict()
if (existingCatalog is not None):
print 'have existing catalog data'
root.append(existingCatalog.find('license'))
root.append(existingCatalog.find('url'))
root.append(existingCatalog.find('description'))
root.append(existingCatalog.find('id'))
# existing data (for revision incrementing)
for n in existingCatalog.findall('package'):
idNode = n.find('id')
if idNode is None:
print 'Missing <id> tag on package'
continue
existingPackages[idNode.text] = n;
#licenseElement = ET.SubElement(root, 'license')
#licenseElement.text = 'gpl'
#urlElement = ET.SubElement(root, 'url')
#urlElement.text = 'http://catalog.xml'
for acft in os.listdir(rootPath):
path = os.path.join(rootPath, acft);
if (os.path.isdir(path)):
process_aircraft(acft, path)
for ep in existingPackages:
root.append(existingPackages[ep])
catalogTree.write(os.path.join(outputDir, 'catalog.xml'), 'UTF-8')

File diff suppressed because it is too large Load Diff

1
fgrun Submodule

Submodule fgrun added at b82da6b7d7

View File

@@ -1,9 +1,28 @@
#!/bin/sh
cd simgear
./autogen.sh
./configure --prefix=$WORKSPACE/dist --with-osg=$WORKSPACE/dist
if [ "$WORKSPACE" == "" ]; then
echo "ERROR: Missing WORKSPACE environment variable."
exit 1
fi
VERSION=`cat flightgear/version`
#####################################################################################
# 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"
cd sgBuild
cmake -DCMAKE_INSTALL_PREFIX:PATH=$WORKSPACE/dist -DSIMGEAR_SHARED:BOOL="ON" ../simgear
# compile
make
if [ $? -ne '0' ]; then
@@ -12,13 +31,17 @@ if [ $? -ne '0' ]; then
fi
make install
make dist
# build source package and copy to output
make package_source
cp simgear-*.tar.bz2 ../output/.
#####################################################################################
echo "Starting on FlightGear"
cd ../fgBuild
cmake -DCMAKE_INSTALL_PREFIX:PATH=$WORKSPACE/dist -DSIMGEAR_SHARED:BOOL="ON" ../flightgear
cd ../flightgear
./autogen.sh
./configure --prefix=$WORKSPACE/dist --with-osg=$WORKSPACE/dist
# compile
make
if [ $? -ne '0' ]; then
@@ -27,4 +50,19 @@ if [ $? -ne '0' ]; then
fi
make install
make dist
# build source package and copy to output
make package_source
cp flightgear-*.tar.bz2 ../output/.
#####################################################################################
echo "Assembling base package"
cd $WORKSPACE
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 .
tar cjf output/FlightGear-$VERSION-data.tar.bz2 fgdata/

View File

@@ -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

77
hudson_mac_build_release.sh Executable file
View File

@@ -0,0 +1,77 @@
#!/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 ../simgear
# compile
xcodebuild -configuration RelWithDebInfo -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 ../flightgear
xcodebuild -configuration RelWithDebInfo -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"
#OSX_TARGET="10.6"
# JMT - disabling setting the sysroot since it's breaking things on
# current build slave. Sinc ethe slave runs 10.6 natively, we don't
# actually need to set these. Real solution would be to use a proper
# build system for the Mac-launcher of course.
# -mmacosx-version-min=$OSX_TARGET -isysroot $SDK_PATH
pushd maclauncher/FlightGearOSX
# compile the stub executable
gcc -o FlightGear main.m \
-framework Cocoa -framework RubyCocoa -framework Foundation -framework AppKit
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 .
# 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
unlock-keychain.sh
echo "Running package script"
./hudson_mac_package_release.rb

View File

@@ -1,9 +1,11 @@
#!/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']
$osgPlugins = ['ac', 'osg', 'freetype', 'imageio', 'rgb', 'txf', 'mdl', '3ds']
def runOsgVersion(option)
env = "export DYLD_LIBRARY_PATH=#{Dir.pwd}/dist/lib"
@@ -15,9 +17,14 @@ 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'
$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_neon']
def fix_install_names(object)
#puts "fixing install names for #{object}"
@@ -31,16 +38,36 @@ def fix_install_names(object)
oldName = "libOpenThreads.#{$openThreadsSoVersion}.dylib"
newName= "@executable_path/../Frameworks/#{oldName}"
`install_name_tool -change #{oldName} #{newName} #{object}`
alutBundlePath = "@executable_path/../Frameworks/Alut.framework"
alutLib = "Versions/A/ALUT"
`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"
newName = "@executable_path/../Frameworks/#{fileName}"
`install_name_tool -change #{fileName} #{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 "#{$codeSignIdentity}" #{path}`
end
puts "Erasing previous image dir"
`rm -rf #{dmgDir}`
@@ -48,56 +75,68 @@ 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}"
# for writing copyright year to Info.plist
t = Time.new
fgCurrentYear = t.year
fgVersion = File.read("#{srcDir}/version").strip
volName="\"FlightGear #{fgVersion}\""
dmgPath = Dir.pwd + "/fg_mac_#{fgVersion}.dmg"
dmgPath = Dir.pwd + "/output/FlightGear-#{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', 'terrasync']
bins = ['fgfs', 'fgjs', 'fgcom', 'fgviewer']
bins.each do |b|
`cp #{prefixDir}/bin/#{b} #{resourcesDir}/#{b}`
fix_install_names("#{resourcesDir}/#{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)
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"
`cp #{prefixDir}/lib/osgPlugins-#{osgVersion}/#{pluginFile} #{osgPluginsDir}`
`cp #{$prefixDir}/lib/osgPlugins-#{osgVersion}/#{pluginFile} #{osgPluginsDir}`
fix_install_names("#{osgPluginsDir}/#{pluginFile}")
end
# custom ALUT
# must copy frameworks using ditto
`ditto #{$alutSourcePath} #{frameworksDir}/ALUT.framework`
copy_svn_libs()
# 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 *.html #{resourcesDir}`
end
if File.exist?("#{$prefixDir}/share/flightgear")
puts "Copying FGCom data files"
`ditto #{$prefixDir}/share/flightgear #{resourcesDir}`
end
# Info.plist
@@ -111,6 +150,22 @@ File.open("#{contents}/Info.plist", 'w') { |f|
`cp #{srcDir}/package/mac/FlightGear.icns #{resourcesDir}/FlightGear.icns`
`cp #{srcDir}/COPYING #{dmgDir}`
# move documentation to a public place
`mv fgdata/Docs/FGShortRef.pdf "#{dmgDir}/Quick Reference.pdf"`
`mv fgdata/Docs/getstart.pdf "#{dmgDir}/Getting Started.pdf"`
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}"

View File

@@ -1,12 +1,22 @@
IF NOT DEFINED WORKSPACE SET WORKSPACE=%~dp0
ECHO #define SIMGEAR_VERSION "2.2.0" > %WORKSPACE%\simgear\simgear\version.h
cd %WORKSPACE%\simgear\projects\VC90
msbuild SimGear.vcproj /p:Configuration=Release /m
SET /P SIMGEAR_VERSION=<%WORKSPACE%\simgear\version
ECHO #define SIMGEAR_VERSION "%SIMGEAR_VERSION%" > %WORKSPACE%\simgear\simgear\version.h
cd %WORKSPACE%\flightgear
call scripts\tools\version.bat
SET HAVE_VERSION_H=1
cd %WORKSPACE%\flightgear\projects\VC90
msbuild FlightGear.sln /p:Configuration=Release /m
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
md build-fg
md build-fgrun
cd build-sg
cmake ..\simgear -G "Visual Studio 10" -DMSVC_3RDPARTY_ROOT=%WORKSPACE% -DCMAKE_INSTALL_PREFIX:PATH=%WORKSPACE%/install/msvc100/SimGear -DBOOST_ROOT=%WORKSPACE%/Boost
cmake --build . --config Release --target INSTALL
cd ..\build-fg
cmake ..\flightgear -G "Visual Studio 10" -DMSVC_3RDPARTY_ROOT=%WORKSPACE% -DCMAKE_INSTALL_PREFIX:PATH=%WORKSPACE%/install/msvc100/FlightGear -DFLTK_FLUID_EXECUTABLE=%WORKSPACE%/3rdParty/bin/fluid.exe -DBOOST_ROOT=%WORKSPACE%/Boost
cmake --build . --config Release --target INSTALL
cd ..\build-fgrun
cmake ..\fgrun -G "Visual Studio 10" -DMSVC_3RDPARTY_ROOT:PATH=%WORKSPACE% -DCMAKE_INSTALL_PREFIX:PATH=%WORKSPACE%/install/msvc100/FGRun -DFLTK_FLUID_EXECUTABLE:FILEPATH=%WORKSPACE%/3rdParty/bin/fluid.exe -DGETTEXT_MSGFMT_EXECUTABLE:FILEPATH=%WORKSPACE%/3rdParty/bin/msgfmt.exe -DGETTEXT_MSGMERGE_EXECUTABLE:FILEPATH=%WORKSPACE%/3rdParty/bin/msgmerge.exe -DBOOST_ROOT=%WORKSPACE%/Boost
cmake --build . --config Release --target INSTALL

View File

@@ -1,13 +1,24 @@
IF NOT DEFINED WORKSPACE SET WORKSPACE=%~dp0
ECHO #define SIMGEAR_VERSION "2.2.0" > %WORKSPACE%\simgear\simgear\version.h
cd %WORKSPACE%\simgear\projects\VC90
msbuild SimGear.vcproj /p:Configuration=Release /p:Platform=x64
cd %WORKSPACE%\flightgear
call scripts\tools\version.bat
SET HAVE_VERSION_H=1
cd %WORKSPACE%\flightgear\projects\VC90
msbuild FlightGear.sln /p:Configuration=Release /p:Platform=x64
SET /P SIMGEAR_VERSION=<%WORKSPACE%\simgear\version
ECHO #define SIMGEAR_VERSION "%SIMGEAR_VERSION%" > %WORKSPACE%\simgear\simgear\version.h
rem ECHO #define SIMGEAR_VERSION "2.9.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
md build-fg64
md build-fgrun64
cd build-sg64
cmake ..\SimGear -G "Visual Studio 10 Win64" -DMSVC_3RDPARTY_ROOT=%WORKSPACE% -DCMAKE_INSTALL_PREFIX:PATH=%WORKSPACE%/install/msvc100-64/SimGear -DBOOST_ROOT=%WORKSPACE%/Boost
cmake --build . --config Release --target INSTALL
cd ..\build-fg64
cmake ..\flightgear -G "Visual Studio 10 Win64" -DMSVC_3RDPARTY_ROOT=%WORKSPACE% -DCMAKE_INSTALL_PREFIX:PATH=%WORKSPACE%/install/msvc100-64/FlightGear -DFLTK_FLUID_EXECUTABLE=%WORKSPACE%/3rdParty/bin/fluid.exe -DBOOST_ROOT=%WORKSPACE%/Boost -DWITH_FGPANEL=OFF -DENABLE_PROFILE=OFF
cmake --build . --config Release --target INSTALL
cd ..\build-fgrun64
cmake ..\fgrun -G "Visual Studio 10 Win64" -DMSVC_3RDPARTY_ROOT:PATH=%WORKSPACE% -DCMAKE_INSTALL_PREFIX:PATH=%WORKSPACE%/install/msvc100-64/FGRun -DFLTK_FLUID_EXECUTABLE:FILEPATH=%WORKSPACE%/3rdParty/bin/fluid.exe -DGETTEXT_MSGFMT_EXECUTABLE:FILEPATH=%WORKSPACE%/3rdParty/bin/msgfmt.exe -DGETTEXT_MSGMERGE_EXECUTABLE:FILEPATH=%WORKSPACE%/3rdParty/bin/msgmerge.exe -DBOOST_ROOT=%WORKSPACE%/Boost
cmake --build . --config Release --target INSTALL

View File

@@ -4,27 +4,37 @@ IF NOT DEFINED WORKSPACE SET WORKSPACE=%~dp0
ECHO Packaging root is %WORKSPACE%
subst X: /D
subst X: %WORKSPACE%
subst X: %WORKSPACE%.
REM construct information file to be read by Inno-setup
set PATH=%WORKSPACE%\install\msvc90\OpenSceneGraph\bin;%PATH%
set PATH=%WORKSPACE%\install\msvc100\OpenSceneGraph\bin;%PATH%
REM add 7-zip to the PATH
set PATH=%PATH%;C:\Program Files\7-zip
REM indirect way to get command output into an environment variable
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
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
set DATA_FILE=FlightGear-%FLIGHTGEAR_VERSION%-data
REM extract the data files
7z e -aoa %DATA_FILE%.tar.bz2 && 7z x -aoa %DATA_FILE%.tar
REM run Inno-setup!
REM use iscc instead of compil32 for better error reporting
Compil32 /cc FlightGear.iss
iscc FlightGear.iss

19
installWinDeps.bat Normal file
View File

@@ -0,0 +1,19 @@
REM ExternalProject can't cleanly extract a zip into an existing directory
REM Instead we extract to a subdir, and then move the directories we want
REM using this bat file.
echo %CD%
IF EXIST winDeps/3rdParty (
md 3rdParty
xcopy /Y /E winDeps/3rdParty 3rdParty
echo "Done copying Windows deps"
) ELSE (
IF EXIST winDeps/3rdParty.x64 (
md 3rdParty.x64
xcopy /Y /E winDeps/3rdParty.x64 3rdParty.x64
echo "Done copying Windows deps"
) ELSE (
echo "Error: Windows deps not found"
exit -1
)
)

1
maclauncher Submodule

Submodule maclauncher added at 7e6406f35c

Submodule simgear updated: e55017bbfc...ea8023e51f