Hi,

we would to use gnash in Sugar activities and need to give a way for
swf movies to integrate with the rest of the platform.

The patch attached installs needed headers in $prefix/include/gnash
and enables unconditionally extension support.

Would like someone with more knowledge than me gave it a look and
commented at the approach followed.

Thanks,

Tomeu
=== modified file 'Makefile.am'
--- Makefile.am	2009-04-21 21:29:12 +0000
+++ Makefile.am	2009-04-27 15:57:31 +0000
@@ -471,3 +471,8 @@
 apidoc:
 	$(MAKE) -C doc $@
 
+pkgconfigdir = $(libdir)/pkgconfig
+pkgconfig_DATA = \
+	gnash.pc \
+	$(NULL)
+

=== modified file 'configure.ac'
--- configure.ac	2009-04-26 18:19:07 +0000
+++ configure.ac	2009-04-27 18:09:16 +0000
@@ -824,9 +824,6 @@
       break;
     fi
   done
-  if test "${nextensions}" -gt 0; then
-        AC_DEFINE(USE_EXTENSIONS, [1], [Use extensions])
-  fi
   EXTENSIONS_LIST="$extensions_list"
   AC_SUBST(EXTENSIONS_LIST)
 )
@@ -2210,6 +2207,8 @@
 AC_CONFIG_LINKS(testsuite/libbase/gnashrc:testsuite/libbase/gnashrc.in)
 AC_CONFIG_LINKS(testsuite/libbase/gnashrc-local:testsuite/libbase/gnashrc-local.in)
 
+AC_CONFIG_FILES(gnash.pc:gnash.pc.in)
+
 AC_OUTPUT(Makefile
 po/Makefile
 libmedia/Makefile

=== added file 'gnash.pc.in'
--- gnash.pc.in	1970-01-01 00:00:00 +0000
+++ gnash.pc.in	2009-04-27 17:49:38 +0000
@@ -0,0 +1,11 @@
+pref...@prefix@
+exec_pref...@exec_prefix@
+libd...@libdir@/gnash
+included...@includedir@/gnash/
+
+Name: Gnash
+Description: Flash (shockwave) player
+Version: @VERSION@
+Libs: -L${libdir} -lgnashcore
+Cflags: -I${includedir}
+

=== modified file 'libbase/Makefile.am'
--- libbase/Makefile.am	2009-04-23 14:49:53 +0000
+++ libbase/Makefile.am	2009-04-27 17:18:24 +0000
@@ -137,23 +137,15 @@
 	SimpleBuffer.h \
 	extension.h \
 	GnashNumeric.h \
-	GnashException.h \
-	gettext.h \
 	jemtree.h \
 	GnashImage.h \
 	GnashImageJpeg.h \
 	GnashSleep.h \
 	gmemory.h \
-	log.h \
 	ogl.h \
-	rc.h \
-	ref_counted.h \
 	shm.h \
-	smart_ptr.h \
 	sharedlib.h \
-	string_table.h \
 	tree.hh \
-	dsodefs.h \
 	tu_file.h \
 	IOChannel.h \
 	tu_opengl_includes.h \
@@ -165,13 +157,11 @@
 	ClockTime.h \
 	WallClockTimer.h \
 	utf8.h \
-	utility.h \
 	NetworkAdapter.h \
 	noseek_fd_adapter.h \
 	zlib_adapter.h \
 	URL.h \
 	LoadThread.h \
-	GC.h \
 	BitsReader.h \
 	arg_parser.h \
 	getclocktime.hpp \
@@ -188,6 +178,25 @@
 noinst_HEADERS += GnashImageGif.h
 endif
 
+EXTENSIONS_API = \
+	smart_ptr.h \
+	string_table.h \
+	ref_counted.h \
+	GC.h \
+	GnashException.h \
+	dsodefs.h \
+	utility.h \
+	log.h \
+	rc.h \
+	gettext.h \
+	$(NULL)
+
+if SDKINSTALL
+noinst_HEADERS += $(EXTENSIONS_API)
+else
+instdir = $(includedir)/gnash
+inst_HEADERS = $(EXTENSIONS_API)
+endif
 
 libgnashbase_la_LDFLAGS = -release $(VERSION)
 

=== modified file 'libcore/Makefile.am'
--- libcore/Makefile.am	2009-04-16 08:42:14 +0000
+++ libcore/Makefile.am	2009-04-27 17:36:38 +0000
@@ -125,28 +125,18 @@
 	$(NULL)
 
 noinst_HEADERS = \
-	Property.h \
-	PropertyList.h \
 	StreamProvider.h \
-	StringPredicates.h \
 	URLAccessManager.h \
 	VirtualClock.h \
 	SystemClock.h \
 	ManualClock.h \
 	RunInfo.h \
-	as_environment.h \
-	as_function.h \
-	as_object.h \
-	as_prop_flags.h	\
-	as_value.h \
 	asClass.h \
 	Bitmap.h \
 	BitmapInfo.h \
 	BitmapMovie.h \
-	builtin_function.h \
 	Button.h \
 	DisplayObject.h \
-	CharacterProxy.h \
 	cxform.h \
 	debugger.h \
 	DynamicShape.h	\
@@ -180,7 +170,6 @@
 	SWFMovie.h \
 	Movie.h \
 	movie_root.h \
-	namedStrings.h \
 	rect.h \
 	render.h \
 	ExportableResource.h \
@@ -225,6 +214,27 @@
 	Video.h \
 	$(NULL)
 
+EXTENSIONS_API = \
+	as_object.h \
+	Property.h \
+	PropertyList.h \
+	as_value.h \
+	as_prop_flags.h	\
+	CharacterProxy.h \
+	StringPredicates.h \
+	builtin_function.h \
+	as_function.h \
+	namedStrings.h \
+	as_environment.h \
+	$(NULL)
+
+if SDKINSTALL
+noinst_HEADERS += $(EXTENSIONS_API)
+else
+instdir = $(includedir)/gnash
+inst_HEADERS = $(EXTENSIONS_API)
+endif
+
 libgnashcore_la_LIBADD = \
 	$(top_builddir)/libbase/libgnashbase.la \
 	$(top_builddir)/libamf/libgnashamf.la \

=== modified file 'libcore/asobj/Global.cpp'
--- libcore/asobj/Global.cpp	2009-04-03 09:18:40 +0000
+++ libcore/asobj/Global.cpp	2009-04-27 18:08:42 +0000
@@ -148,12 +148,7 @@
     init_member("clearTimeout", new builtin_function(global_clearInterval));
 
     ch->setGlobal(this);
-
-// If extensions aren't used, then no extensions will be loaded.
-#ifdef USE_EXTENSIONS
     ch->setExtension(&_et);
-#endif
-
     ch->massDeclare();
 
     object_class_init(*this); 
@@ -209,14 +204,9 @@
             break;
     }
 
