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

Bug#962640: RFS: zmat/0.9.8 [RFS] -- a portable C-library and Octave toolbox for data compression



On 6/21/20 12:16 AM, Boyuan Yang wrote:
After all the previous reviews and changes and base on the current
version you provide at https://mentors.debian.net/package/zmat, I think
there are several minor issues plus one last major issue. I opted to
make fixes on minor issues and list the diff here. Please consider
applying the diff.


hi Boyuan

thank you so much for the detailed feedback - should have updated you in this thread -

Rafael Laboissière (CCed) from the Debian octave group has been helping me finalizing the package (among a few others), and it is now updated at

https://salsa.debian.org/pkg-octave-team/zmat

the discussion thread can be found at

https://lists.debian.org/debian-octave/2020/06/threads.html#00000

your feedback #1/2 have been fixed by Rafael, and I will fix #3 below.

also thanks for the log - Rafael also told me the building had failed, but it worked ok on my machine (my debhelper-compat is 12, he was using 13), see my log

https://lists.debian.org/debian-octave/2020/06/msg00020.html


your attached log is very helpful, it appears that the "build-arch" target was not executed (which calls build-static to create libzmat.a and build-mex to create zipmat.mex), see

https://salsa.debian.org/pkg-octave-team/zmat/-/blob/master/debian/rules#L9

are you aware any support change w.r.t. build-arch in compat level 13? or if you see any issue with my rules? (still pretty new to the rules file).

much appreciated

Qianqian


Key points:

1. The suite name in debian/changelog file will need to be set from
UNRELEASED to unstable when it's ready for upload.
2. There is no need to explicitly list out Depends: debhelper when
Depends: debhelper-compat exists since debhelper will provide package
"debhelper-compat".
3. There is no need to explicitly list out library dependency for your
libraries. Explicitly listing them out is tedious and error-prone.
Those library names will be automatically derived and generated by
dh_shlibdeps(1) during the build process and emerge from the
${shlibs:Depends} substitution marker.


diff --git a/debian/changelog b/debian/changelog
index 4beb2b1..6cd6b7c 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,4 +1,4 @@
-zmat (0.9.8-1) UNRELEASED; urgency=medium
+zmat (0.9.8-1) unstable; urgency=medium
 
   * Initial release. (Closes: #962603)
 
diff --git a/debian/control b/debian/control
index 8004473..754dcca 100644
--- a/debian/control
+++ b/debian/control
@@ -3,13 +3,13 @@ Maintainer: Qianqian Fang <fangqq@gmail.com>
 Section: libs
 Priority: optional
 Standards-Version: 4.5.0
-Build-Depends: debhelper (>= 8.1.3~), debhelper-compat (= 12), liblz4-
dev, zlib1g-dev, dh-octave
+Build-Depends: debhelper-compat (= 12), liblz4-dev, zlib1g-dev, dh-
octave
 Homepage: https://github.com/fangq/zmat
 
 Package: libzmat1
 Architecture: any
 Multi-Arch: same
-Depends: zlib1g, liblz4-1, ${shlibs:Depends}, ${misc:Depends}
+Depends: ${shlibs:Depends}, ${misc:Depends}
 Provides: libzmat1
 Description: compression library - runtime
  ZMat is a portable C library to enable easy-to-use data compression
@@ -35,7 +35,7 @@ Package: octave-zmat
 Section: science
 Architecture: any
 Multi-Arch: same
-Depends: zlib1g, liblz4-1, ${shlibs:Depends}, ${octave:Depends},
${misc:Depends}
+Depends: ${shlibs:Depends}, ${octave:Depends}, ${misc:Depends}
 Description: in-memory data compression for Octave
  ZMat is a portable mex function to enable
zlib/gzip/lzma/lzip/lz4/lz4hc
  based data compression/decompression and base64 encoding/decoding
support


========================

However, that is not enough: the major issue is that your package
current fails to build from source within a clean chroot environment. I
have attached the full buildlog in the attachment. It seems that the
error comes from the missing lib/libzmat.a library. I'm curious about
how you planned to generate the static library. It seems that the
Makefile does not contain related instructions. There are several
STATIC keywords in CMakeLists.txt but you did not list cmake in the
build-dependency (so cmake won't be available during building) and did
not invoke cmake anywhere in debian/rules as well. Please consider
fixing this issue.


Reply to: