[xdmf] 24/38: [WIP]: Test install
Alastair McKinstry
mckinstry at moszumanska.debian.org
Thu Apr 13 15:16:36 UTC 2017
This is an automated email from the git hooks/post-receive script.
mckinstry pushed a commit to branch debian/master
in repository xdmf.
commit 677c7108f7926dbf48c941d9d6956ef3f55348dc
Author: Alastair McKinstry <mckinstry at debian.org>
Date: Sat Aug 20 18:57:40 2016 +0100
[WIP]: Test install
---
debian/{libxdmf2.docs => libxdmf-dev.docs} | 1 -
debian/libxdmf-dev.examples | 1 +
debian/{libxdmf2.install => libxdmf3.install} | 0
debian/libxmdf-dev.docs | 2 -
debian/python-xdmf.examples | 1 -
debian/python3-xdmf.install | 1 +
debian/rules | 99 ++++++++++++++++-----------
7 files changed, 62 insertions(+), 43 deletions(-)
diff --git a/debian/libxdmf2.docs b/debian/libxdmf-dev.docs
similarity index 57%
rename from debian/libxdmf2.docs
rename to debian/libxdmf-dev.docs
index eb245b1..34081f3 100644
--- a/debian/libxdmf2.docs
+++ b/debian/libxdmf-dev.docs
@@ -1,2 +1 @@
-debian/TODO.txt
debian/README.sources
diff --git a/debian/libxdmf-dev.examples b/debian/libxdmf-dev.examples
index 06f9936..b27bdf2 100644
--- a/debian/libxdmf-dev.examples
+++ b/debian/libxdmf-dev.examples
@@ -1,2 +1,3 @@
Examples/Cxx
Examples/Data
+Examples/Python
diff --git a/debian/libxdmf2.install b/debian/libxdmf3.install
similarity index 100%
rename from debian/libxdmf2.install
rename to debian/libxdmf3.install
diff --git a/debian/libxmdf-dev.docs b/debian/libxmdf-dev.docs
deleted file mode 100644
index eb245b1..0000000
--- a/debian/libxmdf-dev.docs
+++ /dev/null
@@ -1,2 +0,0 @@
-debian/TODO.txt
-debian/README.sources
diff --git a/debian/python-xdmf.examples b/debian/python-xdmf.examples
deleted file mode 100644
index 6afbf54..0000000
--- a/debian/python-xdmf.examples
+++ /dev/null
@@ -1 +0,0 @@
-Examples/Python/*
diff --git a/debian/python3-xdmf.install b/debian/python3-xdmf.install
new file mode 100644
index 0000000..4606faa
--- /dev/null
+++ b/debian/python3-xdmf.install
@@ -0,0 +1 @@
+usr/lib/python3*
diff --git a/debian/rules b/debian/rules
index 7ef6bd7..a8f09af 100755
--- a/debian/rules
+++ b/debian/rules
@@ -11,69 +11,90 @@ include /usr/share/mpi-default-dev/debian_defaults
MPI:=$(ARCH_DEFAULT_MPI_IMPL)
DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
-TMPDIR=debian/tmp
+TMPDIR=$(CURDIR)/debian/tmp
LIBDIR=/usr/lib/${DEB_HOST_MULTIARCH}
-PY2:=$(shall pyversions -s)
+PY2:=$(shell pyversions -s)
PY3:=$(shell py3versions -s)m
-# FIXME: Pass different CXXFLAGS to different builds
-# CXXFLAGS:= -I/usr/include/${PYVER} ${CXXFLAGS}
+CXXFLAGS:=$(shell dpkg-buildflags --get CXXFLAGS) -fPIC
+
+BUILD_DIRS:= debian/build-mpi-py2 debian/build-serial-py2 debian/build-mpi-py3 debian/build-serial-py3
CMAKE_FLAGS:= -DXDMF_SYSTEM_ZLIB=ON -DXDMF_SYSTEM_LIBXML2=ON -DXDMF_USE_BZIP2=ON -DXDMF_USE_GZIP=ON \
-DXDMF_SYSTEM_HDF5=ON \
-DXDMF_USE_RPATH=OFF \
+ -DXDMF_BUILD_UTILS=ON \
-DCMAKE_INSTALL_PREFIX=/usr \
-DXDMF_WRAP_PYTHON=ON \
+ -DXDMF_REGENERATE_WRAPPERS=ON \
-DGZSTREAM_LIBRARY=/usr/lib/$(DEB_HOST_MULTIARCH)/libgzstream.so \
-DBUILD_SHARED_LIBS=TRUE
override_dh_auto_configure:
- mkdir -p debian/build-mpi-2 debian/build-serial-2 debian/build-mpi-3 debian/build-serial-3
- (cd debian/build-serial-2 && \
+ mkdir -p $(BUILD_DIRS)
+ (cd debian/build-serial-py2 && \
HDF5_ROOT=$(LIBDIR)/hdf5/serial cmake ../.. \
$(CMAKE_FLAGS) \
- -DPYTHON_INCLUDE_PATH=/usr/include/${PY2} \
+ -DPYTHON_INCLUDE_PATH=/usr/include/$(PY2) \
-DPYTHON_LIBRARY=$(LIBDIR)/lib$(PY2).so \
- -DXDMF_BUILD_MPI=OFF \
- -DXDMF_SYSTEM_HDF5_IS_PARALLEL=OFF \
- -DHDF5_ROOT=$(HDF5_ROOT) )
- (cd debian/build-mpi-3 && cmake ../.. \
+ -DXDMF_BUILD_MPI=OFF -DXDMF_SYSTEM_HDF5_IS_PARALLEL=OFF \
+ -DHDF5_ROOT=$(LIBDIR)/hdf5/serial )
+ (cd debian/build-serial-py3 && \
+ HDF5_ROOT=$(LIBDIR)/hdf5/serial cmake ../.. \
+ $(CMAKE_FLAGS) \
+ -DPYTHON_INCLUDE_PATH=/usr/include/$(PY3) \
+ -DPYTHON_LIBRARY=$(LIBDIR)/lib$(PY3).so \
+ -DXDMF_BUILD_MPI=OFF -DXDMF_SYSTEM_HDF5_IS_PARALLEL=OFF \
+ -DHDF5_ROOT=$(LIBDIR)/hdf5/serial )
+ (cd debian/build-mpi-py2 && \
HDF5_ROOT=$(LIBDIR)/hdf5/$(MPI) cmake ../.. \
$(CMAKE_FLAGS) \
- -DPYTHON_INCLUDE_PATH=/usr/include/${PY3} \
+ -DPYTHON_INCLUDE_PATH=/usr/include/$(PY2) \
+ -DPYTHON_LIBRARY=$(LIBDIR)/lib$(PY2).so \
+ -DXDMF_BUILD_MPI=ON -DXDMF_SYSTEM_HDF5_IS_PARALLEL=ON \
+ -DHDF5_ROOT=$(LIBDIR)/hdf5/$(MPI) )
+ (cd debian/build-mpi-py3 && \
+ HDF5_ROOT=$(LIBDIR)/hdf5/$(MPI) cmake ../.. \
+ $(CMAKE_FLAGS) \
+ -DPYTHON_INCLUDE_PATH=/usr/include/$(PY3) \
-DPYTHON_LIBRARY=$(LIBDIR)/lib$(PY3).so \
- -DXDMF_BUILD_MPI=ON \
- -DXDMF_SYSTEM_HDF5_IS_PARALLEL=ON \
- -DHDF5_ROOT=$(HDF5_ROOT) )
-
+ -DXDMF_BUILD_MPI=ON -DXDMF_SYSTEM_HDF5_IS_PARALLEL=ON \
+ -DHDF5_ROOT=$(LIBDIR)/hdf5/$(MPI) )
override_dh_auto_build:
- $(MAKE) -C debian/build-serial-2
- $(MAKE) -C debian/build-mpi-3
-
-# -DXDMF_SYSTEM_HDF5=ON -DXDMF_SYSTEM_HDF5_IS_PARALLEL=ON \
+ for p in $(BUILD_DIRS) ; do \
+ $(MAKE) -C $$p ; done
-# later, add -DXDMF_BUILD_UTILS=ON CMAKE_C_FLAGS_RELEASE="-O3 -NDEBUG" CMAKE_EXE_LINKER_FLAGS
-# CMAKE_MODULE_LINKER_FLAGS_RELEASE
+override_dh_auto_test:
+ @echo "Ignore; no tests present"
override_dh_auto_install:
- dh_auto_install
- # dh_install can't rename, so do it manually.
- mkdir -p $(TMPDIR)/$(LIBDIR)
- mv $(TMPDIR)/usr/lib/libXdmf.so.3 $(TMPDIR)/$(LIBDIR)/libXdmf.so.3.0
- mkdir -p $(TMPDIR)/$(LIBDIR)/cmake
- mv $(TMPDIR)/usr/lib/XdmfCMake $(TMPDIR)/$(LIBDIR)/cmake
- # Fix perms.
- find Examples -type f -exec chmod -x {} \;
- dh_link -p libxdmf-dev $(LIBDIR)/libXdmf.so.3.0 $(LIBDIR)/libXdmf.so
- dh_link -p libxdmf2 $(LIBDIR)/libXdmf.so.3.0 $(LIBDIR)/libXdmf.so.3
- # https://bugs.launchpad.net/ubuntu/+source/xdmf/+bug/1154071
- sed -e 's%@ARCH@%$(DEB_HOST_MULTIARCH)%' < debian/cmake.patch.in > debian/cmake.patch
- (cd $(TMPDIR)/$(LIBDIR)/cmake/XdmfCMake && patch < ../../../../../../cmake.patch )
+ # Assemble something workable from the 4 install dirs.
+ $(MAKE) -C debian/build-mpi-py3 install DESTDIR=$(TMPDIR)
+ # Add the (non-default) serial cases into a NoMpi subdirectory
+ mkdir -p $(TMPDIR)/usr/lib/$(PY3)/xdmf/NoMpi $(TMPDIR)/usr/lib/$(PY2)/xdmf/NoMpi
+ # standard shared libs into {serial,$MPI} directories as elswehere
+ mkdir -p $(TMPDIR)/$(LIBDIR)/xdmf/serial $(TMPDIR)/$(LIBDIR)/xdmf/$(MPI)
+ mv $(TMPDIR)/usr/lib/lib* $(TMPDIR)/$(LIBDIR)/xdmf/$(MPI)
+ cp debian/build-serial-py3/lib*.so debian/build-serial-py3/lib*.a $(TMPDIR)/$(LIBDIR)/xdmf/serial
+ mv $(TMPDIR)/usr/lib/python/* $(TMPDIR)/usr/lib/$(PY3)/xdmf
+ cp $(TMPDIR)/usr/lib/$(PY3)/xdmf/*.py $(TMPDIR)/usr/lib/$(PY2)/xdmf
+ cp debian/build-mpi-py2/_*.so $(TMPDIR)/usr/lib/$(PY2)/xdmf
+ cp debian/build-serial-py2/_*.so $(TMPDIR)/usr/lib/$(PY2)/xdmf/NoMpi
+ cp debian/build-serial-py3/_*.so $(TMPDIR)/usr/lib/$(PY3)/xdmf/NoMpi
+
+ #mv $(TMPDIR)/usr/lib/libXdmf.so.3 $(TMPDIR)/$(LIBDIR)/libXdmf.so.3.0
+ #mkdir -p $(TMPDIR)/$(LIBDIR)/cmake
+ #mv $(TMPDIR)/usr/lib/XdmfCMake $(TMPDIR)/$(LIBDIR)/cmake
+ ## Fix perms.
+ #find Examples -type f -exec chmod -x {} \;
+ #dh_link -p libxdmf-dev $(LIBDIR)/libXdmf.so.3.0 $(LIBDIR)/libXdmf.so
+ #dh_link -p libxdmf2 $(LIBDIR)/libXdmf.so.3.0 $(LIBDIR)/libXdmf.so.3
+ ## https://bugs.launchpad.net/ubuntu/+source/xdmf/+bug/1154071
+ #sed -e 's%@ARCH@%$(DEB_HOST_MULTIARCH)%' < debian/cmake.patch.in > debian/cmake.patch
+ #(cd $(TMPDIR)/$(LIBDIR)/cmake/XdmfCMake && patch < ../../../../../../cmake.patch )
override_dh_auto_clean:
dh_auto_clean
- rm -f debian/cmake.patch
- rm -rf debian/build-*
- rm -f libsrc/gzstream*
- -find . -name CVS -exec rm -rf {} \;
+ rm -f debian/cmake.patch libsrc/gzstream
+ rm -rf $(BUILD_DIRS)
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-science/packages/xdmf.git
More information about the debian-science-commits
mailing list