]> git.mxchange.org Git - flightgear.git/commitdiff
Use osgversion to cope with OSG version numbering changes.
authorJames Turner <zakalawe@mac.com>
Thu, 4 Nov 2010 18:47:17 +0000 (18:47 +0000)
committerJames Turner <zakalawe@mac.com>
Thu, 4 Nov 2010 18:47:17 +0000 (18:47 +0000)
package/mac/build-mac-nightly-dmg.rb
package/mac/run-osgversion [new file with mode: 0755]

index 33198e09b2bf82d325ca17baf199491839ddafca..21b9e47ba3a20baa6523738abe471c3b4f2e9317 100755 (executable)
@@ -4,19 +4,24 @@ require 'ERB'
 
 $osgLibs = ['osgFX', 'osgParticle', 'osg', 'osgGA', 'osgText', 'osgUtil', 'osgSim', 'osgViewer', 'osgDB']
 $osgPlugins = ['ac', 'osg', 'freetype', 'qt', 'imageio', 'rgb', 'txf']
-$osgDylibVersion='63'
+
+osgVersion = `./run-osgversion --version-number`
+puts "osgVersion='#{osgVersion}'"
+$osgSoVersion=`./run-osgversion --so-number`
+$openThreadsSoVersion=`./run-osgversion --openthreads-soversion-number`
+
 $alutSourcePath='/Library/Frameworks/ALUT.framework'
 
 def fix_install_names(object)
   #puts "fixing install names for #{object}"
   
   $osgLibs.each do |l|
-    oldName = "lib#{l}.#{$osgDylibVersion}.dylib"
+    oldName = "lib#{l}.#{$osgSoVersion}.dylib"
     newName = "@executable_path/../Frameworks/#{oldName}"
     `install_name_tool -change #{oldName} #{newName} #{object}`
   end
   
-  oldName = "libOpenThreads.12.dylib"
+  oldName = "libOpenThreads.#{openThreadsSoVersion}.dylib"
   newName= "@executable_path/../Frameworks/#{oldName}"
   `install_name_tool -change #{oldName} #{newName} #{object}`
   
@@ -33,10 +38,6 @@ dmgPath = Dir.pwd + "/fg_mac_nightly.dmg"
 puts "Erasing previous image dir"
 `rm -rf #{dmgDir}`
 
-osgVersion = `export PKG_CONFIG_PATH=#{prefixDir}/lib/pkgconfig;  pkg-config --modversion openscenegraph`
-osgVersion = osgVersion.chomp # strip trailing newlines
-puts "osgVersion='#{osgVersion}'"
-
 bundle=dmgDir + "/FlightGear.app"
 contents=bundle + "/Contents"
 macosDir=contents + "/MacOS"
@@ -60,13 +61,13 @@ end
 
 puts "copying libraries"
 $osgLibs.each do |l|
-  libFile = "lib#{l}.#{$osgDylibVersion}.dylib"
+  libFile = "lib#{l}.#{$osgSoVersion}.dylib"
   `cp #{prefixDir}/lib/#{libFile} #{frameworksDir}`
   fix_install_names("#{frameworksDir}/#{libFile}")
 end
 
 # and not forgetting OpenThreads
-libFile = "libOpenThreads.12.dylib"
+libFile = "libOpenThreads.#{openThreadsSoVersion}.dylib"
 `cp #{prefixDir}/lib/#{libFile} #{frameworksDir}`
 
 $osgPlugins.each do |p|
diff --git a/package/mac/run-osgversion b/package/mac/run-osgversion
new file mode 100755 (executable)
index 0000000..508b07b
--- /dev/null
@@ -0,0 +1,4 @@
+#/bin/bash
+DYLD_LIBRARY_PATH=$PWD/dist/lib
+./dist/bin/osgversion $1
+