-#ifdef USE_EXTENSIONS
     loadExtensions();
-#endif
-
 }
 
-#ifdef USE_EXTENSIONS
-
 //-----------------------
 // Extensions
 //-----------------------
@@ -240,8 +230,6 @@
 
 }
 
-#endif
-
 
 namespace {
 

=== modified file 'libcore/asobj/Global.h'
--- libcore/asobj/Global.h	2009-02-25 22:33:03 +0000
+++ libcore/asobj/Global.h	2009-04-27 18:07:45 +0000
@@ -22,10 +22,7 @@
 #define GNASH_GLOBAL_H
 
 #include "as_object.h" // for inheritance
-
-#ifdef USE_EXTENSIONS
-# include "extension.h" // for composition
-#endif
+#include "extension.h" // for composition
 
 // Forward declarations
 namespace gnash {
@@ -45,10 +42,8 @@
 
 private:
 
-#ifdef USE_EXTENSIONS
     void loadExtensions();
 	Extension _et;
-#endif
 
 };
 

=== modified file 'libcore/vm/Makefile.am'
--- libcore/vm/Makefile.am	2009-02-27 06:46:40 +0000
+++ libcore/vm/Makefile.am	2009-04-27 17:39:44 +0000
@@ -50,18 +50,28 @@
 noinst_HEADERS =		\
 	ASHandlers.h		\
 	CodeStream.h		\
-	SafeStack.h			\
 	Machine.h			\
 	asName.h			\
 	ActionExec.h		\
 	ExecutableCode.h	\
 	VM.h			\
 	action.h		\
+	with_stack_entry.h 	\
+	$(NULL)
+
+EXTENSIONS_API = \
 	fn_call.h		\
 	CallStack.h \
-	with_stack_entry.h 	\
+	SafeStack.h			\
 	$(NULL)
 
+if SDKINSTALL
+noinst_HEADERS += $(EXTENSIONS_API)
+else
+instdir = $(includedir)/gnash
+inst_HEADERS = $(EXTENSIONS_API)
+endif
+
 libgnashvm_la_LIBADD = \
 	$(top_builddir)/libbase/libgnashbase.la 
 

_______________________________________________
Gnash-dev mailing list
Gnash-dev@gnu.org
http://lists.gnu.org/mailman/listinfo/gnash-dev

Reply via email to