Your message dated Wed, 23 Jan 2019 17:19:33 +0000
with message-id <[email protected]>
and subject line Bug#920240: fixed in abyss 2.1.5-4
has caused the Debian Bug report #920240,
regarding abyss fails to build on hurd due to missing header file
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)


-- 
920240: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=920240
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Source: abyss
Version: 2.1.5-3
Severity: important

SUMMARY: abyss fails to build on hurd due to missing header file


DISCOVERY:

Build log of abyss-2.1.5-3 on mahler.debian.net (2019-01-09 22:47:19):

https://buildd.debian.org/status/fetch.php?pkg=abyss&arch=hurd-i386&ver=2.1.5-3&stamp=1547074039&raw=0


DESCRIPTION:

Abyss-2.1.5-3 gives the build error:

../Common/MemoryUtil.h:11:11: fatal error: mach/task.h: No such file or 
directory

It seems that this is due to an out-of-date usage of mach include
files and possibly also linking with mach.


CONTEXT:

On the exodar GNU/hurd emulation:

$ uname -a

GNU exodar 0.9 GNU-Mach 1.8+git20181103-486-dbg/Hurd-0.9 i686-AT386 GNU

$ cat /proc/hostinfo

Basic info:
max_cpus        =          1    /* max number of cpus possible */
avail_cpus      =          1    /* number of cpus now available */
memory_size     = 3221151744    /* size of memory in bytes */
cpu_type        =         19    /* cpu type */
cpu_subtype     =          1    /* cpu subtype */

Scheduling info:
min_timeout     =         10    /* minimum timeout in milliseconds */
min_quantum     =        100    /* minimum quantum in milliseconds */

Load info:
avenrun[3]      = { 0.10, 0.28, 0.60 }
mach_factor[3]  = { 0.89, 0.81, 0.64 }

$ dpkg -l |egrep "abyss|gcc|g\+\+"
ii  g++                                      4:8.2.0-2                   
hurd-i386    GNU C++ compiler
ii  g++-8                                    8.2.0-14                    
hurd-i386    GNU C++ compiler
ii  gcc                                      4:8.2.0-2                   
hurd-i386    GNU C compiler
ii  gcc-8                                    8.2.0-14                    
hurd-i386    GNU C compiler
ii  gcc-8-base:hurd-i386                     8.2.0-14                    
hurd-i386    GCC, the GNU Compiler Collection (base package)
ii  libgcc-8-dev:hurd-i386                   8.2.0-14                    
hurd-i386    GCC support library (development files)
ii  libgcc1:hurd-i386                        1:8.2.0-14                  
hurd-i386    GCC support library


REPRODUCE:

On exodar:

$ apt-get source abyss

$ apt-get build-dep abyss

$ cd abyss-2.1.5

$ fakeroot debian/rules binary

...
g++ -Wall -Wextra -fopenmp -g -O2 
-fdebug-prefix-map=/home/boud-guest/abyss-2.1.5=. -fstack-protector-strong 
-Wformat -Werror=format-security -DGTEST_USE_OWN_TR1_TUPLE=0  -Wl,-z,relro 
-Wl,-z,now -o abyss-align abyss_align-align.o ./libalign.a 
../dialign/libdialign.a ../DataLayer/libdatalayer.a ../Common/libcommon.a -ldl 
-lm
g++ -DHAVE_CONFIG_H -I. -I..  -I.. -I../Common -I../DataLayer 
-I/home/boud-guest/abyss-2.1.5     -Wdate-time -D_FORTIFY_SOURCE=2 
-isystem/home/boud-guest/abyss-2.1.5/boost_1_56_0 -Wall -Wextra -fopenmp -g -O2 
-fdebug-prefix-map=/home/boud-guest/abyss-2.1.5=. -fstack-protector-strong 
-Wformat -Werror=format-security -DGTEST_USE_OWN_TR1_TUPLE=0 -c -o 
abyss_mergepairs-mergepairs.o `test -f 'mergepairs.cc' || echo 
'./'`mergepairs.cc
g++ -Wall -Wextra -fopenmp -g -O2 
-fdebug-prefix-map=/home/boud-guest/abyss-2.1.5=. -fstack-protector-strong 
-Wformat -Werror=format-security -DGTEST_USE_OWN_TR1_TUPLE=0  -Wl,-z,relro 
-Wl,-z,now -o abyss-mergepairs abyss_mergepairs-mergepairs.o ./libalign.a 
../dialign/libdialign.a ../DataLayer/libdatalayer.a ../Common/libcommon.a -ldl 
-lm
make[4]: Leaving directory '/home/boud-guest/abyss-2.1.5/Align'
Making all in ABYSS
make[4]: Entering directory '/home/boud-guest/abyss-2.1.5/ABYSS'
g++ -DHAVE_CONFIG_H -I. -I..  -I.. -I/home/boud-guest/abyss-2.1.5     
-Wdate-time -D_FORTIFY_SOURCE=2 
-isystem/home/boud-guest/abyss-2.1.5/boost_1_56_0 -Wall -Wextra -g -O2 
-fdebug-prefix-map=/home/boud-guest/abyss-2.1.5=. -fstack-protector-strong 
-Wformat -Werror=format-security -DGTEST_USE_OWN_TR1_TUPLE=0 -c -o 
ABYSS-abyss.o `test -f 'abyss.cc' || echo './'`abyss.cc
In file included from ../Assembly/DBG.h:7,
                 from ../Assembly/SequenceCollection.h:22,
                 from abyss.cc:5:
