[Debian-science-sagemath] Package cryptominisat, an optional dependency of SageMath

Ximin Luo infinity0 at debian.org
Sat Aug 11 08:20:00 BST 2018


More things:

d/control:
- explicit Depends: libcryptominisat5-5.6 (= ${binary:Version}) is not necessary, it should be automatically added by ${shlibs:Depends}.
- same for libboost-program-options1.62.0

d/rules:
- you want $(DEB_HOST_MULTIARCH) instead of ${DEB_TARGET_MULTIARCH}, this is an unfortunate consequence of GCC cross-compiling terminology where
  - "host" means "the target/foreign architecture that the compiled code runs on",
  - "build" means "the host/native machine running the build",
  - "target" means "the target of the compiler that you're compiling" (only relevant when building a cross-compiler)
- you need to include /usr/share/dpkg/architecture.mk for $(DEB_HOST/TARGET_*) to actually work
- override_dh_auto_install is unnecessary, the other debhelper tools already set the prefix to /usr for all buildsystems and addons

d/lib*-dev.links:
- dh-exec should be unnecessary, you already pass -DCMAKE_LIBRARY_ARCHITECTURE to cmake, remove this whole file and instead add /usr/lib/*/lib*.so (which is cmake already creates as a relative symlink) to the corresponding lib*-dev.install file. This didn't work before because you didn't include /usr/share/dpkg/architecture.mk in d/rules. Don't forget to drop dh-exec from d/control Build-Depends.

Your package FTBFS for me, there is some symbols mismatch:

dpkg-gensymbols: warning: debian/libcryptominisat5-5.6/DEBIAN/symbols doesn't match completely debian/libcryptominisat5-5.6.symbols
--- debian/libcryptominisat5-5.6.symbols (libcryptominisat5-5.6_5.6.4+dfsg.1-1_amd64)
+++ dpkg-gensymbolsk7oqn0	2018-08-11 00:14:36.288737896 -0700
@@ -8,13 +8,13 @@
  _Z4calcPKSt6vectorIN5CMSat3LitESaIS1_EEbPNS0_16CMSatPrivateDataEb at Base 5.6.3
  _Z5fromcPK5c_Lit at Base 5.6.3
  _Z5fromcPK7c_lbool at Base 5.6.3
- _ZN11MyOccSorterclERKN5CMSat7WatchedES3_ at Base 5.6.3
- _ZN12StreamBufferIP8_IO_FILE2FNE8skipLineEv at Base 5.6.3
+#MISSING: 5.6.4+dfsg.1-1# _ZN11MyOccSorterclERKN5CMSat7WatchedES3_ at Base 5.6.3
+#MISSING: 5.6.4+dfsg.1-1# _ZN12StreamBufferIP8_IO_FILE2FNE8skipLineEv at Base 5.6.3
[..]
dh_makeshlibs: failing due to earlier errors
debian/rules:7: recipe for target 'binary' failed
make: *** [binary] Error 2

X

Ximin Luo:
> Hey Julian, thanks for doing this.
> 
> Did you have a specific reason for choosing the library package naming scheme libcryptominisat5-5.6 and libcryptominisat5-5.6-dev? Common Debian convention would be to call the packages lib${NAME}${SOVERSION} and lib${NAME}-dev, so it would normally be libcryptominisat5.6 and libcryptominisat-dev.
> 
> See https://www.debian.org/doc/debian-policy/ch-sharedlibs.html for details.
> 
> X
> 
> Julian Rüth:
>> Hello,
>>
>> I just uploaded my cryptominisat package to
>> https://mentors.debian.net/package/cryptominisat.
>>
>> I tried it out locally and it seems to work fine. I am now looking for a
>> sponsor. If somebody wants to have a look that would be great!
>>
>> thanks,
>>
>> julian
>>
>> * Julian Rüth <julian.rueth at fsfe.org> [2018-08-04 02:11:28 +0200]:
>>
>>> Hello,
>>>
>>> I just created ITP #905391 to package cryptominisat, a SAT solver that
>>> is an optional SageMath dependency.
>>>
>>> I started packaging cryptominisat here
>>> https://salsa.debian.org/saraedum-guest/cryptominisat. I had a few minor
>>> patches that upstream has already included so I am currently waiting for
>>> the next release so I can drop a few remaining TODOs from the debian/
>>> directory.
>>>
>>> Currently cryptominisat builds and lintian is happy but I have not
>>> tested that the resulting packages actually work. Anyway, if somebody
>>> wants to have a look already and give some feedback that would be great
>>> :)
>>>
> 


-- 
GPG: ed25519/56034877E1F87C35
GPG: rsa4096/1318EFAC5FBBDBCE
https://github.com/infinity0/pubkeys.git



More information about the Debian-science-sagemath mailing list