rpms/SimGear/devel SimGear-1.9.0-headers.patch, NONE, 1.1 SimGear-1.9.0-more-archs.patch, NONE, 1.1 SimGear-1.9.0-notabbed_value_test.patch, NONE, 1.1 SimGear-1.9.0-shared.patch, NONE, 1.1 SimGear-1.9.0-untangle.patch, NONE, 1.1 .cvsignore, 1.4, 1.5 SimGear.spec, 1.12, 1.13 sources, 1.4, 1.5 SimGear-0.3.10-notabbed_value_test.patch, 1.2, NONE SimGear-0.3.10-thesky.patch, 1.1, NONE SimGear-1.0.0-headers.patch, 1.1, NONE SimGear-1.0.0-more-archs.patch, 1.1, NONE SimGear-1.0.0-shared-auto.patch, 1.1, NONE SimGear-1.0.0-shared.patch, 1.1, NONE SimGear-1.0.0-untangle.patch, 1.1, NONE

Fabrice Bellet bellet at fedoraproject.org
Wed Jan 7 16:32:11 UTC 2009


Author: bellet

Update of /cvs/extras/rpms/SimGear/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv5146

Modified Files:
	.cvsignore SimGear.spec sources 
Added Files:
	SimGear-1.9.0-headers.patch SimGear-1.9.0-more-archs.patch 
	SimGear-1.9.0-notabbed_value_test.patch 
	SimGear-1.9.0-shared.patch SimGear-1.9.0-untangle.patch 
Removed Files:
	SimGear-0.3.10-notabbed_value_test.patch 
	SimGear-0.3.10-thesky.patch SimGear-1.0.0-headers.patch 
	SimGear-1.0.0-more-archs.patch SimGear-1.0.0-shared-auto.patch 
	SimGear-1.0.0-shared.patch SimGear-1.0.0-untangle.patch 
Log Message:
* Tue Jan 06 2009 Fabrice Bellet <fabrice at bellet.info> 1.9.0-1
- New upstream release


SimGear-1.9.0-headers.patch:

--- NEW FILE SimGear-1.9.0-headers.patch ---
--- misc/stopwatch.hxx.BAD	2006-10-18 14:57:56.000000000 -0500
+++ misc/stopwatch.hxx	2006-10-18 14:58:06.000000000 -0500
@@ -42,10 +42,6 @@
 # error This library requires C++
 #endif
 
-#ifdef HAVE_CONFIG_H
-#  include <simgear_config.h>
-#endif
-
 #if defined(__linux__) && ! defined(HAVE_GETRUSAGE)
 #  define HAVE_GETRUSAGE
 #endif
--- structure/SGSmplhist.hxx.BAD	2008-01-07 21:44:55.000000000 +0100
+++ structure/SGSmplhist.hxx	2008-01-07 21:46:29.000000000 +0100
@@ -16,9 +16,6 @@
 Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 */
 
-#ifdef HAVE_CONFIG_H
-#include <simgear_config.h>
-#endif
 #ifndef SampleHistogram_h
 #ifdef __GNUG__
 #pragma interface
--- timing/timestamp.hxx.BAD	2008-01-07 11:03:49.000000000 +0100
+++ timing/timestamp.hxx	2008-01-07 21:47:15.000000000 +0100
@@ -32,9 +32,8 @@
 # error This library requires C++
 #endif
 
-#ifdef HAVE_CONFIG_H
-#  include <simgear_config.h>
-#endif
+#define HAVE_GETTIMEOFDAY 1
+#define HAVE_SYS_TIME_H 1
 
 #include <simgear/compiler.h>
 

SimGear-1.9.0-more-archs.patch:

--- NEW FILE SimGear-1.9.0-more-archs.patch ---
diff -uNrp SimGear-1.9.0.orig/simgear/nasal/naref.h SimGear-1.9.0/simgear/nasal/naref.h
--- SimGear-1.9.0.orig/simgear/nasal/naref.h	2008-10-23 21:34:02.000000000 +0200
+++ SimGear-1.9.0/simgear/nasal/naref.h	2008-11-23 00:37:02.000000000 +0100
@@ -14,7 +14,7 @@
       defined(__ia64__) || defined(_M_IA64) || defined(__ARMEL__) 
 # define NASAL_LE
 #elif defined(__sparc) || defined(__ppc__) || defined(__PPC) || \
-      defined(__mips) || defined(__ARMEB__)
+      defined(__mips) || defined(__ARMEB__) || defined (__powerpc__) || defined (__powerpc64__) || defined (__alpha__)
 # define NASAL_BE
 #else
 # error Unrecognized CPU architecture

SimGear-1.9.0-notabbed_value_test.patch:

--- NEW FILE SimGear-1.9.0-notabbed_value_test.patch ---
diff -uNrp SimGear-1.9.0.orig/simgear/misc/Makefile.am SimGear-1.9.0/simgear/misc/Makefile.am
--- SimGear-1.9.0.orig/simgear/misc/Makefile.am	2008-11-26 19:59:38.000000000 +0100
+++ SimGear-1.9.0/simgear/misc/Makefile.am	2008-11-26 20:00:45.000000000 +0100
@@ -31,16 +31,7 @@ libsgmisc_la_LIBADD = \
 	$(top_builddir)/simgear/props/libsgprops.la \
 	-losg -losgDB
 
-noinst_PROGRAMS = tabbed_value_test swap_test
-
-tabbed_value_test_SOURCES = tabbed_values_test.cxx
-tabbed_value_test_LDFLAGS = \
-	$(top_builddir)/simgear/misc/libsgmisc.la \
-	$(top_builddir)/simgear/xml/libsgxml.la \
-	$(top_builddir)/simgear/debug/libsgdebug.la \
-	$(top_builddir)/simgear/structure/libsgstructure.la \
-	$(top_builddir)/simgear/props/libsgprops.la \
-	-lz
+noinst_PROGRAMS = swap_test
 
 swap_test_SOURCES = swap_test.cpp
 

SimGear-1.9.0-shared.patch:

--- NEW FILE SimGear-1.9.0-shared.patch ---
diff -uNrp SimGear-1.9.0.orig/configure.ac SimGear-1.9.0/configure.ac
--- SimGear-1.9.0.orig/configure.ac	2008-12-20 07:39:46.000000000 +0100
+++ SimGear-1.9.0/configure.ac	2009-01-06 09:48:09.000000000 +0100
@@ -3,6 +3,7 @@ dnl script.
 
 AC_INIT
 AC_CONFIG_SRCDIR([simgear/bucket/newbucket.cxx])
+AC_PROG_LIBTOOL
 
 dnl Require at least automake 2.52
 AC_PREREQ(2.52)
diff -uNrp SimGear-1.9.0.orig/simgear/bucket/Makefile.am SimGear-1.9.0/simgear/bucket/Makefile.am
--- SimGear-1.9.0.orig/simgear/bucket/Makefile.am	2007-07-23 00:37:26.000000000 +0200
+++ SimGear-1.9.0/simgear/bucket/Makefile.am	2009-01-06 09:48:09.000000000 +0100
@@ -1,10 +1,11 @@
 includedir = @includedir@/bucket
 
-lib_LIBRARIES = libsgbucket.a
+lib_LTLIBRARIES = libsgbucket.la
 
 include_HEADERS = newbucket.hxx
 
-libsgbucket_a_SOURCES = newbucket.cxx
+libsgbucket_la_SOURCES = newbucket.cxx
+libsgbucket_la_LDFLAGS = -release @VERSION@ -module
 
 # noinst_PROGRAMS = testbucket
 
diff -uNrp SimGear-1.9.0.orig/simgear/debug/Makefile.am SimGear-1.9.0/simgear/debug/Makefile.am
--- SimGear-1.9.0.orig/simgear/debug/Makefile.am	2002-09-07 04:58:19.000000000 +0200
+++ SimGear-1.9.0/simgear/debug/Makefile.am	2009-01-06 09:48:09.000000000 +0100
@@ -2,10 +2,11 @@ includedir = @includedir@/debug
 
 EXTRA_DIST = logtest.cxx
 
-lib_LIBRARIES = libsgdebug.a
+lib_LTLIBRARIES = libsgdebug.la
 
 include_HEADERS = debug_types.h logstream.hxx
 
-libsgdebug_a_SOURCES = logstream.cxx
+libsgdebug_la_SOURCES = logstream.cxx
+libsgdebug_la_LDFLAGS = -release @VERSION@ -module
 
 INCLUDES = -I$(top_srcdir)
diff -uNrp SimGear-1.9.0.orig/simgear/environment/Makefile.am SimGear-1.9.0/simgear/environment/Makefile.am
--- SimGear-1.9.0.orig/simgear/environment/Makefile.am	2008-03-04 09:54:00.000000000 +0100
+++ SimGear-1.9.0/simgear/environment/Makefile.am	2009-01-06 09:48:09.000000000 +0100
@@ -1,9 +1,17 @@
 includedir = @includedir@/environment
 
-lib_LIBRARIES = libsgenvironment.a
+lib_LTLIBRARIES = libsgenvironment.la
 
 include_HEADERS = metar.hxx visual_enviro.hxx precipitation.hxx
 
-libsgenvironment_a_SOURCES = metar.cxx visual_enviro.cxx precipitation.cxx
+libsgenvironment_la_SOURCES = metar.cxx visual_enviro.cxx precipitation.cxx
+libsgenvironment_la_LDFLAGS = -release @VERSION@ -module -lGL -lplibssg
+libsgenvironment_la_LIBADD = \
+	$(top_builddir)/simgear/structure/libsgstructure.la \
+	$(top_builddir)/simgear/props/libsgprops.la \
+	$(top_builddir)/simgear/io/libsgio.la \
+	$(top_builddir)/simgear/sound/libsgsound.la \
+	$(top_builddir)/simgear/scene/sky/libsgsky.la
+	$(top_builddir)/simgear/math/libsgmath.la
 
 INCLUDES = -I$(top_srcdir)
diff -uNrp SimGear-1.9.0.orig/simgear/ephemeris/Makefile.am SimGear-1.9.0/simgear/ephemeris/Makefile.am
--- SimGear-1.9.0.orig/simgear/ephemeris/Makefile.am	2003-08-29 09:35:55.000000000 +0200
+++ SimGear-1.9.0/simgear/ephemeris/Makefile.am	2009-01-06 09:48:09.000000000 +0100
@@ -1,6 +1,6 @@
 includedir = @includedir@/ephemeris
 
-lib_LIBRARIES = libsgephem.a
+lib_LTLIBRARIES = libsgephem.la
 
 include_HEADERS = \
 	celestialBody.hxx \
@@ -16,7 +16,7 @@ include_HEADERS = \
 	uranus.hxx \
 	venus.hxx
 
-libsgephem_a_SOURCES = \
+libsgephem_la_SOURCES = \
 	celestialBody.cxx \
 	ephemeris.cxx \
 	jupiter.cxx \
@@ -31,4 +31,10 @@ libsgephem_a_SOURCES = \
 	uranus.cxx \
 	venus.cxx
 