../Common/MemoryUtil.h:11:11: fatal error: mach/task.h: No such file or 
directory
 # include <mach/task.h> // for task_info
           ^~~~~~~~~~~~~
compilation terminated.
Makefile:410: recipe for target 'ABYSS-abyss.o' failed
make[4]: *** [ABYSS-abyss.o] Error 1


HYPOTHESES FOR FIXING:

Without knowing details of hurd/mach:

(1) My first guess was that <mach/task_info.h> should be included instead of 
<mach/task.h>,
but some other updates look like they're needed too. Making this replacement
in Common/MemoryUtil.h and changing nothing else gives:

g++ -Wall -Wextra -g -O2 -fdebug-prefix-map=/home/boud-guest/abyss-2.1.5=. 
-fstack-protector-strong -Wformat -Werror=format-security 
-DGTEST_USE_OWN_TR1_TUPLE=0  -Wl,-z,relro -Wl,-z,now -o ABYSS ABYSS-abyss.o 
../DataBase/libdb.a -lsqlite3 -ldl -lm  ../Assembly/libassembly.a 
../DataLayer/libdatalayer.a ../Common/libcommon.a -ldl -lm
/usr/bin/ld: ABYSS-abyss.o: in function `getMemoryUsage':
./ABYSS/../Common/MemoryUtil.h:22: undefined reference to `task_info(unsigned 
long, int, int*, unsigned int*)'
collect2: error: ld returned 1 exit status
Makefile:372: recipe for target 'ABYSS' failed
make[4]: *** [ABYSS] Error 1


(2) Trying <mach.h> instead of both <mach/mach.h> and <mach/task.h>, and
putting '__task_info' instead of 'task_info', with both of these changes
in Common/MemoryUtil.h and modifying no other files, gives:

g++ -Wall -Wextra -g -O2 -fdebug-prefix-map=/home/boud-guest/abyss-2.1.5=. 
-fstack-protector-strong -Wformat -Werror=format-security 
-DGTEST_USE_OWN_TR1_TUPLE=0  -Wl,-z,relro -Wl,-z,now -o ABYSS ABYSS-abyss.o 
../DataBase/libdb.a -lsqlite3 -ldl -lm  ../Assembly/libassembly.a 
../DataLayer/libdatalayer.a ../Common/libcommon.a -ldl -lm
/usr/bin/ld: ABYSS-abyss.o: in function `getMemoryUsage':
./ABYSS/../Common/MemoryUtil.h:22: undefined reference to `__task_info(unsigned 
long, int, int*, unsigned int*)'
collect2: error: ld returned 1 exit status
Makefile:372: recipe for target 'ABYSS' failed
make[4]: *** [ABYSS] Error 1


(3) It looks like including only <mach.h> should automatically include
/usr/include/mach/mach_interface.h>, which includes a prototype
for

