Thanks Tim,
I merged your patch.
I will restructure my files according to the Debian git policy.
(I am reading it right now).
I added my SSH key so I will get access in less than 1 hour.
The Debian project is really organized, I like that a lot !
For ray debian/2.1.0-3, I will do these 4 things:
1. Add Tim Booth for the packaging copyright
2 Restore HAVE_LIBBZ2=y and HAVE_LIBZ=y somewhere
Otherwise, the code that uses libz and libbz2 are not compiled at all.
Is there a better place than the rules file ?
Maybe I can add a patch against the Makefile directly ?
What do you think ?
3. Split in 3 packages: ray (Ray + man), ray-doc (Documentation directories),
ray-extra (scripts)
Ray really just needs mpi-default-bin and bz2 and z libraries for the runtime.
The provided scripts should go in ray-extra.
As I understand, I can put several packages in the control file,
and possibly tell in the rules file where each file should go.
Is that right ?
4. move man.1 in a patch in patches
Just to be pedantic to what is provided in the upstream tarball.
On 11/02/2012 11:31 AM, Tim Booth wrote:
Hi Sébastien,
Ok, you seem to have got a handle on Debian packaging without much of a
problem. I've made some tweaks to the package (see the changelog in the
attached patch).
The main issue was that compilation failed on Ubuntu at the linking
stage:
---
tbooth@balisaur[ray_2.1.0]mpicxx -Wl,-Bsymbolic-functions -Wl,-z,relro -lz
-lbz2 code/TheRayGenomeAssembler.a RayPlatform/libRayPlatform.a -o Ray
code/TheRayGenomeAssembler.a(FastqGzLoader.o): In function
`FastqGzLoader::open(std::basic_string<char, std::char_traits<char>,
std::allocator<char> >, int)':
FastqGzLoader.cpp:(.text+0x39): undefined reference to `gzopen'
FastqGzLoader.cpp:(.text+0x6f): undefined reference to `gzgets'
FastqGzLoader.cpp:(.text+0x8d): undefined reference to `gzclose'
FastqGzLoader.cpp:(.text+0x9a): undefined reference to `gzopen'
code/TheRayGenomeAssembler.a(FastqGzLoader.o): In function
`FastqGzLoader::load(int, ArrayOfReads*, MyAllocator*, int)':
FastqGzLoader.cpp:(.text+0x15e): undefined reference to `gzgets'
FastqGzLoader.cpp:(.text+0x1b4): undefined reference to `gzclose'
code/TheRayGenomeAssembler.a(BzReader.o): In function
`BzReader::readLine(char*, int)':
BzReader.cpp:(.text+0x82a): undefined reference to `BZ2_bzRead'
BzReader.cpp:(.text+0x8f5): undefined reference to `BZ2_bzReadOpen'
BzReader.cpp:(.text+0x9fa): undefined reference to `BZ2_bzReadGetUnused'
BzReader.cpp:(.text+0xa27): undefined reference to `BZ2_bzReadClose'
collect2: ld returned 1 exit status
---
But this version works - ie. simply putting the $LD_FLAGS after the input files
on line 189 of the Makefile:
tbooth@balisaur[ray_2.1.0]mpicxx -Wl,-Bsymbolic-functions -Wl,-z,relro
code/TheRayGenomeAssembler.a RayPlatform/libRayPlatform.a -lz -lbz2 -o Ray
For now I added a patch (see debian/patches) but do you think you want
to make the change in the main source code or does that break something
else?
Cheers,
TIM
On Fri, 2012-11-02 at 03:55 +0000, Sébastien Boisvert wrote:
Hello Tim,
Thank you for your wise guidance regarding Debian package preparation.
I successfully created a Debian package for Ray 2.1.0.
You will find packages here in a git repository:
https://github.com/sebhtml/ray-debian-package
I installed my .deb with dpkg -i, tested it with some data,
checked what's in it with dpkg -L ray|less, and finally removed it
from my virtual machines (i386 and amd64).
I will add a sparc package tomorrow.
Can you review what I did ?
Sébastien
--
Sent from my IBM Blue Gene/Q
--
To UNSUBSCRIBE, email to debian-med-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/5093f7ef.3050...@ulaval.ca