[SCM] flam3/master: Build and package shared library.

js at users.alioth.debian.org js at users.alioth.debian.org
Thu Apr 18 19:24:05 UTC 2013


The following commit has been merged in the master branch:
commit 242374e81a23f6a57f521bc96f45617bd93f12c8
Author: Jonas Smedegaard <dr at jones.dk>
Date:   Wed Apr 18 12:23:03 2012 -0400

    Build and package shared library.

diff --git a/debian/control.in b/debian/control.in
index 716e8ce..9f33fde 100644
--- a/debian/control.in
+++ b/debian/control.in
@@ -9,15 +9,71 @@ Homepage: http://flam3.com/
 Vcs-Git: git://git.debian.org/collab-maint/flam3.git
 Vcs-Browser: http://anonscm.debian.org/gitweb/?p=collab-maint/flam3.git
 
+Package: libflam3-dev
+Section: libdevel
+Architecture: any
+Multi-Arch: same
+Depends: libflam3 (= ${binary:Version}),
+ ${devlibs:Depends},
+ ${misc:Depends},
+ pkg-config
+Provides: libflam-dev
+Conflicts: libflam-dev
+Description: cosmic recursive fractal flames - library headers
+ Fractal Flames are algorithmically generated images and animations. The
+ shape of each image is specified by a long string of numbers - a
+ genetic code of sorts.
+ .
+ FLAM3 is the rendering engine for Electric Sheep.
+ .
+ This package contains the development headers and static libraries.
+
+Package: libflam3
+Section: libs
+Architecture: any
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends},
+ ${cdbs:Pre-Depends}
+Depends: ${shlibs:Depends},
+ ${misc:Depends},
+ libflam3-data (= ${binary:Version})
+Suggests: flam3
+Description: cosmic recursive fractal flames - shared library
+ Fractal Flames are algorithmically generated images and animations. The
+ shape of each image is specified by a long string of numbers - a
+ genetic code of sorts.
+ .
+ FLAM3 is the rendering engine for Electric Sheep.
+ .
+ This package contains the shared libraries.
+
+Package: libflam3-data
+Architecture: all
+Multi-Arch: foreign
+Depends: ${shlibs:Depends},
+ ${misc:Depends}
+Recommends: libflam3
+Description: cosmic recursive fractal flames - shared data
+ Fractal Flames are algorithmically generated images and animations. The
+ shape of each image is specified by a long string of numbers - a
+ genetic code of sorts.
+ .
+ FLAM3 is the rendering engine for Electric Sheep.
+ .
+ This package contains the shared data files.
+
 Package: flam3
 Architecture: any
 Depends: ${shlibs:Depends}, ${misc:Depends}
 Suggests: electricsheep
 Replaces: electricsheep (<< 2.7~)
 Breaks: electricsheep (<< 2.7~)
-Description: render and animate FLAM3s and manipulate their genomes
+Description: cosmic recursive fractal flames - tools
  Fractal Flames are algorithmically generated images and animations. The
  shape of each image is specified by a long string of numbers - a
  genetic code of sorts.
  .
  FLAM3 is the rendering engine for Electric Sheep.
+ .
+ This package contains tools to render and animate FLAM3s and manipulate
+ their genomes.
diff --git a/debian/flam3.install b/debian/flam3.install
new file mode 100644
index 0000000..a65408f
--- /dev/null
+++ b/debian/flam3.install
@@ -0,0 +1,2 @@
+usr/bin
+usr/share/man
diff --git a/debian/libflam3-data.install b/debian/libflam3-data.install
new file mode 100644
index 0000000..3de7f18
--- /dev/null
+++ b/debian/libflam3-data.install
@@ -0,0 +1 @@
+usr/share/flam3
diff --git a/debian/rules b/debian/rules
index b530a75..e450083 100755
--- a/debian/rules
+++ b/debian/rules
@@ -24,11 +24,13 @@ include /usr/share/cdbs/1/rules/debhelper.mk
 
 stem = flam
 abi = 3
-libname = $(stem)$(abi)
-libpkgname = $(stem)$(abi)
+pkg = $(stem)$(abi)
+libname = lib$(stem)
+libpkgname = lib$(stem)$(abi)
+devpkgname = lib$(stem)$(abi)-dev
 
 DEB_UPSTREAM_TARBALL_BASENAME_MANGLE = s/3\.0\.1\.0/3.0.1/
-DEB_UPSTREAM_URL = http://$(libname).googlecode.com/files
+DEB_UPSTREAM_URL = http://$(pkg).googlecode.com/files
 DEB_UPSTREAM_TARBALL_MD5 = 916e1cda65b4ce2c84b3b4edc7d9605a
 
 # suppress optional build-dependencies
@@ -44,5 +46,28 @@ DEB_SRCDIR = src
 
 LDFLAGS += -Wl,-z,defs
 
+# Multiarch quirks (should ideally be resolved automagically)
+CDBS_BUILD_DEPENDS_rules_debhelper_buildinfo =
+CDBS_BUILD_DEPENDS_rules_buildcore_pkgrel =
+CDBS_PREDEPENDS_$(libpkgname) = $(if $(DEB_HOST_MULTIARCH),multiarch-support)
+DEB_CONFIGURE_EXTRA_FLAGS += --libdir=\$${prefix}/lib/$(DEB_HOST_MULTIARCH)
+
+DEB_CONFIGURE_EXTRA_FLAGS += --enable-shared
+
+# Let d-shlibs calculate development package dependencies
+#  and handle shared library install
+binary-post-install/$(libpkgname):: debian/stamp-local-shlibs-$(libname)
+debian/stamp-local-shlibs-$(libname): binary-install/$(libpkgname) debian/stamp-local-strip-la
+	d-shlibmove --commit \
+		--multiarch \
+		--exclude-la \
+		--movedev "debian/tmp/usr/include/*" usr/include/ \
+		--movedev "debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/pkgconfig/*" \
+			usr/lib/$(DEB_HOST_MULTIARCH)/pkgconfig \
+		debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/$(libname).so
+	touch $@
+clean::
+	rm -f debian/stamp-local-shlibs-$(libname)
+
 binary-post-install/$(libpkgname)::
 	find $(cdbs_curdestdir) -name libflam3.la -delete

-- 
flam3 packaging



More information about the pkg-multimedia-commits mailing list