kern_return_t __task_info( ... )

but g++ doesn't find this when linking. Does g++ have something missing when 
linking
to code created with mach-specific extensions?



COMMENT:

Since this software looks like it caters specifically to Mach, it would be a 
pity
not to update this to the current recommended usage of Mach.

--- End Message ---
--- Begin Message ---
Source: abyss
Source-Version: 2.1.5-4

We believe that the bug you reported is fixed in the latest version of
abyss, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to [email protected],
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Andreas Tille <[email protected]> (supplier of updated abyss package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing [email protected])


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Format: 1.8
Date: Wed, 23 Jan 2019 15:49:21 +0100
Source: abyss
Binary: abyss
Architecture: source
Version: 2.1.5-4
Distribution: unstable
Urgency: medium
Maintainer: Debian Med Packaging Team 
<[email protected]>
Changed-By: Andreas Tille <[email protected]>
Description:
 abyss      - de novo, parallel, sequence assembler for short reads
Closes: 920240
Changes:
 abyss (2.1.5-4) unstable; urgency=medium
 .
   * Fix build on hurd due to missing header file (thanks for the patch
     to Samuel Thibault <[email protected]>)
     Closes: #920240
   * debhelper 12
Checksums-Sha1:
 86c5a13e1c7500e1e8ec6d7021799e3176b30dcf 2313 abyss_2.1.5-4.dsc
 e5cb0962e58f58f1aaa25764c04aef12fe1d9e02 757780 abyss_2.1.5-4.debian.tar.xz
Checksums-Sha256:
 7c7a54ba67ca38c9e8465e29eb7763b2236ada488b53cce0bcb2d85bba3aa4ac 2313 
abyss_2.1.5-4.dsc
 003c2346218463538b40077faedda77349ee3456e2e55f12dd4d561e6ca096aa 757780 
abyss_2.1.5-4.debian.tar.xz
Files:
 f57b0fdb9e5e8db62d09cfdb31d38733 2313 science optional abyss_2.1.5-4.dsc
 7dcab806e7eff6c265f31374be430874 757780 science optional 
abyss_2.1.5-4.debian.tar.xz

-----BEGIN PGP SIGNATURE-----

iQJFBAEBCAAvFiEE8fAHMgoDVUHwpmPKV4oElNHGRtEFAlxIgYwRHHRpbGxlQGRl
Ymlhbi5vcmcACgkQV4oElNHGRtHXRA//fVn8V/Q0/q93WGVyRJ9l7YwmrwAXIAum
JRQgGOobt/fJPf7KdkZm+mDaFU9LrNR7GOdIBSYML8hxlYc2T+qJS8GuyQGGZzph
RhfdTNFRIxWNBngoioqtr3+yo4DVo75XVhxdd1czdqaug5f7FqTfiA01nsqd+s0y
nWC9UxiLMMpUBMVfMBfFcclklbgkqF2uL86lebrF4BQzGowpQq/JHMNqbNsxle5L
Zxq2XeKu/aX6k1Vet6x6JHsMozVZSZO61Ypz7RxMNje7L7vttAOp+A+t3DIAqbCc
YYnvqXtx7ELiclA2QRMdSAbfkXYe3zotj5NzZZlV9gceDdrqH+YZf2cOuLoUuJZZ
gt5hG0DWMl09D0QihzamRY7Udl9y64Mk5KIeW6FPC87OwA59FqgPPVBTIgLLhONQ
GtJxKQWd5ZQJDBsnZw22YVfCaH2wsBOTEj2FtCQq2lqsR/fAtra+4BVFlDK6MFsD
31puf4o9AxZj9kfx/CQIEcVbhQJFB/qDj/T6Ws2b8CkVIg0USR01oqvWru56WAun
h7PKkzhYDgcCTVr+EMOSFcLL8NG7F0/91z1aSy8oIj7bi2m4iDNG9daIZhpJP2/B
9ouPRaeG5NC1jbnI6TIkupELbbBoZIbZFYJ8CRZJYA/gSytkV2UJdtHz7jSzxbbh
T30e3XaRHbg=
=tMPy
-----END PGP SIGNATURE-----

--- End Message ---

Reply via email to