Package: gjs
Version: 0.4-4
Severity: wishlist
Tags: patch
User: [email protected]
Usertags: origin-ubuntu lucid ubuntu-patch
*** /tmp/tmpZdM6qE
In Ubuntu, we've applied the attached patch to achieve the following:
+ debian/control:
- Add Build-Depends on dbus-x11 and uuid-runtime for the testsuite
+ debian/rules:
- Apply ltmain-add-as-needed.patch after autoreconf to fix libtool
handling of --as-needed.
- Add -Wl,--as-needed -Wl,z,defs to LDFLAGS. This removes unnecessary
linkages from the libraries, fixing some dpkg-shlibdeps warnings.
- Remove testEverythingBasic.js and testEverythingEncapsulated.js
from the test suite. These fail because our gobject-introspection
packages don't include Everything-1.0.typelib. (Launchpad bug
510426 filed for this, Debian bug is #550478).
- Enable the rest of the testsuite.
+ debian/ltmain-add-as-needed.patch
- Patch from Debian bug 347650 to fix libtools --as-needed handling.
We thought you might be interested in doing the same.
-- System Information:
Debian Release: squeeze/sid
APT prefers lucid-security
APT policy: (500, 'lucid-security'), (500, 'lucid')
Architecture: amd64 (x86_64)
Kernel: Linux 2.6.32-10-generic (SMP w/2 CPU cores)
Locale: LANG=en_AU.utf8, LC_CTYPE=en_AU.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
diff -u gjs-0.4/debian/rules gjs-0.4/debian/rules
--- gjs-0.4/debian/rules
+++ gjs-0.4/debian/rules
@@ -13,15 +13,32 @@
- dh_auto_configure --sourcedirectory=_build
+ cd _build && patch -p3 < ../debian/ltmain-add-as-needed.patch
+ dh_auto_configure --sourcedirectory=_build -- LDFLAGS="$(LDFLAGS) -Wl,-z,defs -Wl,--as-needed"
override_dh_auto_build:
dh_auto_build --sourcedirectory=_build
override_dh_auto_install:
dh_auto_install --sourcedirectory=_build
override_dh_clean:
rm -rf _build
dh_clean
override_dh_auto_test:
- true
+ # Our gir-repository packages don't build Everything.typelib, so the
+ # Everything tests will fail. Just remove them.
+ rm _build/test/js/testEverythingBasic.js
+ rm _build/test/js/testEverythingEncapsulated.js
+ dh_auto_test --sourcedirectory=_build
diff -u gjs-0.4/debian/changelog gjs-0.4/debian/changelog
diff -u gjs-0.4/debian/control gjs-0.4/debian/control
--- gjs-0.4/debian/control
+++ gjs-0.4/debian/control
@@ -1,22 +1,25 @@
Source: gjs
Section: interpreters
Priority: extra
-Maintainer: Gustavo Noronha Silva <[email protected]>
+Maintainer: Ubuntu Developers <[email protected]>
+XSBC-Original-Maintainer: Gustavo Noronha Silva <[email protected]
Build-Depends: debhelper (>= 7.3.0),
autotools-dev,
autoconf,
automake1.7,
libtool,
pkg-config,
libdbus-glib-1-dev,
libglib2.0-dev,
libgirepository1.0-dev (>= 0.6.3),
gobject-introspection (>= 0.6.5-3),
gir1.0-glib-2.0,
- xulrunner-dev (>= 1.9)
+ xulrunner-dev (>= 1.9),
+ dbus-x11,
+ uuid-runtime
Standards-Version: 3.8.3
Homepage: http://live.gnome.org/Gjs
Package: gjs
@@ -32,7 +35,12 @@
Package: libgjs0
Architecture: any
Section: libs
Depends: ${shlibs:Depends}, ${misc:Depends}, ${gir:Depends}
Description: Mozilla-based javascript bindings for the GNOME platform
Makes it possible for applications to use all of GNOME's platform
libraries using the Javascript language. It's mainly based on the
@@ -45,8 +53,9 @@
Section: libdevel
Depends: libgjs0 (= ${binary:Version}),
${misc:Depends},
libgirepository1.0-dev
Description: Mozilla-based javascript bindings for the GNOME platform
Makes it possible for applications to use all of GNOME's platform
libraries using the Javascript language. It's mainly based on the
only in patch2:
unchanged:
--- gjs-0.4.orig/debian/ltmain-add-as-needed.patch
+++ gjs-0.4/debian/ltmain-add-as-needed.patch
@@ -0,0 +1,43 @@
+Description: Patch to add --as-needed magic to ltmain.sh
+ This patch needs to be applied after autoreconf is run, and autoreconf should
+ be copying files, not symlinking (ie: the '-s' option should not be given) so
+ that system-wide files aren't accidentally patched.
+ .
+ This should be more robust than copying a pre-patched version of ltmain.sh
+ from debian/ on build, as ltmain.sh needs to be exactly the same version as
+ the rest of libtool.
+ .
+ This is somewhat of a hack taken from an attachment to Debian bug 347650
+Author: Josselin Mouette <[email protected]>
+
+
+--- libtool-2.2.6b/libltdl/config/ltmain.sh 2010-01-04 05:33:00.810981679 +0000
++++ libtool-as-needed/libltdl/config/ltmain.sh 2010-01-04 00:18:29.715388881 +0000
+@@ -4716,6 +4716,11 @@
+ arg=$func_stripname_result
+ ;;
+
++ -Wl,--as-needed)
++ deplibs="$deplibs $arg"
++ continue
++ ;;
++
+ -Wl,*)
+ func_stripname '-Wl,' '' "$arg"
+ args=$func_stripname_result
+@@ -5070,6 +5075,15 @@
+ lib=
+ found=no
+ case $deplib in
++ -Wl,--as-needed)
++ if test "$linkmode,$pass" = "prog,link"; then
++ compile_deplibs="$deplib $compile_deplibs"
++ finalize_deplibs="$deplib $finalize_deplibs"
++ else
++ deplibs="$deplib $deplibs"
++ fi
++ continue
++ ;;
+ -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe|-threads)
+ if test "$linkmode,$pass" = "prog,link"; then
+ compile_deplibs="$deplib $compile_deplibs"