[pkg-wine-party] [wine] 04/06: Generate list of used shared libraries.
Jens Reyer
jreyer-guest at moszumanska.debian.org
Sun May 29 22:41:54 UTC 2016
This is an automated email from the git hooks/post-receive script.
jreyer-guest pushed a commit to branch master
in repository wine.
commit c7a61faafdffa20f9cfe3143102d27556b6c1d63
Author: Jens Reyer <jre.winesim at gmail.com>
Date: Mon May 30 00:22:14 2016 +0200
Generate list of used shared libraries.
First check for all sonames that were found by configure in
include/config.h. Drop not wanted ones (netapi) and use this list
for "Recommends". Select some important libraries, which were
already depended upon before (fontconfig, freetype and ncurses)
for "Depends".
Then for each set of sonames use sonames2elf to build an ELF
binary that depends on them, and use dpkg-shlibdeps to compute
the dependencies and add them to libwineVERSION.substvars
(dlopen:Depends and dlopen:Recommends}.
---
debian/changelog | 4 ++++
debian/rules | 21 +++++++++++++++++++++
2 files changed, 25 insertions(+)
diff --git a/debian/changelog b/debian/changelog
index f2d6e10..e97dbf6 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -24,6 +24,10 @@ wine-development (1.9.9-1) UNRELEASED; urgency=medium
* Drop obsolete dh_strip exclusion of some files.
* Change version string to display vendor and version.
* Drop obsolete dependency on x11-utils.
+ * Generate list of used shared libraries and let libwine recommend it.
+ (see: #823991).
+ Also use this mechanism to identify the package names of depended
+ upon libraries. Thanks to Jakub Wilk.
-- Jens Reyer <jre.winesim at gmail.com> Sun, 29 May 2016 21:13:50 +0200
diff --git a/debian/rules b/debian/rules
index a868249..ecdbc1a 100755
--- a/debian/rules
+++ b/debian/rules
@@ -61,6 +61,16 @@ endif
INSTALLS=$(shell ls debian/*VERSION* | sed s/VERSION/$(VERSION)/) \
debian/bug-control \
+# sonames to compute additional dependencies
+sonamesDepends=$(shell \
+ grep "^\#define SONAME_" include/config.h | \
+ grep -E "libfontconfig|libfreetype|libncurses" | \
+ cut -d\" -f2)
+sonamesRecommends=$(shell \
+ grep "^\#define SONAME_" include/config.h | \
+ grep -v libnetapi | \
+ cut -d\" -f2)
+
debian/control: debian/control.in
sed s/VERSION/$(VERSION)/g < $< > $@
@@ -138,6 +148,17 @@ override_dh_auto_install-arch: $(INSTALLS)
override_dh_strip:
dh_strip --dbgsym-migration='libwine$(VERSION)-dbg (<< 1.9.0-1~)'
+override_dh_shlibdeps:
+ mkdir -p debian/tmp
+ ./debian/scripts/sonames2elf $(sonamesDepends) > debian/tmp/elf.depends
+ ./debian/scripts/sonames2elf $(sonamesRecommends) > debian/tmp/elf.recommends
+ dpkg-shlibdeps --warnings=1 \
+ -pdlopen \
+ -dDepends -edebian/tmp/elf.depends \
+ -dRecommends -edebian/tmp/elf.recommends \
+ -Tdebian/libwine$(VERSION).substvars
+ dh_shlibdeps
+
override_dh_gencontrol:
dh_gencontrol -- \
-Vbuilt:Using="$(shell dpkg-query -f '$${source:Package} (= $${source:Version}), ' -W khronos-api unicode-data)" \
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-wine/wine.git
More information about the pkg-wine-party
mailing list