+libsgephem_la_LDFLAGS = -release @VERSION@ -module
+
+libsgephem_la_LIBADD = \
+	$(top_builddir)/simgear/misc/libsgmisc.la \
+	$(top_builddir)/simgear/debug/libsgdebug.la
+
 INCLUDES = -I$(top_srcdir)
diff -uNrp SimGear-1.9.0.orig/simgear/io/Makefile.am SimGear-1.9.0/simgear/io/Makefile.am
--- SimGear-1.9.0.orig/simgear/io/Makefile.am	2007-07-23 00:37:26.000000000 +0200
+++ SimGear-1.9.0/simgear/io/Makefile.am	2009-01-06 09:48:09.000000000 +0100
@@ -1,6 +1,6 @@
 includedir = @includedir@/io
 
-lib_LIBRARIES = libsgio.a
+lib_LTLIBRARIES = libsgio.la
 
 include_HEADERS = \
 	iochannel.hxx \
@@ -11,7 +11,7 @@ include_HEADERS = \
 	sg_socket.hxx \
 	sg_socket_udp.hxx
 
-libsgio_a_SOURCES = \
+libsgio_la_SOURCES = \
 	iochannel.cxx \
 	lowlevel.cxx \
 	sg_binobj.cxx \
@@ -22,55 +22,82 @@ libsgio_a_SOURCES = \
 
 INCLUDES = -I$(top_srcdir)
 
+libsgio_la_LDFLAGS = -release @VERSION@ -module -lplibnet -lz
+
+libsgio_la_LIBADD = \
+	$(top_builddir)/simgear/serial/libsgserial.la \
+	$(top_builddir)/simgear/debug/libsgdebug.la \
+	$(top_builddir)/simgear/bucket/libsgbucket.la
+
 noinst_PROGRAMS = decode_binobj socktest lowtest tcp_server tcp_client
 
 tcp_server_SOURCES = tcp_server.cxx
 
-tcp_server_LDADD = \
-	libsgio.a \
-	$(top_builddir)/simgear/debug/libsgdebug.a \
-	$(top_builddir)/simgear/bucket/libsgbucket.a \
-	$(top_builddir)/simgear/misc/libsgmisc.a \
+tcp_server_LDFLAGS = \
+	$(top_builddir)/simgear/io/libsgio.la \
+	$(top_builddir)/simgear/debug/libsgdebug.la \
+	$(top_builddir)/simgear/bucket/libsgbucket.la \
+	$(top_builddir)/simgear/misc/libsgmisc.la \
+	$(top_builddir)/simgear/serial/libsgserial.la \
+	$(top_builddir)/simgear/structure/libsgstructure.la \
+	$(top_builddir)/simgear/props/libsgprops.la \
+	$(top_builddir)/simgear/xml/libsgxml.la \
 	-lplibnet -lplibul -lz \
 	$(network_LIBS) \
 	$(base_LIBS)
 
 tcp_client_SOURCES = tcp_client.cxx
 
-tcp_client_LDADD = \
-	libsgio.a \
-	$(top_builddir)/simgear/debug/libsgdebug.a \
-	$(top_builddir)/simgear/bucket/libsgbucket.a \
-	$(top_builddir)/simgear/misc/libsgmisc.a \
+tcp_client_LDFLAGS = \
+	$(top_builddir)/simgear/io/libsgio.la \
+	$(top_builddir)/simgear/debug/libsgdebug.la \
+	$(top_builddir)/simgear/bucket/libsgbucket.la \
+	$(top_builddir)/simgear/misc/libsgmisc.la \
+	$(top_builddir)/simgear/serial/libsgserial.la \
+	$(top_builddir)/simgear/structure/libsgstructure.la \
+	$(top_builddir)/simgear/props/libsgprops.la \
+	$(top_builddir)/simgear/xml/libsgxml.la \
 	-lplibnet -lplibul -lz \
 	$(network_LIBS) \
 	$(base_LIBS)
 
 socktest_SOURCES = socktest.cxx
 
-socktest_LDADD = \
-	libsgio.a \
-	$(top_builddir)/simgear/debug/libsgdebug.a \
-	$(top_builddir)/simgear/bucket/libsgbucket.a \
-	$(top_builddir)/simgear/misc/libsgmisc.a \
-	-lplibnet -lplibul -lz \
+socktest_LDFLAGS = \
+	$(top_builddir)/simgear/io/libsgio.la \
+	$(top_builddir)/simgear/debug/libsgdebug.la \
+	$(top_builddir)/simgear/bucket/libsgbucket.la \
+	$(top_builddir)/simgear/misc/libsgmisc.la \
+	$(top_builddir)/simgear/serial/libsgserial.la \
+	$(top_builddir)/simgear/structure/libsgstructure.la \
+	$(top_builddir)/simgear/props/libsgprops.la \
+	$(top_builddir)/simgear/xml/libsgxml.la \
+	-lplibnet -lz \
 	$(network_LIBS) \
 	$(base_LIBS)
 
 lowtest_SOURCES = lowtest.cxx
 
-lowtest_LDADD = \
-	libsgio.a \
-	$(top_builddir)/simgear/debug/libsgdebug.a \
-	$(top_builddir)/simgear/bucket/libsgbucket.a \
-	$(top_builddir)/simgear/misc/libsgmisc.a \
-	$(base_LIBS) -lz
+lowtest_LDFLAGS = \
+	$(top_builddir)/simgear/io/libsgio.la \
+	$(top_builddir)/simgear/debug/libsgdebug.la \
+	$(top_builddir)/simgear/bucket/libsgbucket.la \
+	$(top_builddir)/simgear/misc/libsgmisc.la \
+	$(top_builddir)/simgear/serial/libsgserial.la \
+	$(top_builddir)/simgear/structure/libsgstructure.la \
+	$(top_builddir)/simgear/props/libsgprops.la \
+	$(top_builddir)/simgear/xml/libsgxml.la \
+	$(base_LIBS) -lz -lplibnet -lplibul
 
 decode_binobj_SOURCES = decode_binobj.cxx
 
-decode_binobj_LDADD = \
-	libsgio.a \
-	$(top_builddir)/simgear/debug/libsgdebug.a \
-	$(top_builddir)/simgear/bucket/libsgbucket.a \
-	$(top_builddir)/simgear/misc/libsgmisc.a \
-	$(base_LIBS) -lz
+decode_binobj_LDFLAGS = \
+	$(top_builddir)/simgear/io/libsgio.la \
+	$(top_builddir)/simgear/debug/libsgdebug.la \
+	$(top_builddir)/simgear/bucket/libsgbucket.la \
+	$(top_builddir)/simgear/misc/libsgmisc.la \
+	$(top_builddir)/simgear/serial/libsgserial.la \
+	$(top_builddir)/simgear/structure/libsgstructure.la \
+	$(top_builddir)/simgear/props/libsgprops.la \
+	$(top_builddir)/simgear/xml/libsgxml.la \
+	$(base_LIBS) -lz -lplibnet -lplibul
diff -uNrp SimGear-1.9.0.orig/simgear/magvar/Makefile.am SimGear-1.9.0/simgear/magvar/Makefile.am
--- SimGear-1.9.0.orig/simgear/magvar/Makefile.am	2007-07-23 00:37:26.000000000 +0200
+++ SimGear-1.9.0/simgear/magvar/Makefile.am	2009-01-06 09:48:09.000000000 +0100
@@ -1,19 +1,21 @@
 includedir = @includedir@/magvar
 
-lib_LIBRARIES = libsgmagvar.a
+lib_LTLIBRARIES = libsgmagvar.la
 
 include_HEADERS = magvar.hxx
 
-libsgmagvar_a_SOURCES = \
+libsgmagvar_la_SOURCES = \
 	coremag.hxx coremag.cxx \
 	magvar.cxx
 
+libsgmagvar_la_LDFLAGS = -release @VERSION@ -module
+
 noinst_PROGRAMS = testmagvar
 
 testmagvar_SOURCES = testmagvar.cxx
 
-testmagvar_LDADD = \
-	libsgmagvar.a \
+testmagvar_LDFLAGS = \
+	$(top_builddir)/simgear/magvar/libsgmagvar.la \
 	$(base_LIBS)
 
 INCLUDES = -I$(top_srcdir)
diff -uNrp SimGear-1.9.0.orig/simgear/Makefile.am SimGear-1.9.0/simgear/Makefile.am
--- SimGear-1.9.0.orig/simgear/Makefile.am	2008-07-25 20:35:40.000000000 +0200
+++ SimGear-1.9.0/simgear/Makefile.am	2009-01-06 09:48:09.000000000 +0100
@@ -14,23 +14,25 @@ include_HEADERS = \
 
 SUBDIRS = \
 	$(compatibility_DIR) \
-	xml \
 	debug \
-	misc \
 	structure \
+	xml \
+	props \
+	misc \
 	bucket \
 	ephemeris \
+	serial \
 	io \
 	magvar \
 	math \
+	sound \
+	screen \
+	scene/util \
+	scene/sky \
 	$(METAR_DIRS) \
 	nasal \
-	props \
 	route \
 	scene \
-	screen \
-	serial \
-	sound \
 	$(SGTHREAD_DIR) \
 	timing
 
diff -uNrp SimGear-1.9.0.orig/simgear/math/Makefile.am SimGear-1.9.0/simgear/math/Makefile.am
--- SimGear-1.9.0.orig/simgear/math/Makefile.am	2008-04-14 23:44:21.000000000 +0200
+++ SimGear-1.9.0/simgear/math/Makefile.am	2009-01-06 09:48:09.000000000 +0100
@@ -4,12 +4,20 @@ check_PROGRAMS  = SGMathTest SGGeometryT
 TESTS           = $(check_PROGRAMS)
 
 SGMathTest_SOURCES = SGMathTest.cxx
-SGMathTest_LDADD = libsgmath.a $(base_LIBS)
+SGMathTest_LDFLAGS = $(top_builddir)/simgear/io/libsgio.la \
+		     $(top_builddir)/simgear/debug/libsgdebug.la \
+		     $(top_builddir)/simgear/bucket/libsgbucket.la \
+		     $(top_builddir)/simgear/misc/libsgmisc.la \
+		     $(top_builddir)/simgear/serial/libsgserial.la \
+		     $(top_builddir)/simgear/structure/libsgstructure.la \
+		     $(top_builddir)/simgear/props/libsgprops.la \
+		     $(top_builddir)/simgear/xml/libsgxml.la \
+		     libsgmath.la $(base_LIBS) -lz -lplibnet -lplibul
 
 SGGeometryTest_SOURCES = SGGeometryTest.cxx
-SGGeometryTest_LDADD = libsgmath.a $(base_LIBS)
+SGGeometryTest_LDFLAGS = libsgmath.la $(base_LIBS)
 
-lib_LIBRARIES = libsgmath.a
+lib_LTLIBRARIES = libsgmath.la
 
 include_HEADERS = \
 	interpolater.hxx \
@@ -44,7 +52,7 @@ include_HEADERS = \
 	SGVec3.hxx \
 	SGVec4.hxx
 
-libsgmath_a_SOURCES = \
+libsgmath_la_SOURCES = \
 	interpolater.cxx \
 	leastsqs.cxx \
 	sg_random.c \
@@ -52,4 +60,11 @@ libsgmath_a_SOURCES = \
 	SGGeod.cxx \
 	SGGeodesy.cxx
 
+libsgmath_la_LDFLAGS = -release @VERSION@ -module
+
+libsgmath_la_LIBADD = \
+	$(top_builddir)/simgear/debug/libsgdebug.la \
+	$(top_builddir)/simgear/misc/libsgmisc.la \
+	$(top_builddir)/simgear/props/libsgprops.la
+
 INCLUDES = -I$(top_srcdir)
diff -uNrp SimGear-1.9.0.orig/simgear/misc/Makefile.am SimGear-1.9.0/simgear/misc/Makefile.am
--- SimGear-1.9.0.orig/simgear/misc/Makefile.am	2007-12-04 23:38:41.000000000 +0100
+++ SimGear-1.9.0/simgear/misc/Makefile.am	2009-01-06 09:48:09.000000000 +0100
@@ -1,6 +1,6 @@
 includedir = @includedir@/misc
 
-lib_LIBRARIES = libsgmisc.a
+lib_LTLIBRARIES = libsgmisc.la
 
 include_HEADERS = \
 	sg_path.hxx \
@@ -14,7 +14,7 @@ include_HEADERS = \
 	stdint.hxx \
 	PathOptions.hxx
 
-libsgmisc_a_SOURCES = \
+libsgmisc_la_SOURCES = \
 	sg_path.cxx \
 	sgstream.cxx \
 	strutils.cxx \
@@ -24,19 +24,23 @@ libsgmisc_a_SOURCES = \
 	interpolator.cxx \
 	PathOptions.cxx
 
-noinst_PROGRAMS = tabbed_value_test swap_test
+libsgmisc_la_LDFLAGS = -release @VERSION@ -module -lz
 
-tabbed_value_test_SOURCES = tabbed_values_test.cxx
-tabbed_value_test_LDADD = \
-	libsgmisc.a \
-	$(top_builddir)/simgear/xml/libsgxml.a \
-	$(top_builddir)/simgear/debug/libsgdebug.a
+libsgmisc_la_LIBADD = \
+	$(top_builddir)/simgear/structure/libsgstructure.la \
+	$(top_builddir)/simgear/props/libsgprops.la \
+	-losg -losgDB
 
-$(top_builddir)/simgear/xml/libsgxml.a:
-	cd $(top_builddir)/simgear/xml && $(MAKE) $(AM_MAKEFLAGS) libsgxml.a
+noinst_PROGRAMS = tabbed_value_test swap_test
 
-$(top_builddir)/simgear/debug/libsgdebug.a:
-	cd $(top_builddir)/simgear/debug && $(MAKE) $(AM_MAKEFLAGS) libsgdebug.a
+tabbed_value_test_SOURCES = tabbed_values_test.cxx
+tabbed_value_test_LDFLAGS = \
+	$(top_builddir)/simgear/misc/libsgmisc.la \
+	$(top_builddir)/simgear/xml/libsgxml.la \
+	$(top_builddir)/simgear/debug/libsgdebug.la \
+	$(top_builddir)/simgear/structure/libsgstructure.la \
+	$(top_builddir)/simgear/props/libsgprops.la \
+	-lz
 
 swap_test_SOURCES = swap_test.cpp
 
diff -uNrp SimGear-1.9.0.orig/simgear/nasal/Makefile.am SimGear-1.9.0/simgear/nasal/Makefile.am
--- SimGear-1.9.0.orig/simgear/nasal/Makefile.am	2007-03-29 20:50:12.000000000 +0200
+++ SimGear-1.9.0/simgear/nasal/Makefile.am	2009-01-06 09:48:09.000000000 +0100
@@ -1,13 +1,15 @@
 includedir = @includedir@/nasal
 
-lib_LIBRARIES = libsgnasal.a
+lib_LTLIBRARIES = libsgnasal.la
 
 include_HEADERS = nasal.h naref.h
 
-libsgnasal_a_SOURCES = bitslib.c code.c code.h codegen.c data.h gc.c	\
-                       hash.c iolib.c iolib.h lex.c lib.c mathlib.c	\
-                       misc.c naref.h nasal.h parse.c parse.h string.c	\
-                       thread-posix.c thread-win32.c threadlib.c	\
-                       utf8lib.c vector.c
+libsgnasal_la_SOURCES = bitslib.c code.c code.h codegen.c data.h gc.c	\
+                        hash.c iolib.c iolib.h lex.c lib.c mathlib.c	\
+                        misc.c naref.h nasal.h parse.c parse.h string.c	\
+                        thread-posix.c thread-win32.c threadlib.c	\
+                        utf8lib.c vector.c
+
+libsgnasal_la_LDFLAGS = -release @VERSION@ -module -lm -lpthread
 
 INCLUDES = -I$(top_srcdir)
diff -uNrp SimGear-1.9.0.orig/simgear/props/Makefile.am SimGear-1.9.0/simgear/props/Makefile.am
--- SimGear-1.9.0.orig/simgear/props/Makefile.am	2007-07-23 00:37:27.000000000 +0200
+++ SimGear-1.9.0/simgear/props/Makefile.am	2009-01-06 09:48:09.000000000 +0100
@@ -1,25 +1,32 @@
 includedir = @includedir@/props
 
-lib_LIBRARIES = libsgprops.a
+lib_LTLIBRARIES = libsgprops.la
 
 include_HEADERS = \
 	condition.hxx \
 	props.hxx \
 	props_io.hxx
 
-libsgprops_a_SOURCES = \
+libsgprops_la_SOURCES = \
 	condition.cxx \
 	props.cxx \
 	props_io.cxx
 
+libsgprops_la_LDFLAGS = -release @VERSION@ -module
+
+libsgprops_la_LIBADD = \
+	$(top_builddir)/simgear/xml/libsgxml.la \
+	$(top_builddir)/simgear/structure/libsgstructure.la \
+	$(top_builddir)/simgear/debug/libsgdebug.la
+
 noinst_PROGRAMS = props_test
 
 props_test_SOURCES = props_test.cxx
-props_test_LDADD = \
-	libsgprops.a \
-	$(top_builddir)/simgear/xml/libsgxml.a \
-	$(top_builddir)/simgear/misc/libsgmisc.a \
-	$(top_builddir)/simgear/debug/libsgdebug.a \
-	$(top_builddir)/simgear/structure/libsgstructure.a
+props_test_LDFLAGS = \
+	$(top_builddir)/simgear/props/libsgprops.la \
+	$(top_builddir)/simgear/xml/libsgxml.la \
+	$(top_builddir)/simgear/debug/libsgdebug.la \
+	$(top_builddir)/simgear/structure/libsgstructure.la \
+	-lz
 
 INCLUDES = -I$(top_srcdir)
diff -uNrp SimGear-1.9.0.orig/simgear/route/Makefile.am SimGear-1.9.0/simgear/route/Makefile.am
--- SimGear-1.9.0.orig/simgear/route/Makefile.am	2007-07-23 00:37:27.000000000 +0200
+++ SimGear-1.9.0/simgear/route/Makefile.am	2009-01-06 09:48:09.000000000 +0100
@@ -1,34 +1,43 @@
 includedir = @includedir@/route
 
-lib_LIBRARIES = libsgroute.a
+lib_LTLIBRARIES = libsgroute.la
 
 include_HEADERS = route.hxx waypoint.hxx
 
-libsgroute_a_SOURCES = \
+libsgroute_la_SOURCES = \
 	route.cxx \
 	waypoint.cxx
 
+libsgroute_la_LDFLAGS = -release @VERSION@ -module
+
+libsgroute_la_LIBADD = \
+	$(top_builddir)/simgear/math/libsgmath.la
+
 INCLUDES = -I$(top_srcdir)
 
 noinst_PROGRAMS = waytest routetest
 
 waytest_SOURCES = waytest.cxx
 
-waytest_LDADD = \
-	libsgroute.a \
-	$(top_builddir)/simgear/math/libsgmath.a \
-	$(top_builddir)/simgear/debug/libsgdebug.a \
-	$(top_builddir)/simgear/misc/libsgmisc.a \
-	$(top_builddir)/simgear/props/libsgprops.a \
-	$(top_builddir)/simgear/structure/libsgstructure.a \
-	$(top_builddir)/simgear/xml/libsgxml.a \
+waytest_LDFLAGS = \
+	$(top_builddir)/simgear/route/libsgroute.la \
+	$(top_builddir)/simgear/math/libsgmath.la \
+	$(top_builddir)/simgear/debug/libsgdebug.la \
+	$(top_builddir)/simgear/misc/libsgmisc.la \
+	$(top_builddir)/simgear/structure/libsgstructure.la \
+	$(top_builddir)/simgear/props/libsgprops.la \
+	$(top_builddir)/simgear/xml/libsgxml.la \
 	$(base_LIBS) \
 	-lz
 
 routetest_SOURCES = routetest.cxx
 
-routetest_LDADD = \
-	libsgroute.a \
-	$(top_builddir)/simgear/math/libsgmath.a \
-	$(top_builddir)/simgear/debug/libsgdebug.a \
-	$(base_LIBS)
+routetest_LDFLAGS = \
+	$(top_builddir)/simgear/route/libsgroute.la \
+	$(top_builddir)/simgear/math/libsgmath.la \
+	$(top_builddir)/simgear/debug/libsgdebug.la \
+	$(top_builddir)/simgear/misc/libsgmisc.la \
+	$(top_builddir)/simgear/structure/libsgstructure.la \
+	$(top_builddir)/simgear/props/libsgprops.la \
+	$(top_builddir)/simgear/xml/libsgxml.la \
+	$(base_LIBS) -lz
diff -uNrp SimGear-1.9.0.orig/simgear/scene/material/Makefile.am SimGear-1.9.0/simgear/scene/material/Makefile.am
--- SimGear-1.9.0.orig/simgear/scene/material/Makefile.am	2003-05-15 18:19:56.000000000 +0200
+++ SimGear-1.9.0/simgear/scene/material/Makefile.am	2009-01-06 09:48:09.000000000 +0100
@@ -1,6 +1,6 @@
 includedir = @includedir@/scene/material
 
-lib_LIBRARIES = libsgmaterial.a
+lib_LTLIBRARIES = libsgmaterial.la
 
 noinst_HEADERS =
 
@@ -9,9 +9,17 @@ include_HEADERS = \
 	matlib.hxx \
 	matmodel.hxx
 
-libsgmaterial_a_SOURCES = \
+libsgmaterial_la_SOURCES = \
 	mat.cxx \
 	matlib.cxx \
 	matmodel.cxx
 
+libsgmaterial_la_LDFLAGS = -release @VERSION@ -module -lplibssg -lGL
+
+libsgmaterial_la_LIBADD = \
+	$(top_builddir)/simgear/debug/libsgdebug.la \
+	$(top_builddir)/simgear/structure/libsgstructure.la \
+	$(top_builddir)/simgear/props/libsgprops.la \
+	$(top_builddir)/simgear/math/libsgmath.la
+
 INCLUDES = -I$(top_srcdir)
diff -uNrp SimGear-1.9.0.orig/simgear/scene/model/Makefile.am SimGear-1.9.0/simgear/scene/model/Makefile.am
--- SimGear-1.9.0.orig/simgear/scene/model/Makefile.am	2008-03-22 10:30:26.000000000 +0100
+++ SimGear-1.9.0/simgear/scene/model/Makefile.am	2009-01-06 09:48:09.000000000 +0100
@@ -1,6 +1,6 @@
 includedir = @includedir@/scene/model
 
-lib_LIBRARIES = libsgmodel.a
+lib_LTLIBRARIES = libsgmodel.la
 
 noinst_HEADERS =
 
@@ -25,7 +25,7 @@ include_HEADERS = \
 	SGScaleTransform.hxx \
 	SGTranslateTransform.hxx
 
-libsgmodel_a_SOURCES = \
+libsgmodel_la_SOURCES = \
 	animation.cxx \
 	particles.cxx \
 	location.cxx \
@@ -46,4 +46,14 @@ libsgmodel_a_SOURCES = \
 	SGScaleTransform.cxx \
 	SGTranslateTransform.cxx
 
+libsgmodel_la_LDFLAGS = -release @VERSION@ -module -lplibssg -lplibsg -lGL
+
+libsgmodel_la_LIBADD = \
+	$(top_builddir)/simgear/debug/libsgdebug.la \
+	$(top_builddir)/simgear/structure/libsgstructure.la \
+	$(top_builddir)/simgear/props/libsgprops.la \
+	$(top_builddir)/simgear/screen/libsgscreen.la \
+	$(top_builddir)/simgear/environment/libsgenvironment.la \
+	$(top_builddir)/simgear/math/libsgmath.la
+
 INCLUDES = -I$(top_srcdir)
diff -uNrp SimGear-1.9.0.orig/simgear/scene/sky/Makefile.am SimGear-1.9.0/simgear/scene/sky/Makefile.am
--- SimGear-1.9.0.orig/simgear/scene/sky/Makefile.am	2008-10-26 10:37:18.000000000 +0100
+++ SimGear-1.9.0/simgear/scene/sky/Makefile.am	2009-01-06 09:48:09.000000000 +0100
@@ -1,6 +1,6 @@
 includedir = @includedir@/scene/sky
 
-lib_LIBRARIES = libsgsky.a
+lib_LTLIBRARIES = libsgsky.la
 
 include_HEADERS = \
 	cloud.hxx \
@@ -15,7 +15,7 @@ include_HEADERS = \
 	newcloud.hxx \
 	CloudShaderGeometry.hxx
 
-libsgsky_a_SOURCES = \
+libsgsky_la_SOURCES = \
 	cloud.cxx \
 	dome.cxx \
 	moon.cxx \
@@ -28,4 +28,15 @@ libsgsky_a_SOURCES = \
 	newcloud.cxx \
 	CloudShaderGeometry.cxx
 
+libsgsky_la_LDFLAGS = -release @VERSION@ -module -lplibssg -lplibul -lplibsg \
+	-lGL -lGLU
+
+libsgsky_la_LIBADD = \
+	$(top_builddir)/simgear/screen/libsgscreen.la \
+	$(top_builddir)/simgear/debug/libsgdebug.la \
+	$(top_builddir)/simgear/misc/libsgmisc.la \
+	$(top_builddir)/simgear/props/libsgprops.la \
+	$(top_builddir)/simgear/math/libsgmath.la \
+	$(top_builddir)/simgear/scene/util/libsgutil.la
+
 INCLUDES = -I$(top_srcdir)
diff -uNrp SimGear-1.9.0.orig/simgear/scene/tgdb/Makefile.am SimGear-1.9.0/simgear/scene/tgdb/Makefile.am
--- SimGear-1.9.0.orig/simgear/scene/tgdb/Makefile.am	2008-08-28 19:52:44.000000000 +0200
+++ SimGear-1.9.0/simgear/scene/tgdb/Makefile.am	2009-01-06 09:48:09.000000000 +0100
@@ -1,6 +1,6 @@
 includedir = @includedir@/scene/tgdb
 
-lib_LIBRARIES = libsgtgdb.a
+lib_LTLIBRARIES = libsgtgdb.la
 
 noinst_HEADERS =
 
@@ -24,7 +24,7 @@ include_HEADERS = \
 	TileCache.hxx \
 	TileEntry.hxx
 
-libsgtgdb_a_SOURCES = \
+libsgtgdb_la_SOURCES = \
 	apt_signs.cxx \
 	obj.cxx \
 	pt_lights.cxx \
@@ -40,4 +40,14 @@ libsgtgdb_a_SOURCES = \
 	TileEntry.cxx \
 	TreeBin.cxx TreeBin.hxx
 
+libsgtgdb_la_LDFLAGS = -release @VERSION@ -module -lplibssg -lplibul -lGL
+
+libsgtgdb_la_LIBADD = \
+	$(top_builddir)/simgear/debug/libsgdebug.la \
+	$(top_builddir)/simgear/bucket/libsgbucket.la \
+	$(top_builddir)/simgear/io/libsgio.la \
+	$(top_builddir)/simgear/scene/material/libsgmaterial.la \
+	$(top_builddir)/simgear/screen/libsgscreen.la \
+	$(top_builddir)/simgear/math/libsgmath.la
+
 INCLUDES = -I$(top_srcdir)
diff -uNrp SimGear-1.9.0.orig/simgear/scene/util/Makefile.am SimGear-1.9.0/simgear/scene/util/Makefile.am
--- SimGear-1.9.0.orig/simgear/scene/util/Makefile.am	2008-04-23 20:13:51.000000000 +0200
+++ SimGear-1.9.0/simgear/scene/util/Makefile.am	2009-01-06 09:48:09.000000000 +0100
@@ -1,6 +1,6 @@
 includedir = @includedir@/scene/util
 
-lib_LIBRARIES = libsgutil.a
+lib_LTLIBRARIES = libsgutil.la
 
 noinst_HEADERS =
 
@@ -21,7 +21,7 @@ include_HEADERS = \
 	VectorArrayAdapter.hxx
 
 
-libsgutil_a_SOURCES = \
+libsgutil_la_SOURCES = \
 	SGEnlargeBoundingBox.cxx \
 	SGSceneFeatures.cxx \
 	SGSceneUserData.cxx \
@@ -31,4 +31,6 @@ libsgutil_a_SOURCES = \
 	StateAttributeFactory.cxx \
 	QuadTreeBuilder.cxx
 
+libsgutil_la_LDFLAGS = -release @VERSION@ -module
+
 INCLUDES = -I$(top_srcdir)
diff -uNrp SimGear-1.9.0.orig/simgear/screen/Makefile.am SimGear-1.9.0/simgear/screen/Makefile.am
--- SimGear-1.9.0.orig/simgear/screen/Makefile.am	2007-07-23 00:37:27.000000000 +0200
+++ SimGear-1.9.0/simgear/screen/Makefile.am	2009-01-06 09:48:09.000000000 +0100
@@ -1,6 +1,6 @@
 includedir = @includedir@/screen
 
-lib_LIBRARIES = libsgscreen.a
+lib_LTLIBRARIES = libsgscreen.la
 
 EXTRA_DIST = jpgfactory.cxx jpgfactory.hxx
 
@@ -24,7 +24,7 @@ include_HEADERS = \
 	shader.h \
 	tr.h
 
-libsgscreen_a_SOURCES = \
+libsgscreen_la_SOURCES = \
 	texture.cxx \
 	GLBitmaps.cxx \
 	$(IMAGE_SERVER_SRCS) \
@@ -35,15 +35,21 @@ libsgscreen_a_SOURCES = \
 	shader.cpp \
 	win32-printer.h
 
+libsgscreen_la_LDFLAGS = -release @VERSION@ -module -lGL -lGLU -lX11 -lz \
+	-ldl -ljpeg -lplibssg
+
+libsgscreen_la_LIBADD = \
+	$(top_builddir)/simgear/debug/libsgdebug.la
+
 if HAVE_GLUT
 noinst_PROGRAMS = TestRenderTexture
 
 TestRenderTexture_SOURCES = TestRenderTexture.cpp
 
-TestRenderTexture_LDADD = \
-	libsgscreen.a \
-	$(top_builddir)/simgear/debug/libsgdebug.a \
-	$(opengl_LIBS)
+TestRenderTexture_LDFLAGS = \
+	$(top_builddir)/simgear/screen/libsgscreen.la \
+	$(top_builddir)/simgear/debug/libsgdebug.la \
+	$(opengl_LIBS) -lz -lplibssg -ljpeg
 endif
 
 INCLUDES = -I$(top_srcdir) -I$(top_builddir) -DGLX_GLXEXT_PROTOTYPES
diff -uNrp SimGear-1.9.0.orig/simgear/serial/Makefile.am SimGear-1.9.0/simgear/serial/Makefile.am
--- SimGear-1.9.0.orig/simgear/serial/Makefile.am	2007-07-23 00:37:27.000000000 +0200
+++ SimGear-1.9.0/simgear/serial/Makefile.am	2009-01-06 09:48:09.000000000 +0100
@@ -1,17 +1,21 @@
 includedir = @includedir@/serial
 
-lib_LIBRARIES = libsgserial.a
+lib_LTLIBRARIES = libsgserial.la
 
 include_HEADERS = serial.hxx
 
-libsgserial_a_SOURCES = serial.cxx
+libsgserial_la_SOURCES = serial.cxx
+
+libsgserial_la_LDFLAGS = -release @VERSION@ -module
+libsgserial_la_LIBADD = \
+	$(top_builddir)/simgear/debug/libsgdebug.la
 
 noinst_PROGRAMS = testserial
 
 testserial_SOURCES = testserial.cxx
 
-testserial_LDADD = \
-	libsgserial.a \
-	$(top_builddir)/simgear/debug/libsgdebug.a
+testserial_LDFLAGS = \
+	$(top_builddir)/simgear/serial/libsgserial.la \
+	$(top_builddir)/simgear/debug/libsgdebug.la
 
 INCLUDES = -I$(top_srcdir)
diff -uNrp SimGear-1.9.0.orig/simgear/sound/Makefile.am SimGear-1.9.0/simgear/sound/Makefile.am
--- SimGear-1.9.0.orig/simgear/sound/Makefile.am	2007-07-23 00:37:27.000000000 +0200
+++ SimGear-1.9.0/simgear/sound/Makefile.am	2009-01-06 09:48:09.000000000 +0100
@@ -2,7 +2,7 @@ includedir = @includedir@/sound
 
 EXTRA_DIST = jet.wav
 
-lib_LIBRARIES = libsgsound.a
+lib_LTLIBRARIES = libsgsound.la
 
 noinst_HEADERS =
 
@@ -11,25 +11,33 @@ include_HEADERS = \
 	soundmgr_openal.hxx \
 	xmlsound.hxx 
 
-libsgsound_a_SOURCES = \
+libsgsound_la_SOURCES = \
 	sample_openal.cxx  \
 	soundmgr_openal.cxx \
 	xmlsound.cxx 
 
+libsgsound_la_LDFLAGS = -release @VERSION@ -module $(openal_LIBS)
+libsgsound_la_LIBADD = \
+	$(top_builddir)/simgear/structure/libsgstructure.la \
+	$(top_builddir)/simgear/debug/libsgdebug.la \
+	$(top_builddir)/simgear/props/libsgprops.la
+
 noinst_PROGRAMS = openal_test1 openal_test2
 
 openal_test1_SOURCES = openal_test1.cxx
 openal_test2_SOURCES = openal_test2.cxx
 
-openal_test1_LDADD = \
-	$(top_builddir)/simgear/debug/libsgdebug.a \
+openal_test1_LDFLAGS = \
+	$(top_builddir)/simgear/debug/libsgdebug.la \
 	$(openal_LIBS)
 
-openal_test2_LDADD = \
-	libsgsound.a \
-	$(top_builddir)/simgear/debug/libsgdebug.a \
-	$(top_builddir)/simgear/misc/libsgmisc.a \
-	$(top_builddir)/simgear/structure/libsgstructure.a \
+openal_test2_LDFLAGS = \
+	$(top_builddir)/simgear/sound/libsgsound.la \
+	$(top_builddir)/simgear/debug/libsgdebug.la \
+	$(top_builddir)/simgear/misc/libsgmisc.la \
+	$(top_builddir)/simgear/structure/libsgstructure.la \
+	$(top_builddir)/simgear/props/libsgprops.la \
+	$(top_builddir)/simgear/xml/libsgxml.la \
 	$(openal_LIBS)
 
 INCLUDES = -I$(top_srcdir) -DSRC_DIR=\"$(top_srcdir)/simgear/sound\"
diff -uNrp SimGear-1.9.0.orig/simgear/structure/Makefile.am SimGear-1.9.0/simgear/structure/Makefile.am
--- SimGear-1.9.0.orig/simgear/structure/Makefile.am	2008-12-11 18:35:14.000000000 +0100
+++ SimGear-1.9.0/simgear/structure/Makefile.am	2009-01-06 09:50:22.000000000 +0100
@@ -1,6 +1,6 @@
 includedir = @includedir@/structure
 
-lib_LIBRARIES = libsgstructure.a
+lib_LTLIBRARIES = libsgstructure.la
 
 include_HEADERS = \
 	callback.hxx \
@@ -19,7 +19,7 @@ include_HEADERS = \
 	SGSmplstat.hxx \
 	Singleton.hxx
 
-libsgstructure_a_SOURCES = \
+libsgstructure_la_SOURCES = \
 	commands.cxx \
 	exception.cxx \
 	event_mgr.cxx\
@@ -30,5 +30,10 @@ libsgstructure_a_SOURCES = \
 	SGSmplhist.cxx \
 	SGSmplstat.cxx
 
+libsgstructure_la_LDFLAGS = -release @VERSION@ -module
+
+libsgstructure_la_LIBADD = \
+	$(top_builddir)/simgear/debug/libsgdebug.la
+
 INCLUDES = -I$(top_srcdir)
 
diff -uNrp SimGear-1.9.0.orig/simgear/structure/Makefile.am.orig SimGear-1.9.0/simgear/structure/Makefile.am.orig
--- SimGear-1.9.0.orig/simgear/structure/Makefile.am.orig	1970-01-01 01:00:00.000000000 +0100
+++ SimGear-1.9.0/simgear/structure/Makefile.am.orig	2008-12-11 18:35:14.000000000 +0100
@@ -0,0 +1,34 @@
+includedir = @includedir@/structure
+
+lib_LIBRARIES = libsgstructure.a
+
+include_HEADERS = \
+	callback.hxx \
+	commands.hxx \
+	exception.hxx \
+	event_mgr.hxx \
+	subsystem_mgr.hxx \
+	OSGUtils.hxx \
+	OSGVersion.hxx \
+	SGAtomic.hxx \
+	SGBinding.hxx \
+	SGExpression.hxx \
+	SGReferenced.hxx \
+	SGSharedPtr.hxx \
+	SGSmplhist.hxx \
+	SGSmplstat.hxx \
+	Singleton.hxx
+
+libsgstructure_a_SOURCES = \
+	commands.cxx \
+	exception.cxx \
+	event_mgr.cxx\
+	subsystem_mgr.cxx \
+	SGAtomic.cxx \
+	SGBinding.cxx \
+	SGExpression.cxx \
+	SGSmplhist.cxx \
+	SGSmplstat.cxx
+
+INCLUDES = -I$(top_srcdir)
+
diff -uNrp SimGear-1.9.0.orig/simgear/structure/Makefile.am.rej SimGear-1.9.0/simgear/structure/Makefile.am.rej
--- SimGear-1.9.0.orig/simgear/structure/Makefile.am.rej	1970-01-01 01:00:00.000000000 +0100
+++ SimGear-1.9.0/simgear/structure/Makefile.am.rej	2009-01-06 09:48:09.000000000 +0100
@@ -0,0 +1,17 @@
+***************
+*** 17,23 ****
+  	SGSmplhist.hxx \
+  	SGSmplstat.hxx
+  
+- libsgstructure_a_SOURCES = \
+  	commands.cxx \
+  	exception.cxx \
+  	event_mgr.cxx\
+--- 17,23 ----
+  	SGSmplhist.hxx \
+  	SGSmplstat.hxx
+  
++ libsgstructure_la_SOURCES = \
+  	commands.cxx \
+  	exception.cxx \
+  	event_mgr.cxx\
Binary files SimGear-1.9.0.orig/simgear/structure/.Makefile.am.rej.swp and SimGear-1.9.0/simgear/structure/.Makefile.am.rej.swp differ
diff -uNrp SimGear-1.9.0.orig/simgear/threads/Makefile.am SimGear-1.9.0/simgear/threads/Makefile.am
--- SimGear-1.9.0.orig/simgear/threads/Makefile.am	2002-09-07 04:58:20.000000000 +0200
+++ SimGear-1.9.0/simgear/threads/Makefile.am	2009-01-06 09:48:09.000000000 +0100
@@ -1,13 +1,15 @@
 includedir = @includedir@/threads
 
-lib_LIBRARIES = libsgthreads.a
+lib_LTLIBRARIES = libsgthreads.la
 
 include_HEADERS = \
 	SGGuard.hxx \
 	SGQueue.hxx \
 	SGThread.hxx
 
-libsgthreads_a_SOURCES = \
+libsgthreads_la_SOURCES = \
 	SGThread.cxx
 
+libsgthreads_la_LDFLAGS = -release @VERSION@ -module
+
 INCLUDES = -I$(top_srcdir)
diff -uNrp SimGear-1.9.0.orig/simgear/timing/Makefile.am SimGear-1.9.0/simgear/timing/Makefile.am
--- SimGear-1.9.0.orig/simgear/timing/Makefile.am	2002-09-07 04:58:19.000000000 +0200
+++ SimGear-1.9.0/simgear/timing/Makefile.am	2009-01-06 09:48:09.000000000 +0100
@@ -1,6 +1,6 @@
 includedir = @includedir@/timing
 
-lib_LIBRARIES = libsgtiming.a
+lib_LTLIBRARIES = libsgtiming.la
 
 include_HEADERS = \
 	geocoord.h \
@@ -9,11 +9,17 @@ include_HEADERS = \
 	timestamp.hxx \
 	timezone.h
 
-libsgtiming_a_SOURCES = \
+libsgtiming_la_SOURCES = \
 	geocoord.cxx \
 	lowleveltime.cxx \
 	sg_time.cxx \
 	timestamp.cxx \
 	timezone.cxx
 
+libsgtiming_la_LDFLAGS = -release @VERSION@ -module
+
+libsgtiming_la_LIBADD = \
+	$(top_builddir)/simgear/debug/libsgdebug.la \
+	$(top_builddir)/simgear/misc/libsgmisc.la
+
 INCLUDES = -I$(top_srcdir)
diff -uNrp SimGear-1.9.0.orig/simgear/xml/Makefile.am SimGear-1.9.0/simgear/xml/Makefile.am
--- SimGear-1.9.0.orig/simgear/xml/Makefile.am	2003-08-29 09:35:57.000000000 +0200
+++ SimGear-1.9.0/simgear/xml/Makefile.am	2009-01-06 09:48:09.000000000 +0100
@@ -1,6 +1,6 @@
 includedir = @includedir@/xml
 
-lib_LIBRARIES = libsgxml.a
+lib_LTLIBRARIES = libsgxml.la
 
 include_HEADERS = \
 	easyxml.hxx
@@ -8,7 +8,7 @@ include_HEADERS = \
 noinst_HEADERS = \
 	xmltok_impl.c xmltok_ns.c
 
-libsgxml_a_SOURCES = \
+libsgxml_la_SOURCES = \
 	asciitab.h \
 	easyxml.cxx \
 	hashtable.h hashtable.c \
@@ -18,4 +18,9 @@ libsgxml_a_SOURCES = \
 	xmltok.h xmltok.c \
 	xmltok_impl.h
 
+libsgxml_la_LDFLAGS = -release @VERSION@ -module
+
+libsgxml_la_LIBADD = \
+	$(top_builddir)/simgear/structure/libsgstructure.la
+
 INCLUDES = -I$(top_srcdir)

SimGear-1.9.0-untangle.patch:

--- NEW FILE SimGear-1.9.0-untangle.patch ---
diff -uNrp SimGear-1.9.0.orig/simgear/misc/sg_path.cxx SimGear-1.9.0/simgear/misc/sg_path.cxx
--- SimGear-1.9.0.orig/simgear/misc/sg_path.cxx	2008-08-05 03:12:20.000000000 +0200
+++ SimGear-1.9.0/simgear/misc/sg_path.cxx	2008-11-23 23:27:54.000000000 +0100
@@ -35,42 +35,6 @@
 #include "sg_path.hxx"
 
 
-/**
- * define directory path separators
- */
-
-static const char sgDirPathSep = '/';
-static const char sgDirPathSepBad = '\\';
-
-#if defined( WIN32 ) && !defined(__CYGWIN__)
-static const char sgSearchPathSep = ';';
-#else
-static const char sgSearchPathSep = ':';
-#endif
-
-
-// If Unix, replace all ":" with "/".  If MacOS, replace all "/" with
-// ":" it should go without saying that neither of these characters
-// should be used in file or directory names.  In windoze, allow the
-// second character to be a ":" for things like c:\foo\bar
-
-void
-SGPath::fix()
-{
-    for ( string::size_type i = 0; i < path.size(); ++i ) {
-#if defined( WIN32 )
-	// for windoze, don't replace the ":" for the second character
-	if ( i == 1 ) {
-	    continue;
-	}
-#endif
-	if ( path[i] == sgDirPathSepBad ) {
-	    path[i] = sgDirPathSep;
-	}
-    }
-}
-
-
 // default constructor
 SGPath::SGPath()
     : path("")
@@ -78,19 +42,6 @@ SGPath::SGPath()
 }
 
 
-// create a path based on "path"
-SGPath::SGPath( const std::string& p )
-    : path(p)
-{
-    fix();
-}
-
-
-// destructor
-SGPath::~SGPath() {
-}
-
-
 // set path
 void SGPath::set( const string& p ) {
     path = p;
@@ -98,40 +49,15 @@ void SGPath::set( const string& p ) {
 }
 
 
-// append another piece to the existing path
-void SGPath::append( const string& p ) {
-    if ( path.size() == 0 ) {
-	path = p;
-    } else {
-	if ( p[0] != sgDirPathSep ) {
-	    path += sgDirPathSep;
-	}
-	path += p;
-    }
-    fix();
-}
-
 //add a new path component to the existing path string
 void SGPath::add( const string& p ) {
-    append( sgSearchPathSep+p );
-}
-
-
-// concatenate a string to the end of the path without inserting a
-// path separator
-void SGPath::concat( const string& p ) {
-    if ( path.size() == 0 ) {
-	path = p;
-    } else {
-	path += p;
-    }
-    fix();
+    append( SGPATH_sgSearchPathSep+p );
 }
 
 
 // Get the file part of the path (everything after the last path sep)
 string SGPath::file() const {
-    int index = path.rfind(sgDirPathSep);
+    int index = path.rfind(SGPATH_sgDirPathSep);
     if (index >= 0) {
 	return path.substr(index + 1);
     } else {
@@ -140,16 +66,6 @@ string SGPath::file() const {
 }
   
 
-// get the directory part of the path.
-string SGPath::dir() const {
-    int index = path.rfind(sgDirPathSep);
-    if (index >= 0) {
-	return path.substr(0, index);
-    } else {
-	return "";
-    }
-}
-
 // get the base part of the path (everything but the extension.)
 string SGPath::base() const {
     int index = path.rfind(".");
@@ -180,91 +96,3 @@ bool SGPath::exists() const {
     fclose(fp);
     return true;
 }
-
-#if defined( _MSC_VER) || defined(__MINGW32__)
-#  define sgMkDir(d,m)       _mkdir(d)
-#else
-#  define sgMkDir(d,m)       mkdir(d,m)
-#endif
-
-
-int SGPath::create_dir( mode_t mode ) {
-    string_list dirlist = sgPathSplit(dir());
-    if ( dirlist.empty() )
-        return -1;
-    string path = dirlist[0];
-    string_list path_elements = sgPathBranchSplit(path);
-    bool absolute = !path.empty() && path[0] == sgDirPathSep;
-
-    unsigned int i = 1;
-    SGPath dir = absolute ? string( 1, sgDirPathSep ) : "";
-    dir.concat( path_elements[0] );
-#if defined( _MSC_VER) || defined(__MINGW32__)
-    if ( dir.str().find(':') != string::npos && path_elements.size() >= 2 ) {
-        dir.append( path_elements[1] );
-        i = 2;
-    }
-#endif
-    struct stat info;
-    int r;
-    for(; ( r = stat( dir.c_str(), &info ) ) == 0 && i < path_elements.size(); i++) {
-        dir.append(path_elements[i]);
-    }
-    if ( r == 0 ) {
-        return 0; // Directory already exists
-    }
-    if ( sgMkDir( dir.c_str(), mode) ) {
-        SG_LOG( SG_IO, SG_ALERT, "Error creating directory: " + dir.str() );
-        return -2;
-    }
-    for(; i < path_elements.size(); i++) {
-        dir.append(path_elements[i]);
-        if ( sgMkDir( dir.c_str(), mode) ) {
-            SG_LOG( SG_IO, SG_ALERT, "Error creating directory: " + dir.str() );
-            return -2;
-        }
-    }
-
-    return 0;
-}
-
-string_list sgPathBranchSplit( const string &dirpath ) {
-    string_list path_elements;
-    string element, path = dirpath;
-    while ( path.size() ) {
-        size_t p = path.find( sgDirPathSep );
-        if ( p != string::npos ) {
-            element = path.substr( 0, p );
-            path.erase( 0, p + 1 );
-        } else {
-            element = path;
-            path = "";
-        }
-        if ( element.size() )
-            path_elements.push_back( element );
-    }
-    return path_elements;
-}
-
-
-string_list sgPathSplit( const string &search_path ) {
-    string tmp = search_path;
-    string_list result;
-    result.clear();
-
-    bool done = false;
-
-    while ( !done ) {
-        int index = tmp.find(sgSearchPathSep);
-        if (index >= 0) {
-            result.push_back( tmp.substr(0, index) );
-            tmp = tmp.substr( index + 1 );
-        } else {
-            if ( !tmp.empty() )
-                result.push_back( tmp );
-            done = true;
-        }
-    }
-
-    return result;
-}
diff -uNrp SimGear-1.9.0.orig/simgear/misc/sg_path.hxx SimGear-1.9.0/simgear/misc/sg_path.hxx
--- SimGear-1.9.0.orig/simgear/misc/sg_path.hxx	2008-08-05 03:12:20.000000000 +0200
+++ SimGear-1.9.0/simgear/misc/sg_path.hxx	2008-11-23 23:27:54.000000000 +0100
@@ -34,6 +34,7 @@
 #include <string>
 
 #include <simgear/math/sg_types.hxx>
+#include <simgear/debug/logstream.hxx>
 
 using std::string;
 
@@ -42,6 +43,67 @@ using std::string;
 #endif
 
 /**
+ * define directory path separators
+ */
+
+static const char SGPATH_sgDirPathSep = '/';
+static const char SGPATH_sgDirPathSepBad = '\\';
+
+#if defined( WIN32 ) && !defined(__CYGWIN__)
+static const char SGPATH_sgSearchPathSep = ';';
+#else
+static const char SGPATH_sgSearchPathSep = ':';
+#endif
+
+/**
+ * Split a directory string into a list of it's parent directories.
+ */
+static inline string_list sgPathBranchSplit( const string &dirpath ) {
+    string_list path_elements;
+    string element, path = dirpath;
+    while ( path.size() ) {
+        size_t p = path.find( SGPATH_sgDirPathSep );
+        if ( p != string::npos ) {
+            element = path.substr( 0, p );
+            path.erase( 0, p + 1 );
+        } else {
+            element = path;
+            path = "";
+        }
+        if ( element.size() )
+            path_elements.push_back( element );
+    }
+    return path_elements;
+}
+
+
+/**
+ * Split a directory search path into a vector of individual paths
+ */
+static inline string_list sgPathSplit( const string &search_path ) {
+    string tmp = search_path;
+    string_list result;
+    result.clear();
+
+    bool done = false;
+
+    while ( !done ) {
+        int index = tmp.find(SGPATH_sgSearchPathSep);
+        if (index >= 0) {
+            result.push_back( tmp.substr(0, index) );
+            tmp = tmp.substr( index + 1 );
+        } else {
+            if ( !tmp.empty() )
+                result.push_back( tmp );
+            done = true;
+        }
+    }
+
+    return result;
+}
+
+
+/**
  * A class to hide path separator difference across platforms and assist
  * in managing file system path names.
  *
@@ -64,10 +126,13 @@ public:
      * Construct a path based on the starting path provided.
      * @param p initial path
      */
-    SGPath( const string& p );
+    SGPath( const string& p ) : path(p)
+    {
+        fix();
+    }
 
     /** Destructor */
-    ~SGPath();
+    ~SGPath() {}
 
     /**
      * Set path to a new value
@@ -80,7 +145,17 @@ public:
      * Append another piece to the existing path.  Inserts a path
      * separator between the existing component and the new component.
      * @param p additional path component */
-    void append( const string& p );
+    void append( const string& p ) {
+        if ( path.size() == 0 ) {
+	    path = p;
+        } else {
+	    if ( p[0] != SGPATH_sgDirPathSep ) {
+	        path += SGPATH_sgDirPathSep;
+	    }
+	    path += p;
+        }
+        fix();
+    }
 
     /**
      * Append a new piece to the existing path.  Inserts a search path
@@ -93,7 +168,14 @@ public:
      * path separator.
      * @param p additional path suffix
      */
-    void concat( const string& p );
+    void concat( const string& p ) {
+    if ( path.size() == 0 ) {
+	    path = p;
+        } else {
+	    path += p;
+        }
+        fix();
+    }
 
     /**
      * Get the file part of the path (everything after the last path sep)
@@ -105,7 +187,14 @@ public:
      * Get the directory part of the path.
      * @return directory string
      */
-    string dir() const;
+    string dir() const {
+        int index = path.rfind(SGPATH_sgDirPathSep);
+        if (index >= 0) {
+	    return path.substr(0, index);
+        } else {
+	    return "";
+        }
+    }
   
     /**
      * Get the base part of the path (everything but the extension.)
@@ -141,26 +230,77 @@ public:
      * Create the designated directory.
      * @return 0 on success, or <0 on failure.
      */
-    int create_dir(mode_t mode);
+    int create_dir(mode_t mode) {
+        string_list dirlist = sgPathSplit(dir());
+        if ( dirlist.empty() )
+            return -1;
+        string path = dirlist[0];
+        string_list path_elements = sgPathBranchSplit(path);
+        bool absolute = !path.empty() && path[0] == SGPATH_sgDirPathSep;
+
+        unsigned int i = 1;
+        SGPath dir = absolute ? string( 1, SGPATH_sgDirPathSep ) : "";
+        dir.concat( path_elements[0] );
+#if defined( _MSC_VER) || defined(__MINGW32__)
+        if ( dir.str().find(':') != string::npos && path_elements.size() >= 2 ) {
+            dir.append( path_elements[1] );
+            i = 2;
+        }
+#endif
+        struct stat info;
+        int r;
+        for(; ( r = stat( dir.c_str(), &info ) ) == 0 && i < path_elements.size(); i++) {
+            dir.append(path_elements[i]);
+        }
+        if ( r == 0 ) {
+            return 0; // Directory already exists
+        }
+#if defined( _MSC_VER) || defined(__MINGW32__)
+#  define sgMkDir(d,m)       _mkdir(d)
+#else
+#  define sgMkDir(d,m)       mkdir(d,m)
+#endif
+        if ( sgMkDir( dir.c_str(), mode) ) {
+            SG_LOG( SG_IO, SG_ALERT, "Error creating directory: " + dir.str() );
+            return -2;
+        }
+        for(; i < path_elements.size(); i++) {
+            dir.append(path_elements[i]);
+            if ( sgMkDir( dir.c_str(), mode) ) {
+                SG_LOG( SG_IO, SG_ALERT, "Error creating directory: " + dir.str() );
+                return -2;
+            }
+        }
+#undef sgMkDir
+
+        return 0;
+    }
 
 private:
 
-    void fix();
+    // If Unix, replace all ":" with "/".  If MacOS, replace all "/" with
+    // ":" it should go without saying that neither of these characters
+    // should be used in file or directory names.  In windoze, allow the
+    // second character to be a ":" for things like c:\foo\bar
+
+    void fix()
+    {
+        for ( string::size_type i = 0; i < path.size(); ++i ) {
+#if defined( WIN32 )
+	    // for windoze, don't replace the ":" for the second character
+	    if ( i == 1 ) {
+	        continue;
+	    }
+#endif
+	    if ( path[i] == SGPATH_sgDirPathSepBad ) {
+	        path[i] = SGPATH_sgDirPathSep;
+	    }
+        }
+    }
 
 };
 
 
-/**
- * Split a directory string into a list of it's parent directories.
- */
-string_list sgPathBranchSplit( const string &path );
-
-/**
- * Split a directory search path into a vector of individual paths
- */
-string_list sgPathSplit( const string &search_path );
-
-
 #endif // _SG_PATH_HXX
 
 
diff -uNrp SimGear-1.9.0.orig/simgear/props/props.cxx SimGear-1.9.0/simgear/props/props.cxx
--- SimGear-1.9.0.orig/simgear/props/props.cxx	2008-08-05 03:12:20.000000000 +0200
+++ SimGear-1.9.0/simgear/props/props.cxx	2008-11-23 23:27:54.000000000 +0100
@@ -314,60 +314,6 @@ find_node (SGPropertyNode * current,
 ////////////////////////////////////////////////////////////////////////
 
 inline bool
-SGPropertyNode::get_bool () const
-{
-  if (_tied)
-    return _value.bool_val->getValue();
-  else
-    return _local_val.bool_val;
-}
-
-inline int
-SGPropertyNode::get_int () const
-{
-  if (_tied)
-    return _value.int_val->getValue();
-  else
-    return _local_val.int_val;
-}
-
-inline long
-SGPropertyNode::get_long () const
-{
-  if (_tied)
-    return _value.long_val->getValue();
-  else
-    return _local_val.long_val;
-}
-
-inline float
-SGPropertyNode::get_float () const
-{
-  if (_tied)
-    return _value.float_val->getValue();
-  else
-    return _local_val.float_val;
-}
-
-inline double
-SGPropertyNode::get_double () const
-{
-  if (_tied)
-    return _value.double_val->getValue();
-  else
-    return _local_val.double_val;
-}
-
-inline const char *
-SGPropertyNode::get_string () const
-{
-  if (_tied)
-    return _value.string_val->getValue();
-  else
-    return _local_val.string_val;
-}
-
-inline bool
 SGPropertyNode::set_bool (bool val)
 {
   if (_tied) {
@@ -1170,40 +1116,6 @@ SGPropertyNode::getFloatValue () const
   }
 }
 
-double 
-SGPropertyNode::getDoubleValue () const
-{
-				// Shortcut for common case
-  if (_attr == (READ|WRITE) && _type == DOUBLE)
-    return get_double();
-
-  if (getAttribute(TRACE_READ))
-    trace_read();
-  if (!getAttribute(READ))
-    return SGRawValue<double>::DefaultValue;
-
-  switch (_type) {
-  case ALIAS:
-    return _value.alias->getDoubleValue();
-  case BOOL:
-    return double(get_bool());
-  case INT:
-    return double(get_int());
-  case LONG:
-    return double(get_long());
-  case FLOAT:
-    return double(get_float());
-  case DOUBLE:
-    return get_double();
-  case STRING:
-  case UNSPECIFIED:
-    return strtod(get_string(), 0);
-  case NONE:
-  default:
-    return SGRawValue<double>::DefaultValue;
-  }
-}
-
 const char *
 SGPropertyNode::getStringValue () const
 {
diff -uNrp SimGear-1.9.0.orig/simgear/props/props.hxx SimGear-1.9.0/simgear/props/props.hxx
--- SimGear-1.9.0.orig/simgear/props/props.hxx	2008-06-03 02:21:38.000000000 +0200
+++ SimGear-1.9.0/simgear/props/props.hxx	2008-11-23 23:27:54.000000000 +0100
@@ -18,6 +18,7 @@
 
 #include <vector>
 #include <string>
+#include <cstdlib>
 
 #if PROPS_STANDALONE
 #else
@@ -900,7 +901,38 @@ public:
   /**
    * Get a double value for this node.
    */
-  double getDoubleValue () const;
+  double getDoubleValue () const
+  {
+				// Shortcut for common case
+    if (_attr == (READ|WRITE) && _type == DOUBLE)
+      return get_double();
+
+    if (getAttribute(TRACE_READ))
+      trace_read();
+    if (!getAttribute(READ))
+      return SGRawValue<double>::DefaultValue;
+
+    switch (_type) {
+    case ALIAS:
+      return _value.alias->getDoubleValue();
+    case BOOL:
+      return double(get_bool());
+    case INT:
+      return double(get_int());
+    case LONG:
+      return double(get_long());
+    case FLOAT:
+      return double(get_float());
+    case DOUBLE:
+      return get_double();
+    case STRING:
+    case UNSPECIFIED:
+      return strtod(get_string(), 0);
+    case NONE:
+    default:
+      return SGRawValue<double>::DefaultValue;
+    }
+  }
 
 
   /**
@@ -1365,12 +1397,54 @@ protected:
 private:
 
 				// Get the raw value
-  bool get_bool () const;
-  int get_int () const;
-  long get_long () const;
-  float get_float () const;
-  double get_double () const;
-  const char * get_string () const;
+  inline bool get_bool () const
+  {
+    if (_tied)
+      return _value.bool_val->getValue();
+    else
+      return _local_val.bool_val;
+  }
+
+  inline int get_int () const
+  {
+    if (_tied)
+      return _value.int_val->getValue();
+    else
+      return _local_val.int_val;
+  }
+
+  inline long get_long () const
+  {
+    if (_tied)
+      return _value.long_val->getValue();
+    else
+      return _local_val.long_val;
+  }
+
+  inline float get_float () const
+  {
+    if (_tied)
+      return _value.float_val->getValue();
+    else
+      return _local_val.float_val;
+  }
+
+  inline double get_double () const
+  {
+    if (_tied)
+      return _value.double_val->getValue();
+    else
+      return _local_val.double_val;
+  }
+
+  inline const char * get_string () const
+  {
+    if (_tied)
+      return _value.string_val->getValue();
+    else
+      return _local_val.string_val;
+  }
+
 
 				// Set the raw value
   bool set_bool (bool value);
diff -uNrp SimGear-1.9.0.orig/simgear/scene/model/model.cxx SimGear-1.9.0/simgear/scene/model/model.cxx
--- SimGear-1.9.0.orig/simgear/scene/model/model.cxx	2008-08-29 23:16:43.000000000 +0200
+++ SimGear-1.9.0/simgear/scene/model/model.cxx	2008-11-23 23:19:45.000000000 +0100
@@ -20,43 +20,6 @@
 
 #include "model.hxx"
 
-using std::vector;
-
-osg::Texture2D*
-SGLoadTexture2D(bool staticTexture, const std::string& path,
-                const osgDB::ReaderWriter::Options* options,
-                bool wrapu, bool wrapv, int)
-{
-  osg::Image* image;
-  if (options)
-    image = osgDB::readImageFile(path, options);
-  else
-    image = osgDB::readImageFile(path);
-  osg::ref_ptr<osg::Texture2D> texture = new osg::Texture2D;
-  texture->setImage(image);
-  if (staticTexture)
-    texture->setDataVariance(osg::Object::STATIC);
-  if (wrapu)
-    texture->setWrap(osg::Texture::WRAP_S, osg::Texture::REPEAT);
-  else
-    texture->setWrap(osg::Texture::WRAP_S, osg::Texture::CLAMP);
-  if (wrapv)
-    texture->setWrap(osg::Texture::WRAP_T, osg::Texture::REPEAT);
-  else
-    texture->setWrap(osg::Texture::WRAP_T, osg::Texture::CLAMP);
-
-  if (image) {
-    int s = image->s();
-    int t = image->t();
-
-    if (s <= t && 32 <= s) {
-      SGSceneFeatures::instance()->setTextureCompression(texture.get());
-    } else if (t < s && 32 <= t) {
-      SGSceneFeatures::instance()->setTextureCompression(texture.get());
-    }
-  }
-
-  return texture.release();
-}
+// empty, all inline class now.
 
 // end of model.cxx
diff -uNrp SimGear-1.9.0.orig/simgear/scene/model/model.hxx SimGear-1.9.0/simgear/scene/model/model.hxx
--- SimGear-1.9.0.orig/simgear/scene/model/model.hxx	2008-08-05 03:12:21.000000000 +0200
+++ SimGear-1.9.0/simgear/scene/model/model.hxx	2008-11-23 23:23:19.000000000 +0100
@@ -24,10 +24,53 @@ using std::set;
 
 #include <simgear/misc/sg_path.hxx>
 
-osg::Texture2D*
+#include <osg/ref_ptr>
+#include <osgDB/ReadFile>
+#include <osgDB/SharedStateManager>
+
+#include <simgear/scene/util/SGSceneFeatures.hxx>
+
+#include <simgear/structure/exception.hxx>
+#include <simgear/props/props.hxx>
+#include <simgear/props/props_io.hxx>
+#include <simgear/props/condition.hxx>
+
+inline osg::Texture2D*
 SGLoadTexture2D(bool staticTexture, const std::string& path,
                 const osgDB::ReaderWriter::Options* options = 0,
-                bool wrapu = true, bool wrapv = true, int mipmaplevels = -1);
+                bool wrapu = true, bool wrapv = true, int mipmaplevels = -1)
+{
+  osg::Image* image;
+  if (options)
+    image = osgDB::readImageFile(path, options);
+  else
+    image = osgDB::readImageFile(path);
+  osg::ref_ptr<osg::Texture2D> texture = new osg::Texture2D;
+  texture->setImage(image);
+  if (staticTexture)
+    texture->setDataVariance(osg::Object::STATIC);
+  if (wrapu)
+    texture->setWrap(osg::Texture::WRAP_S, osg::Texture::REPEAT);
+  else
+    texture->setWrap(osg::Texture::WRAP_S, osg::Texture::CLAMP);
+  if (wrapv)
+    texture->setWrap(osg::Texture::WRAP_T, osg::Texture::REPEAT);
+  else
+    texture->setWrap(osg::Texture::WRAP_T, osg::Texture::CLAMP);
+
+  if (image) {
+    int s = image->s();
+    int t = image->t();
+
+    if (s <= t && 32 <= s) {
+      SGSceneFeatures::instance()->setTextureCompression(texture.get());
+    } else if (t < s && 32 <= t) {
+      SGSceneFeatures::instance()->setTextureCompression(texture.get());
+    }
+  }
+
+  return texture.release();
+}
 
 inline osg::Texture2D*
 SGLoadTexture2D(const std::string& path,
diff -uNrp SimGear-1.9.0.orig/simgear/timing/timestamp.cxx SimGear-1.9.0/simgear/timing/timestamp.cxx
--- SimGear-1.9.0.orig/simgear/timing/timestamp.cxx	2008-08-05 03:12:21.000000000 +0200
+++ SimGear-1.9.0/simgear/timing/timestamp.cxx	2008-11-23 23:27:54.000000000 +0100
@@ -24,72 +24,8 @@
 // $Id: timestamp.cxx,v 1.9 2008/07/27 15:15:34 fredb Exp $
 
 
-#ifdef HAVE_CONFIG_H
-#  include <simgear_config.h>
-#endif
-
-#include <simgear/compiler.h>
-
-#include <ctime>
-
-#ifdef HAVE_SYS_TIMEB_H
-#  include <sys/timeb.h> // for ftime() and struct timeb
-#endif
-#ifdef HAVE_UNISTD_H
-#  include <unistd.h>    // for gettimeofday()
-#endif
-#ifdef HAVE_SYS_TIME_H
-#  include <sys/time.h>  // for get/setitimer, gettimeofday, struct timeval
-#endif
-
-#ifdef WIN32
-#  include <windows.h>
-#  if defined( __CYGWIN__ ) || defined( __CYGWIN32__ )
-#    define NEAR /* */
-#    define FAR  /* */
-#  endif
-#  include <mmsystem.h>
-#endif
+// empty, all inline class now.
 
 #include "timestamp.hxx"
 
 
-void SGTimeStamp::stamp() {
-#if defined( WIN32 ) && !defined(__CYGWIN__)
-    unsigned int t;
-    t = timeGetTime();
-    seconds = t / 1000;
-    usec = ( t - ( seconds * 1000 ) ) * 1000;
-#elif defined( HAVE_GETTIMEOFDAY )
-    struct timeval current;
-    struct timezone tz;
-    // sg_timestamp currtime;
-    gettimeofday(&current, &tz);
-    seconds = current.tv_sec;
-    usec = current.tv_usec;
-#elif defined( HAVE_GETLOCALTIME )
-    SYSTEMTIME current;
-    GetLocalTime(&current);
-    seconds = current.wSecond;
-    usec = current.wMilliseconds * 1000;
-#elif defined( HAVE_FTIME )
-    struct timeb current;
-    ftime(&current);
-    seconds = current.time;
-    usec = current.millitm * 1000;
-#else
-# error Port me
-#endif
-}
-
-// increment the time stamp by the number of microseconds (usec)
-SGTimeStamp operator + (const SGTimeStamp& t, const long& m) {
-    return SGTimeStamp( t.seconds + ( t.usec + m ) / 1000000,
-			( t.usec + m ) % 1000000 );
-}
-
-// difference between time stamps in microseconds (usec)
-long operator - (const SGTimeStamp& a, const SGTimeStamp& b)
-{
-    return 1000000 * (a.seconds - b.seconds) + (a.usec - b.usec);
-}
diff -uNrp SimGear-1.9.0.orig/simgear/timing/timestamp.hxx SimGear-1.9.0/simgear/timing/timestamp.hxx
--- SimGear-1.9.0.orig/simgear/timing/timestamp.hxx	2006-10-31 06:41:32.000000000 +0100
+++ SimGear-1.9.0/simgear/timing/timestamp.hxx	2008-11-23 23:27:54.000000000 +0100
@@ -32,9 +32,33 @@
 # error This library requires C++
 #endif
 
+#ifdef HAVE_CONFIG_H
+#  include <simgear_config.h>
+#endif
 
 #include <simgear/compiler.h>
 
+#include <ctime>
+
+#ifdef HAVE_SYS_TIMEB_H
+#  include <sys/timeb.h> // for ftime() and struct timeb
+#endif
+#ifdef HAVE_UNISTD_H
+#  include <unistd.h>    // for gettimeofday()
+#endif
+#ifdef HAVE_SYS_TIME_H
+#  include <sys/time.h>  // for get/setitimer, gettimeofday, struct timeval
+#endif
+
+#ifdef WIN32
+#  include <windows.h>
+#  if defined( __CYGWIN__ ) || defined( __CYGWIN32__ )
+#    define NEAR /* */
+#    define FAR  /* */
+#  endif
+#  include <mmsystem.h>
+#endif
+
 
 // MSVC++ 6.0 kuldge - Need forward declaration of friends.
 class SGTimeStamp;
@@ -73,7 +97,33 @@ public:
     SGTimeStamp( const long s, const long m );
 
     /** Update stored time to current time (seconds and microseconds) */
-    void stamp();
+    inline void stamp() {
+#if defined( WIN32 ) && !defined(__CYGWIN__)
+        unsigned int t;
+        t = timeGetTime();
+        seconds = t / 1000;
+        usec = ( t - ( seconds * 1000 ) ) * 1000;
+#elif defined( HAVE_GETTIMEOFDAY )
+        struct timeval current;
+        struct timezone tz;
+        // sg_timestamp currtime;
+        gettimeofday(&current, &tz);
+        seconds = current.tv_sec;
+        usec = current.tv_usec;
+#elif defined( HAVE_GETLOCALTIME )
+        SYSTEMTIME current;
+        GetLocalTime(&current);
+        seconds = current.wSecond;
+        usec = current.wMilliseconds * 1000;
+#elif defined( HAVE_FTIME )
+        struct timeb current;
+        ftime(&current);
+        seconds = current.time;
+        usec = current.millitm * 1000;
+#else
+# error Port me
+#endif
+    }
 
     /**
      * Increment the saved time by the specified number of microseconds
@@ -81,7 +131,10 @@ public:
      * @param m microseconds increment
      * @return new time stamp
      */
-    friend SGTimeStamp operator + (const SGTimeStamp& t, const long& m);
+    friend SGTimeStamp operator + (const SGTimeStamp& t, const long& m) {
+        return SGTimeStamp( t.seconds + ( t.usec + m ) / 1000000,
+			    ( t.usec + m ) % 1000000 );
+    }
 
     /**
      * Subtract two time stamps returning the difference in microseconds.
@@ -89,7 +142,9 @@ public:
      * @param b timestame 2
      * @return difference in microseconds
      */
-    friend long operator - (const SGTimeStamp& a, const SGTimeStamp& b);
+    friend long operator - (const SGTimeStamp& a, const SGTimeStamp& b) {
+        return 1000000 * (a.seconds - b.seconds) + (a.usec - b.usec);
+    }
 
     /** @return the saved seconds of this time stamp */
     inline long get_seconds() const { return seconds; }


Index: .cvsignore
===================================================================
RCS file: /cvs/extras/rpms/SimGear/devel/.cvsignore,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- .cvsignore	6 Jan 2008 18:08:02 -0000	1.4
+++ .cvsignore	7 Jan 2009 16:32:09 -0000	1.5
@@ -1 +1 @@
-SimGear-1.0.0.tar.gz
+SimGear-1.9.0.tar.gz


Index: SimGear.spec
===================================================================
RCS file: /cvs/extras/rpms/SimGear/devel/SimGear.spec,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -r1.12 -r1.13
--- SimGear.spec	24 Sep 2008 20:24:40 -0000	1.12
+++ SimGear.spec	7 Jan 2009 16:32:10 -0000	1.13
@@ -1,22 +1,24 @@
 Name:		SimGear
-Version:	1.0.0
-Release:	5%{?dist}
+Version:	1.9.0
+Release:	1%{?dist}
 License:	GPLv2+
 Group:		System Environment/Libraries
 Summary:	Simulation library components
 URL:		http://www.simgear.org
 Source0:	ftp://ftp.simgear.org/pub/simgear/Source/SimGear-%{version}.tar.gz
 BuildRoot:	%{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
-Patch0:		SimGear-1.0.0-shared.patch
-Patch1:		SimGear-0.3.10-notabbed_value_test.patch
-Patch2:		SimGear-1.0.0-headers.patch
-Patch3:		SimGear-1.0.0-shared-auto.patch
-Patch4:		SimGear-0.3.10-thesky.patch
-Patch5:		SimGear-1.0.0-untangle.patch
-Patch7:		SimGear-1.0.0-more-archs.patch
-BuildRequires:	openal-devel, plib-devel, libXt-devel, libXext-devel
+Patch0:		SimGear-1.9.0-shared.patch
+Patch1:		SimGear-1.9.0-notabbed_value_test.patch
+Patch2:		SimGear-1.9.0-headers.patch
+Patch5:		SimGear-1.9.0-untangle.patch
+Patch7:		SimGear-1.9.0-more-archs.patch
+BuildRequires:	openal-devel, plib-devel >= 1.8.5
+BuildRequires:	OpenSceneGraph-devel >= 2.6.0
+BuildRequires:	boost-devel >= 1.34.0
+BuildRequires:	libXt-devel, libXext-devel
 BuildRequires:	libXi-devel, libXmu-devel, freeglut-devel, freealut-devel
 BuildRequires:	zlib-devel, libjpeg-devel
+BuildRequires:	automake autoconf intltool libtool
 
 %description
 SimGear is a set of open-source libraries designed to be used as building
@@ -38,20 +40,19 @@
 %setup -q
 # automake / autoconf input file changes
 %patch0 -p1
-# automake / autoconf auto generated changes
-%patch3 -p1
 # Have to disable the tabbed_value_test, because otherwise
 # we get caught in a loop between libsgprops and libsgmisc.
 %patch1 -p1
-# The Sky issue, see bz 208678
-%patch4 -p1
 # Some circular dependcy fixing, see bz 208678
 %patch5 -p1
 # Fix compiling on pcc and alpha
 %patch7 -p1
-chmod -x simgear/screen/GLBitmaps.cxx simgear/scene/model/*.?xx
+chmod -x simgear/screen/GLBitmaps.cxx \
+	simgear/scene/model/persparam.?xx \
+	simgear/scene/sky/CloudShaderGeometry.?xx
 
 %build
+autoreconf -i
 %configure --with-jpeg-factory --disable-static
 # We do not want -lm by default!
 sed -i 's/ -lm / /g' libtool
@@ -107,9 +108,13 @@
 %{_libdir}/libsgtgdb.so
 %{_libdir}/libsgthreads.so
 %{_libdir}/libsgtiming.so
+%{_libdir}/libsgutil.so
 %{_libdir}/libsgxml.so
 
 %changelog
+* Tue Jan 06 2009 Fabrice Bellet <fabrice at bellet.info> 1.9.0-1
+- New upstream release
+
 * Wed Sep 24 2008 Tom "spot" Callaway <tcallawa at redhat.com> 1.0.0-5
 - fix SimGear-0.3.10-notabbed_value_test.patch to apply without fuzz
 


Index: sources
===================================================================
RCS file: /cvs/extras/rpms/SimGear/devel/sources,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- sources	6 Jan 2008 18:08:02 -0000	1.4
+++ sources	7 Jan 2009 16:32:10 -0000	1.5
@@ -1 +1 @@
-6d90c1b9e6fdd3d7a4a39bef027bfd10  SimGear-1.0.0.tar.gz
+c9e532dc8e80025bbd90c6be4a72aad1  SimGear-1.9.0.tar.gz


--- SimGear-0.3.10-notabbed_value_test.patch DELETED ---


--- SimGear-0.3.10-thesky.patch DELETED ---


--- SimGear-1.0.0-headers.patch DELETED ---


--- SimGear-1.0.0-more-archs.patch DELETED ---


--- SimGear-1.0.0-shared-auto.patch DELETED ---


--- SimGear-1.0.0-shared.patch DELETED ---


--- SimGear-1.0.0-untangle.patch DELETED ---




More information about the fedora-extras-commits mailing list