[netcdf] 06/08: Fix install paths
Alastair McKinstry
mckinstry at moszumanska.debian.org
Thu Feb 18 10:58:36 UTC 2016
This is an automated email from the git hooks/post-receive script.
mckinstry pushed a commit to branch dev-coinstallable
in repository netcdf.
commit a3cdede4aa3f339289ea316e3cd8c8888dfe94c2
Author: Alastair McKinstry <mckinstry at debian.org>
Date: Sat Jan 16 20:35:17 2016 +0000
Fix install paths
---
debian/TODO | 7 ++++
debian/changelog | 2 +-
debian/control | 32 +++++++++++++++
debian/libnetcdf-dev.install | 5 ++-
debian/libnetcdf-dev.postinst.in | 10 +++++
debian/libnetcdf-mpi-dev.install | 7 +++-
debian/libnetcdf-mpi-dev.postinst.in | 10 +++++
debian/libnetcdf-pnetcdf-dev.install | 6 +++
debian/libnetcdf-pnetcdf-dev.postinst.in | 10 +++++
debian/libnetcdf7-mpi.install | 2 +-
debian/libnetcdf7-pnetcdf.install | 1 +
debian/libnetcdf7.install | 2 +-
debian/rules | 67 +++++++++++++++++++++++---------
13 files changed, 136 insertions(+), 25 deletions(-)
diff --git a/debian/TODO b/debian/TODO
new file mode 100644
index 0000000..79f11af
--- /dev/null
+++ b/debian/TODO
@@ -0,0 +1,7 @@
+* Audit symbols files
+* pkg-config. has_* variables not being set?
+* Test nc-config patch.
+* Add pkg-config files to libaec,
+
+* CMAKE Config files: HAS_PNETCDF not set correctly. Why?
+
diff --git a/debian/changelog b/debian/changelog
index 68e717a..9374947 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,6 +1,6 @@
netcdf (1:4.4.0~rc5-1~exp2) UNRELEASED; urgency=medium
- * Test netcdf-parallel changes
+ * Add mpi, pnetcdf variants of netcdf. Closes: #708638.
-- Alastair McKinstry <mckinstry at debian.org> Thu, 14 Jan 2016 16:56:32 +0000
diff --git a/debian/control b/debian/control
index 15cf353..5b14aee 100644
--- a/debian/control
+++ b/debian/control
@@ -74,6 +74,21 @@ Description: Interface for scientific data access to large binary data
This package contains the C run-time shared libraries required
by programs.
+Package: libnetcdf7-pnetcdf
+Section: libs
+Architecture: any
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Description: Interface for scientific data access to large binary data
+ NetCDF (network Common Data Form) is an interface for scientific
+ data access and a freely-distributed software library that provides an
+ implementation of the interface. The netCDF library also defines a
+ machine-independent format for representing scientific data.
+ Together, the interface, library, and format support the creation,
+ access, and sharing of scientific data.
+ .
+ This package contains the C run-time shared libraries required
+ by programs.
+
Package: libnetcdf-dev
Architecture: any
Section: libdevel
@@ -113,6 +128,23 @@ Description: creation, access, and sharing of array-oriented scientific data
.
This package provides headers.
+Package: libnetcdf-pnetcdf-dev
+Architecture: any
+Section: libdevel
+Depends: libnetcdf-dev(= ${binary:Version}),
+ libnetcdf7-pnetcdf (= ${binary:Version}),
+ ${shlibs:Depends}, ${misc:Depends},
+ pkg-config
+Suggests: netcdf-bin, netcdf-doc
+Description: creation, access, and sharing of array-oriented scientific data
+ NetCDF (network Common Data Form) is a set of interfaces for array-oriented
+ data access and a freely distributed collection of data access libraries for
+ C, Fortran, C++, Java, and other languages. The netCDF libraries support a
+ machine-independent format for representing scientific data. Together, the
+ interfaces, libraries, and format support the creation, access, and sharing of
+ scientific data.
+ .
+ This package provides headers.
Package: netcdf-dbg
Architecture: any
diff --git a/debian/libnetcdf-dev.install b/debian/libnetcdf-dev.install
index bde9845..888bea7 100644
--- a/debian/libnetcdf-dev.install
+++ b/debian/libnetcdf-dev.install
@@ -1,7 +1,8 @@
usr/bin/nc-config
usr/include/*
-usr/lib/*/lib*.so
-usr/lib/*/libnetcdf.settings
+usr/lib/*/netcdf/libnetcdf.so
+#usr/lib/*/netcdf/libnetcdf.a
+usr/lib/*/netcdf/serial
usr/lib/*/cmake/netCDF
usr/lib/*/pkgconfig/netcdf-serial.pc
usr/share/man/man3
diff --git a/debian/libnetcdf-dev.postinst.in b/debian/libnetcdf-dev.postinst.in
new file mode 100644
index 0000000..ffa301c
--- /dev/null
+++ b/debian/libnetcdf-dev.postinst.in
@@ -0,0 +1,10 @@
+#!/bin/sh
+
+set -e
+
+update-alternatives \
+ --install /usr/lib/@MULTIARCH@/pkgconfig/netcdf.pc netcdf.pc /usr/lib/@MULTIARCH@/pkgconfig/netcdf-serial.pc 40 \
+
+#DEBHELPER#
+
+exit 0
diff --git a/debian/libnetcdf-mpi-dev.install b/debian/libnetcdf-mpi-dev.install
index cb292fc..a56f410 100644
--- a/debian/libnetcdf-mpi-dev.install
+++ b/debian/libnetcdf-mpi-dev.install
@@ -1 +1,6 @@
-/usr/lib/*/pkgconfig/*mpi*
+usr/lib/*/pkgconfig/netcdf-mpi.pc
+usr/lib/*/libnetcdf_mpi.so
+#usr/lib/*/libnetcdf_mpi.a
+usr/lib/*/netcdf/mpi
+usr/lib/*/netcdf/mpi/libnetcdf.settings
+usr/lib/*/cmake/netCDF_mpi
diff --git a/debian/libnetcdf-mpi-dev.postinst.in b/debian/libnetcdf-mpi-dev.postinst.in
new file mode 100644
index 0000000..541f07b
--- /dev/null
+++ b/debian/libnetcdf-mpi-dev.postinst.in
@@ -0,0 +1,10 @@
+#!/bin/sh
+
+set -e
+
+update-alternatives \
+ --install /usr/lib/@MULTIARCH@/pkgconfig/netcdf.pc netcdf.pc /usr/lib/@MULTIARCH@/pkgconfig/netcdf-mpi.pc 50 \
+
+#DEBHELPER#
+
+exit 0
diff --git a/debian/libnetcdf-pnetcdf-dev.install b/debian/libnetcdf-pnetcdf-dev.install
new file mode 100644
index 0000000..83982ee
--- /dev/null
+++ b/debian/libnetcdf-pnetcdf-dev.install
@@ -0,0 +1,6 @@
+usr/include/netcdf_par.h
+usr/lib/*/libnetcdf_pnetcdf.so
+#usr/lib/*/libnetcdf_pnetcdf.a
+usr/lib/*/netcdf/pnetcdf
+usr/lib/*/pkgconfig/netcdf-pnetcdf.pc
+usr/lib/*/cmake/netCDF_pnetcdf
diff --git a/debian/libnetcdf-pnetcdf-dev.postinst.in b/debian/libnetcdf-pnetcdf-dev.postinst.in
new file mode 100644
index 0000000..cc10951
--- /dev/null
+++ b/debian/libnetcdf-pnetcdf-dev.postinst.in
@@ -0,0 +1,10 @@
+#!/bin/sh
+
+set -e
+
+update-alternatives \
+ --install /usr/lib/@MULTIARCH@/pkgconfig/netcdf.pc netcdf.pc /usr/lib/@MULTIARCH@/pkgconfig/netcdf-pnetcdf.pc 45 \
+
+#DEBHELPER#
+
+exit 0
diff --git a/debian/libnetcdf7-mpi.install b/debian/libnetcdf7-mpi.install
index 7aaf63c..1281e64 100644
--- a/debian/libnetcdf7-mpi.install
+++ b/debian/libnetcdf7-mpi.install
@@ -1 +1 @@
-/usr/lib/*/lib*mpi*.so.*
+usr/lib/*/libnetcdf_mpi.so.*
diff --git a/debian/libnetcdf7-pnetcdf.install b/debian/libnetcdf7-pnetcdf.install
new file mode 100644
index 0000000..0184785
--- /dev/null
+++ b/debian/libnetcdf7-pnetcdf.install
@@ -0,0 +1 @@
+usr/lib/*/libnetcdf_pnetcdf.so.*
diff --git a/debian/libnetcdf7.install b/debian/libnetcdf7.install
index 3ddde58..bbaec81 100644
--- a/debian/libnetcdf7.install
+++ b/debian/libnetcdf7.install
@@ -1 +1 @@
-usr/lib/*/lib*.so.*
+usr/lib/*/libnetcdf.so.*
diff --git a/debian/rules b/debian/rules
index e1897dd..5a2f403 100755
--- a/debian/rules
+++ b/debian/rules
@@ -30,6 +30,12 @@ override_dh_auto_configure:
-DHDF5_INCLUDE_PATH=$(INCDIR)/hdf5/serial \
-DHDF5_LIBRARY_PATH=$(LIBDIR)/hdf5/serial \
-DLIBLIB_VERSION_SCRIPT=-Wl,--version-script,$(CURDIR)/debian/netcdf-serial.ver
+ dh_auto_configure --builddirectory=build-pnetcdf -- \
+ -DCMAKE_SKIP_RPATH:BOOL=ON \
+ -DENABLE_TESTS:BOOL=ON \
+ -DENABLE_DOXYGEN:BOOL=ON \
+ -DENABLE_PNETCDF=ON \
+ -DCMAKE_C_COMPILER=mpicc
dh_auto_configure --builddirectory=build-mpi -- \
-DCMAKE_SKIP_RPATH:BOOL=ON \
-DENABLE_PARALLEL_TESTS:BOOL=OFF \
@@ -44,35 +50,58 @@ override_dh_auto_configure:
override_dh_auto_build:
$(MAKE) -C build-serial
+ $(MAKE) -C build-pnetcdf
$(MAKE) -C build-mpi
override_dh_auto_clean:
- rm -rf build-* debian/tmp*
+ rm -rf build-* debian/tmp* debian/*.postinst
override_dh_auto_install:
- $(MAKE) -C build-serial install DESTDIR=$(CURDIR)/debian/tmp
- $(MAKE) -C build-mpi install DESTDIR=$(CURDIR)/debian/tmp-mpi
- # rename files. Merge into debian/tmp
- mv debian/tmp/$(LIBDIR)/libnetcdf.so.7.3.0 debian/tmp/$(LIBDIR)/libnetcdf_serial.so.7.3.0
- mv debian/tmp/$(LIBDIR)/libnetcdf.so.7 debian/tmp/$(LIBDIR)/libnetcdf_serial.so.7
- mv debian/tmp/$(LIBDIR)/libnetcdf.so debian/tmp/$(LIBDIR)/libnetcdf_serial.so
- mv debian/tmp-mpi/$(LIBDIR)/libnetcdf.so.7.3.0 debian/tmp/$(LIBDIR)/libnetcdf_mpi.so.7.3.0
- mv debian/tmp-mpi/$(LIBDIR)/libnetcdf.so.7 debian/tmp/$(LIBDIR)/libnetcdf_mpi.so.7
- mv debian/tmp-mpi/$(LIBDIR)/libnetcdf.so debian/tmp/$(LIBDIR)/libnetcdf_mpi.so
- mv debian/tmp-mpi/$(LIBDIR)/libnetcdf.settings debian/tmp/$(LIBDIR)/libnetcdf_mpi.settings
- mv debian/tmp-mpi/$(LIBDIR)/cmake/netCDF debian/tmp/$(LIBDIR)/cmake/netCDF_mpi
- mv debian/tmp/$(LIBDIR)/pkgconfig/netcdf.pc debian/tmp/$(LIBDIR)/pkgconfig/netcdf-serial.pc
- sed -e 's/-lnetcdf/-lnetcdf_mpi/' < debian/tmp-mpi/$(LIBDIR)/pkgconfig/netcdf.pc \
- > debian/tmp/$(LIBDIR)/pkgconfig/netcdf-mpi.pc
+ # install all versions
+ for d in serial mpi pnetcdf ; do \
+ $(MAKE) -C build-$$d install DESTDIR=$(CURDIR)/debian/tmp-$$d ; \
+ mkdir -p debian/tmp/$(LIBDIR)/netcdf/$$d/cmake ; \
+ sed -e 's/-lnetcdf/-lnetcdf_$$d/' < debian/tmp-$$d/$(LIBDIR)/pkgconfig/netcdf.pc \
+ > debian/tmp/$(LIBDIR)/pkgconfig/netcdf-$$d.pc ; \
+ cp debian/tmp-$$d/$(LIBDIR)/libnetcdf.settings debian/tmp/$(LIBDIR)/netcdf/$$d/libnetcdf.settings ; \
+ cp -a debian/tmp-$$d/$(LIBDIR)/cmake/netCDF debian/tmp/$(LIBDIR)/cmake/netCDF_$$d ; \
+ ln -fs $(LIBDIR)/cmake/netCDF_$$d debian/tmp/$(LIBDIR)/netcdf/$$d/cmake/netCDF ; \
+ done
+ # Parallel versions
+ for d in mpi pnetcdf ; do \
+ sed -e 's%@MULTIARCH@%$(DEB_HOST_MULTIARCH)%' < debian/libnetcdf-$$d-dev.postinst.in \
+ > debian/libnetcdf-$$d-dev.postinst ; \
+ mv debian/tmp-$$d/$(LIBDIR)/libnetcdf.so.7.3.0 debian/tmp/$(LIBDIR)/libnetcdf_$$d.so.7.3.0 ; \
+ ln -sf $(LIBDIR)/libnetcdf_$$d.so.7.3.0 debian/tmp/$(LIBDIR)/netcdf/$$d/libnetcdf.so ; \
+ ln -sf libnetcdf_$$d.so.7.3.0 debian/tmp/$(LIBDIR)/libnetcdf_$$d.so.7; \
+ ln -sf libnetcdf_$$d.so.7.3.0 debian/tmp/$(LIBDIR)/libnetcdf_$$d.so; \
+ dh_link -p libnetcdf-$$d-dev . $(LIBDIR)/netcdf/$$d/lib ; \
+ dh_link -p libnetcdf-$$d-dev /usr/include $(LIBDIR)/netcdf/$$d/include ; \
+ done
+ # Serial; one-off only
+ mkdir -p debian/tmp/$(LIBDIR)/pkgconfig debian/tmp/$(LIBDIR)/cmake
+ cp -a debian/tmp-serial/$(LIBDIR)/cmake/netCDF debian/tmp/$(LIBDIR)/cmake/netCDF
+ cp -a debian/tmp-pnetcdf/usr/include debian/tmp/usr
+ cp -a debian/tmp-serial/usr/share debian/tmp/usr
+ cp -a debian/tmp-serial/usr/bin debian/tmp/usr
+ cp debian/tmp-serial/$(LIBDIR)/libnetcdf.so.7.3.0 debian/tmp/$(LIBDIR)
+ ln -sf libnetcdf.so.7.3.0 debian/tmp/$(LIBDIR)/libnetcdf.so.7
+ ln -sf libnetcdf.so.7.3.0 debian/tmp/$(LIBDIR)/libnetcdf.so
+ ln -sf $(LIBDIR)/libnetcdf.so.7.3.0 debian/tmp/$(LIBDIR)/netcdf/serial/libnetcdf.so
$(RM) debian/tmp/usr/share/doc/netCDF/html/jquery.js
+ sed -e 's%@MULTIARCH@%$(DEB_HOST_MULTIARCH)%' < debian/libnetcdf-dev.postinst.in \
+ > debian/libnetcdf-dev.postinst
# Strip RPATH
- #-find $(CURDIR)/debian/tmp/usr/bin -type f -not -name nc-config -exec chrpath --delete {} \;
- #-find $(CURDIR)/debian/tmp/usr/lib -type f -name "*.so*" -exec chrpath --delete {} \;
+ -find $(CURDIR)/debian/tmp/usr/bin -type f -not -name nc-config -exec chrpath --delete {} \;
+ -find $(CURDIR)/debian/tmp/usr/lib -type f -name "*.so*" -exec chrpath --delete {} \;
+ dh_link -p libnetcdf-dev . $(LIBDIR)/netcdf/serial/lib
+ dh_link -p libnetcdf-dev /usr/include $(LIBDIR)/netcdf/serial/include
override_dh_auto_test:
ARGS="--output-on-failure" dh_auto_test --max-parallel=1 || echo "Ignoring test failures"
- #LD_LIBRARY_PATH=$(TOP)/build-serial/liblib $(MAKE) -C build-serial test
- #LD_LIBRARY_PATH=$(TOP)/build-mpi/liblib $(MAKE) -C build-mpi test
+ #LD_LIBRARY_PATH=$(CURDIR)/build-serial/liblib $(MAKE) -C build-serial test
+ #LD_LIBRARY_PATH=$(CURDIR)/build-mpi/liblib $(MAKE) -C build-mpi test
+ #LD_LIBRARY_PATH=$(CURDIR)/build-pnetcdf/liblib $(MAKE) -C build-pnetcdf test
override_dh_installchangelogs:
dh_installchangelogs RELEASE_NOTES.md
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-grass/netcdf.git
More information about the Pkg-grass-devel
mailing list