[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[Pkg-octave-devel] Bug#756689: Bug#756689: octave: [hdf5 transition] please support hdf5 1.8.13 new packaging layout



Gilles Filippini a écrit , Le 10/08/2014 10:37:
> Gilles Filippini a écrit , Le 09/08/2014 17:57:
>> Hi Mike,
>>
>> Sorry about the late answer. Connectivity is flaky on my holidays place.
>>
>> Mike Miller a écrit , Le 08/08/2014 16:22:
>>> On Wed, Aug 6, 2014 at 08:03:14 +0200, Gilles Filippini wrote:
>>>> Thanks for that. In the mean time is it possible for you to upload a
>>>> fixed octave package to unstable to ease the transition?
>>>
>>> I think one of us will get to uploading a fixed octave package soon,
>>> there are other pending changes in git, and we don't want to hold up
>>> the transition.
>>>
>>> I haven't tested building octave rdeps with these patches, but I
>>> assume that's the reason for hdf5-mkoctfile.patch right?. I'm curious
>>> if the change to LDFLAGS is really necessary in the general case, or
>>> is it only there for the one or two packages that intentionally link
>>> to hdf5 themselves? I would think only the include path would be
>>> required for almost all uses of mkoctfile, in which case it could look
>>> more like mkoctfile-mpi.diff (which I think we can actually drop once
>>> the hdf5 transition is done).
>>
>> Thanks for this feedback. I think you're right because I've had to set
>> CPPFLAGS only to build octave rdeps against an unpatched octave. I'll
>> test this ASAP and tell you.
> 
> You were right. I've have to update hdf5-mkoctfile.patch to use INCFLAGS
> instead of CPPFLAGS because the latter is superseded by existing
> CPPFLAGS environment variable.
> 
> Please find attached an updated version of hdf5-mkoctfile.patch. I've
> tested it against the build of dynare which is a rdep of liboctave-dev.

Updated debdiff attached.

I'd appreciate if you could upload these fixes very soon: octave is now
the last package in the way of the transition. The others are to hit
unstable by tomorrow.

If you prefer I upload an NMU please tell me.

Thanks,

_g.

diff -Nru octave-3.8.1/debian/changelog octave-3.8.1/debian/changelog
--- octave-3.8.1/debian/changelog	2014-05-10 10:40:26.000000000 +0200
+++ octave-3.8.1/debian/changelog	2014-08-09 20:10:42.000000000 +0200
@@ -1,3 +1,15 @@
+octave (3.8.1-3.1) unstable; urgency=low
+
+  * Non-maintainer upload.
+  * Support hdf5 1.8.13 new packaging layout.
+  * New patches:
+    - hdf5-flags.patch to fix a couple of makefiles regarding
+      new paths;
+    - hdf5-mkoctfile.patch to fix hdf5 path when building octave
+      modules.
+
+ -- Gilles Filippini <pini@debian.org>  Sat, 09 Aug 2014 20:08:26 +0200
+
 octave (3.8.1-3) unstable; urgency=medium
 
   [ Thomas Weber ]
diff -Nru octave-3.8.1/debian/patches/hdf5-flags.patch octave-3.8.1/debian/patches/hdf5-flags.patch
--- octave-3.8.1/debian/patches/hdf5-flags.patch	1970-01-01 01:00:00.000000000 +0100
+++ octave-3.8.1/debian/patches/hdf5-flags.patch	2014-08-09 20:06:26.000000000 +0200
@@ -0,0 +1,24 @@
+Index: octave-3.8.1/libgui/src/module.mk
+===================================================================
+--- octave-3.8.1.orig/libgui/src/module.mk	2014-03-06 20:37:51.000000000 +0100
++++ octave-3.8.1/libgui/src/module.mk	2014-07-25 17:12:53.028220949 +0200
+@@ -172,6 +172,7 @@
+   $(AM_CPPFLAGS) \
+   @OCTGUI_DLL_DEFS@ \
+   @QT_CPPFLAGS@ \
++  @HDF5_CPPFLAGS@ \
+   -I$(srcdir)/qterminal/libqterminal \
+   -Isrc -I$(srcdir)/src \
+   -I$(srcdir)/src/m-editor \
+Index: octave-3.8.1/libinterp/Makefile.am
+===================================================================
+--- octave-3.8.1.orig/libinterp/Makefile.am	2014-07-25 14:38:24.000000000 +0200
++++ octave-3.8.1/libinterp/Makefile.am	2014-07-25 17:13:10.124810238 +0200
+@@ -22,6 +22,7 @@
+ 
+ ## Search local directories before those specified by the user.
+ AM_CPPFLAGS = \
++  @HDF5_CPPFLAGS@ \
+   -I$(top_srcdir)/liboctave/cruft/misc \
+   -I$(top_srcdir)/liboctave/array \
+   -I$(top_builddir)/liboctave/numeric -I$(top_srcdir)/liboctave/numeric \
diff -Nru octave-3.8.1/debian/patches/hdf5-mkoctfile.patch octave-3.8.1/debian/patches/hdf5-mkoctfile.patch
--- octave-3.8.1/debian/patches/hdf5-mkoctfile.patch	1970-01-01 01:00:00.000000000 +0100
+++ octave-3.8.1/debian/patches/hdf5-mkoctfile.patch	2014-08-10 00:37:10.000000000 +0200
@@ -0,0 +1,14 @@
+Description: Add hdf5 path to INCFLAGS in mkoctfile
+ so that packages build-depending on octave-dev don't have to care.
+Index: octave-3.8.1/src/mkoctfile.in.cc
+===================================================================
+--- octave-3.8.1.orig/src/mkoctfile.in.cc	2014-08-09 20:03:27.000000000 +0200
++++ octave-3.8.1/src/mkoctfile.in.cc	2014-08-10 00:35:23.963925337 +0200
+@@ -123,6 +123,7 @@
+     = "-I" + quote_path (vars["OCTINCLUDEDIR"] + "/..")
+       + " -I" + quote_path (vars["OCTINCLUDEDIR"]);
+ #endif
++  DEFAULT_INCFLAGS += std::string(" ") + %OCTAVE_CONF_HDF5_CPPFLAGS%;
+   if (vars["INCLUDEDIR"] != "/usr/include")
+     DEFAULT_INCFLAGS += " -I" + quote_path (vars["INCLUDEDIR"]);
+ 
diff -Nru octave-3.8.1/debian/patches/series octave-3.8.1/debian/patches/series
--- octave-3.8.1/debian/patches/series	2014-03-09 20:01:54.000000000 +0100
+++ octave-3.8.1/debian/patches/series	2014-08-09 20:06:26.000000000 +0200
@@ -7,3 +7,5 @@
 dblquad-s390x.diff
 hurd_path_max.diff
 always-build-octave-jar.patch
+hdf5-flags.patch
+hdf5-mkoctfile.patch
diff -Nru octave-3.8.1/debian/rules octave-3.8.1/debian/rules
--- octave-3.8.1/debian/rules	2014-05-10 10:40:01.000000000 +0200
+++ octave-3.8.1/debian/rules	2014-08-09 20:06:26.000000000 +0200
@@ -36,6 +36,12 @@
 # libraries, for example the mesa graphics stack which also uses LLVM.
 JIT_FLAG := --disable-jit
 
+# HDF5 paths
+ifneq ($(wildcard /usr/lib/$(DEB_HOST_MULTIARCH)/hdf5/serial/libhdf5.so),)
+  HDF5_FLAGS := --with-hdf5-includedir=/usr/include/hdf5/serial \
+	--with-hdf5-libdir=/usr/lib/$(DEB_HOST_MULTIARCH)/hdf5/serial
+endif
+
 %:
 	dh $@ --with autoreconf --parallel
 
@@ -44,7 +50,7 @@
 
 # override normal dh_auto_configure call to pass OpenMP flag to it (#631831)
 override_dh_auto_configure:
-	dh_auto_configure -- --enable-openmp $(WITH_JAVA_FLAGS) $(JIT_FLAG)
+	dh_auto_configure -- --enable-openmp $(WITH_JAVA_FLAGS) $(JIT_FLAG) $(HDF5_FLAGS)
 
 # dh_auto_test tries to run "make test", so override it
 override_dh_auto_test:

Attachment: signature.asc
Description: OpenPGP digital signature


Reply to: