gedit 3.4.2, fix builtin resources
authorYaakov Selkowitz <yselkowitz@users.sourceforge.net>
Thu, 28 Jun 2012 21:00:15 +0000 (16:00 -0500)
committerYaakov Selkowitz <yselkowitz@users.sourceforge.net>
Thu, 28 Jun 2012 21:00:15 +0000 (16:00 -0500)
This solves the problem with the missing interface in 3.4.[01].  The
problem was that the static GResources, which were to be initialized
via __attribute__((constructor)), are in libgedit-private.  The latter
didn't have -no-undefined, so ended up static, so when it was linked into
gedit.exe, the ctor/dtor symbols were dropped (similar to Vinagre 3.2 in
BGO#653558). If libgedit-private is shared, the ctor/dtor are exported.

So instead of exporting everything from gedit.exe, we can link against
a shared libgedit-private, allowing us to drop most of the implib hackery
previously required.

3.0.0-cygwin.patch [deleted file]
3.4.2-cygwin.patch [new file with mode: 0644]
gedit-3.4.2-1.cygport [moved from gedit-3.4.1-1.cygport with 60% similarity]

diff --git a/3.0.0-cygwin.patch b/3.0.0-cygwin.patch
deleted file mode 100644 (file)
index f3e0fe0..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
---- origsrc/gedit-3.0.0/configure.ac   2011-04-04 11:12:51.000000000 -0500
-+++ src/gedit-3.0.0/configure.ac       2011-04-11 11:59:47.097507000 -0500
-@@ -412,8 +412,8 @@ fi
- # on win32 plugins must be able to resolve all symbols at link time
- # so we create a lib
- if test "$platform_win32" = yes; then
--      GEDIT_IMPLIB="-lgedit-$GEDIT_API_VERSION"
--      PLUGIN_LIBTOOL_FLAGS="-module -avoid-version -no-undefined -Wl,\$(top_builddir)/gedit/libgedit.a"
-+      GEDIT_IMPLIB="-lgedit"
-+      PLUGIN_LIBTOOL_FLAGS="-module -avoid-version -no-undefined -Wl,\$(top_builddir)/gedit/libgedit.a"
-       if test "$os_win32" = yes; then
-               PLUGIN_LIBTOOL_FLAGS="${PLUGIN_LIBTOOL_FLAGS} -mwindows"
-       fi
---- origsrc/gedit-3.0.0/gedit/Makefile.am      2011-03-27 08:14:54.000000000 -0500
-+++ src/gedit-3.0.0/gedit/Makefile.am  2011-04-11 12:02:29.353389900 -0500
-@@ -235,7 +235,7 @@ if !ENABLE_GVFS_METADATA
- libgedit_la_SOURCES += gedit-metadata-manager.c
- endif
--if !PLATFORM_WIN32
-+if !OS_WIN32
- libgedit_la_SOURCES += gedit-fifo.c
- NOINST_H_FILES += gedit-fifo.h
- endif
-@@ -281,11 +281,11 @@ if HAVE_INTROSPECTION
- -include $(INTROSPECTION_MAKEFILE)
- INTROSPECTION_GIRS = Gedit-3.0.gir
--Gedit-3.0.gir: gedit
-+Gedit-3.0.gir: gedit$(EXEEXT)
- INTROSPECTION_SCANNER_ARGS = -I$(top_srcdir) --warn-all
- Gedit_3_0_gir_NAMESPACE = Gedit
- Gedit_3_0_gir_VERSION = 3.0
--Gedit_3_0_gir_PROGRAM = $(builddir)/gedit
-+Gedit_3_0_gir_PROGRAM = $(builddir)/gedit$(EXEEXT)
- Gedit_3_0_gir_FILES = $(INST_H_FILES) $(libgedit_c_files) $(BUILT_SOURCES)
- Gedit_3_0_gir_INCLUDES = Gtk-3.0 GtkSource-3.0
-@@ -307,9 +307,10 @@ install-exec-hook:
- if PLATFORM_WIN32
-       $(mkinstalldirs) "$(DESTDIR)$(libdir)"
-       $(INSTALL_DATA) libgedit.a "$(DESTDIR)$(libdir)"
--else
-+endif
-+if !OS_WIN32
-       rm -f $(DESTDIR)$(bindir)/gnome-text-editor
--      ln -s gedit $(DESTDIR)$(bindir)/gnome-text-editor
-+      ln -s gedit$(EXEEXT) $(DESTDIR)$(bindir)/gnome-text-editor
- endif
- -include $(top_srcdir)/git.mk
diff --git a/3.4.2-cygwin.patch b/3.4.2-cygwin.patch
new file mode 100644 (file)
index 0000000..5119b32
--- /dev/null
@@ -0,0 +1,78 @@
+--- origsrc/gedit-3.4.2/configure.ac   2012-05-24 07:46:18.000000000 -0500
++++ src/gedit-3.4.2/configure.ac       2012-06-28 15:12:45.109089600 -0500
+@@ -411,8 +411,8 @@ fi
+ # on win32 plugins must be able to resolve all symbols at link time
+ # so we create a lib
+ if test "$platform_win32" = yes; then
+-      GEDIT_IMPLIB="-lgedit-$GEDIT_API_VERSION"
+-      PLUGIN_LIBTOOL_FLAGS="-module -avoid-version -no-undefined -Wl,\$(top_builddir)/gedit/libgedit.a"
++      GEDIT_IMPLIB="-lgedit-private"
++      PLUGIN_LIBTOOL_FLAGS="-module -avoid-version -no-undefined \$(top_builddir)/gedit/libgedit-private.la"
+       if test "$os_win32" = yes; then
+               PLUGIN_LIBTOOL_FLAGS="${PLUGIN_LIBTOOL_FLAGS} -mwindows"
+       fi
+--- origsrc/gedit-3.4.2/data/gedit.pc.in       2011-07-04 06:12:41.000000000 -0500
++++ src/gedit-3.4.2/data/gedit.pc.in   2012-06-28 15:13:40.139165500 -0500
+@@ -8,4 +8,4 @@ Description: gedit
+ Requires: gtksourceview-3.0 libpeas-1.0 libpeas-gtk-1.0
+ Version: @VERSION@
+ Cflags: -I${includedir}/gedit-@GEDIT_API_VERSION@
+-Libs: -L${libdir} @GEDIT_IMPLIB@
++Libs: -L${libdir}/gedit @GEDIT_IMPLIB@
+--- origsrc/gedit-3.4.2/gedit/Makefile.am      2012-05-11 06:34:49.000000000 -0500
++++ src/gedit-3.4.2/gedit/Makefile.am  2012-06-28 15:41:39.228380000 -0500
+@@ -23,7 +23,6 @@ gedit_SOURCES = \
+       gedit.c
+ gedit_LDADD =                 \
+-      libgedit.la             \
+       libgedit-private.la     \
+       $(GEDIT_LIBS)           \
+       $(GTK_MAC_LIBS)         \
+@@ -47,7 +46,7 @@ libgedit_la_LIBADD += $(GEDIT_LIBS) $(GT
+ libgedit_private_la_LIBADD = libgedit.la $(GEDIT_LIBS)
+-libgedit_private_la_LDFLAGS = -avoid-version
++libgedit_private_la_LDFLAGS = -avoid-version -export-dynamic -no-undefined -export-symbols-regex "^[[^_]].*"
+ # Mac OSX convenience library and ldflags
+ if OS_OSX
+@@ -240,7 +239,7 @@ if !ENABLE_GVFS_METADATA
+ libgedit_la_SOURCES += gedit-metadata-manager.c
+ endif
+-if !PLATFORM_WIN32
++if !OS_WIN32
+ libgedit_la_SOURCES += gedit-fifo.c
+ NOINST_H_FILES += gedit-fifo.h
+ endif
+@@ -289,11 +288,11 @@ if HAVE_INTROSPECTION
+ -include $(INTROSPECTION_MAKEFILE)
+ INTROSPECTION_GIRS = Gedit-3.0.gir
+-Gedit-3.0.gir: gedit
++Gedit-3.0.gir: gedit$(EXEEXT)
+ INTROSPECTION_SCANNER_ARGS = -I$(top_srcdir) --warn-all
+ Gedit_3_0_gir_NAMESPACE = Gedit
+ Gedit_3_0_gir_VERSION = 3.0
+-Gedit_3_0_gir_PROGRAM = $(builddir)/gedit
++Gedit_3_0_gir_PROGRAM = $(builddir)/gedit$(EXEEXT)
+ Gedit_3_0_gir_FILES = $(INST_H_FILES) $(libgedit_c_files) $(BUILT_SOURCES)
+ Gedit_3_0_gir_INCLUDES = Gtk-3.0 GtkSource-3.0
+@@ -312,12 +311,9 @@ dist-hook:
+       cd $(distdir); rm -f $(BUILT_SOURCES) $(BUILT_SOURCES_PRIVATE)
+ install-exec-hook:
+-if PLATFORM_WIN32
+-      $(mkinstalldirs) "$(DESTDIR)$(libdir)"
+-      $(INSTALL_DATA) libgedit.a "$(DESTDIR)$(libdir)"
+-else
++if !OS_WIN32
+       rm -f $(DESTDIR)$(bindir)/gnome-text-editor
+-      ln -s gedit $(DESTDIR)$(bindir)/gnome-text-editor
++      ln -s gedit$(EXEEXT) $(DESTDIR)$(bindir)/gnome-text-editor
+ endif
+ -include $(top_srcdir)/git.mk
similarity index 60%
rename from gedit-3.4.1-1.cygport
rename to gedit-3.4.2-1.cygport
index 8f47509d6eda2492705ab83b1680dae6fcb2638a..3d13e4ec5d35c52e86552346833ed36dc3dea19b 100644 (file)
@@ -2,7 +2,7 @@ inherit python gnome2
 
 DESCRIPTION="GNOME text editor"
 
-PATCH_URI="3.0.0-cygwin.patch"
+PATCH_URI="3.4.2-cygwin.patch"
 
 DEPEND="gnome-common gtk-doc
        girepository(Gtk-3.0)
@@ -12,8 +12,8 @@ DEPEND="gnome-common gtk-doc
 
 PKG_NAMES="${PN} ${PN}-devel"
 PKG_HINTS="setup devel"
-gedit_CONTENTS="--exclude=gtk-doc etc/ usr/bin/ usr/lib/gedit/ ${PYTHON_SITELIB#/} usr/share/"
-gedit_devel_CONTENTS="usr/include/ usr/lib/lib* usr/lib/pkgconfig/ usr/share/gtk-doc/"
+gedit_CONTENTS="--exclude=gtk-doc --exclude=libgedit* etc/ usr/bin/ usr/lib/gedit/ ${PYTHON_SITELIB#/} usr/share/"
+gedit_devel_CONTENTS="usr/include/ usr/lib/gedit/libgedit* usr/lib/pkgconfig/ usr/share/gtk-doc/"
 
 DIFF_EXCLUDES="*.desktop.in *.schemas.in *-marshal.h"
 
This page took 0.025296 seconds and 5 git commands to generate.