[PATCH] Build with OpenMP support
Andreas Metzler
ametzler at downhill.at.eu.org
Sun Apr 4 10:54:59 UTC 2010
Compile twice with and without OpenMP. OpenMP enabled binaries are
installed as enblend-mp/enfuse-mp.
---
debian/changelog | 2 ++
debian/enblend.install | 1 +
debian/enblend.links | 1 +
debian/enfuse.install | 1 +
debian/enfuse.links | 1 +
debian/rules | 43 +++++++++++++++++++++++++++++++++----------
6 files changed, 39 insertions(+), 10 deletions(-)
create mode 100644 debian/enblend.links
create mode 100644 debian/enfuse.links
diff --git a/debian/changelog b/debian/changelog
index 6ea1a9f..1b912d6 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -7,6 +7,8 @@ enblend-enfuse (4.0+dfsg-1) experimental; urgency=low
* [debian/rules] Don't try to install TODO - no longer shipped upstream.
* focus-stacking.info is not installed as a separate file anymore.
* Update build-depends by adding gnuplot transfig tidy ttf-freefont.
+ * Build/ship alternative binaries of enblend and enfuse binaries with OpenMP
+ support. They are installed as enblend-mp and enfuse-mp respectively.
[ Sebastian Harl ]
* debian/rules:
diff --git a/debian/enblend.install b/debian/enblend.install
index 8b18bc9..5977df9 100644
--- a/debian/enblend.install
+++ b/debian/enblend.install
@@ -1,4 +1,5 @@
usr/bin/enblend
+usr/bin/enblend-mp
usr/share/info/enblend.info
usr/share/man/man1/enblend.1
diff --git a/debian/enblend.links b/debian/enblend.links
new file mode 100644
index 0000000..2b4f0d4
--- /dev/null
+++ b/debian/enblend.links
@@ -0,0 +1 @@
+usr/share/man/man1/enblend.1.gz usr/share/man/man1/enblend-mp.1.gz
diff --git a/debian/enfuse.install b/debian/enfuse.install
index a693dca..5d949a4 100644
--- a/debian/enfuse.install
+++ b/debian/enfuse.install
@@ -1,4 +1,5 @@
usr/bin/enfuse
+usr/bin/enfuse-mp
usr/share/info/enfuse.info
usr/share/man/man1/enfuse.1
diff --git a/debian/enfuse.links b/debian/enfuse.links
new file mode 100644
index 0000000..e270120
--- /dev/null
+++ b/debian/enfuse.links
@@ -0,0 +1 @@
+usr/share/man/man1/enfuse.1.gz usr/share/man/man1/enfuse-mp.1.gz
diff --git a/debian/rules b/debian/rules
index 163f44d..7c382ef 100755
--- a/debian/rules
+++ b/debian/rules
@@ -19,28 +19,46 @@ else
CFLAGS += -O2
endif
+CONFARGS=--host=$(DEB_HOST_GNU_TYPE) \
+ --build=$(DEB_BUILD_GNU_TYPE) \
+ --prefix=/usr --mandir=\$${prefix}/share/man \
+ --enable-gpu-support=yes \
+ --with-boost-filesystem=yes \
+ --with-openexr=yes
+
+# --disable-openmp \
+# --enable-image-cache=yes \
+
+
get-orig-source:
dh_testdir
dh_testroot
chmod 755 debian/bin/uscan_repack.sh
uscan --verbose --force-download --rename
-config.status: configure
+# Hack: Since out of tree building of documentation is broken, make a out-tree
+# build for mp versions and in-tree build for the regular binaries. Out of tree
+# configure fails if in-tree configure run is detected, therefore force correct
+# ordering by making config.status depend on build-tree-mp/config.status.
+config.status: configure build-tree-mp/config.status
dh_testdir
- CFLAGS="$(CFLAGS)" ./configure --host=$(DEB_HOST_GNU_TYPE) \
- --build=$(DEB_BUILD_GNU_TYPE) \
- --prefix=/usr --mandir=\$${prefix}/share/man \
- --enable-gpu-support=yes \
+ CFLAGS="$(CFLAGS)" ./configure $(CONFARGS) \
--disable-openmp \
- --enable-image-cache=yes \
- --with-boost-filesystem=yes \
- --with-openexr=yes
+ --enable-image-cache=yes
+
+build-tree-mp/config.status: configure
+ dh_testdir
+ if ! test -e build-tree-mp ; then mkdir build-tree-mp ; fi
+ cd build-tree-mp && CFLAGS="$(CFLAGS)" ../configure $(CONFARGS) \
+ --enable-openmp \
+ --disable-image-cache
build: build-stamp
-build-stamp: config.status
+build-stamp: config.status build-tree-mp/config.status
dh_testdir
+ cd build-tree-mp && $(MAKE)
$(MAKE)
touch build-stamp
@@ -52,10 +70,11 @@ clean:
[ ! -f Makefile ] || $(MAKE) distclean
rm -f doc/*.info
+ rm -rf build-tree-mp
dh_clean
-install: build
+install: build-stamp
dh_testdir
dh_testroot
dh_clean -k
@@ -63,6 +82,10 @@ install: build
$(MAKE) DESTDIR=$(CURDIR)/debian/tmp install
rm -f $(CURDIR)/debian/tmp/usr/share/info/dir
+ install -m755 build-tree-mp/src/enblend \
+ $(CURDIR)/debian/tmp/usr/bin/enblend-mp
+ install -m755 build-tree-mp/src/enfuse \
+ $(CURDIR)/debian/tmp/usr/bin/enfuse-mp
binary-indep:
# nothing to do here
--
1.6.5
--Dxnq1zWXvFF0Q93v--
More information about the Pkg-phototools-devel
mailing list