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

Convenience copies of klib (Was: pysam dependencies)



Hi,

On Sat, Dec 22, 2012 at 10:01:39AM +0100, Andreas Tille wrote:
> > It looks like klib doesn't believe in don't-repeat-yourself as they don't provide a makefile and  their readme encourages people to just copy klib files into their own software.
> 
> Uhmm, this does look ugly.  They do not even seem to maintain a homepage.
> I'd definitely consider creating a separate library - my guess is that
> this code might be contained in other scientific packages inside Debian.

I was wondering how many source packages inside Debian might contain such 
convenience copies of klib and so I did:


sudo apt-file -a source update
git clone git://github.com/attractivechaos/klib.git
for ksource in `ls klib/*.c | sed 's?klib/??'` ; do
    # apt-file -a source search $ksource | grep "/${ksource}$"
    # remark: while `apt-file -a source` should be able to deal with
    #         this there seems to be a problem which I reported on
    #         debian-devel list
    zgrep -w ${ksource} /var/cache/apt/apt-file/*{unstable,experimental}*Contents-source.gz | \
        grep -v "include/*linux"
done

/var/cache/apt/apt-file/http.debian.net_debian_dists_unstable_main_Contents-source.gz:bgzf.c    samtools,tabix
/var/cache/apt/apt-file/http.debian.net_debian_dists_unstable_main_Contents-source.gz:src/external/samtools-0.1.18/bgzf.c       genometools
/var/cache/apt/apt-file/http.debian.net_debian_dists_unstable_main_Contents-source.gz:bgzf.h    samtools,tabix
/var/cache/apt/apt-file/http.debian.net_debian_dists_unstable_main_Contents-source.gz:src/external/samtools-0.1.18/bgzf.h       genometools
/var/cache/apt/apt-file/http.debian.net_debian_dists_unstable_main_Contents-source.gz:src/libscotch/kgraph.h    scotch
/var/cache/apt/apt-file/http.debian.net_debian_dists_unstable_main_Contents-source.gz:c_src/khash.h     erlang-bitcask
/var/cache/apt/apt-file/http.debian.net_debian_dists_unstable_main_Contents-source.gz:khash.h   bwa,samtools,tabix
/var/cache/apt/apt-file/http.debian.net_debian_dists_unstable_main_Contents-source.gz:pandas/src/khash.h        pandas
/var/cache/apt/apt-file/http.debian.net_debian_dists_unstable_main_Contents-source.gz:src/external/samtools-0.1.18/khash.h      genometools
/var/cache/apt/apt-file/http.debian.net_debian_dists_unstable_main_Contents-source.gz:src/khash.h       ncdu
/var/cache/apt/apt-file/http.debian.net_debian_dists_experimental_main_Contents-source.gz:pandas/src/khash.h    pandas
/var/cache/apt/apt-file/http.debian.net_debian_dists_experimental_main_Contents-source.gz:src/khash.h   libgit2,ncdu
/var/cache/apt/apt-file/http.debian.net_debian_dists_unstable_main_Contents-source.gz:common/klist.h    ladish
/var/cache/apt/apt-file/http.debian.net_debian_dists_unstable_main_Contents-source.gz:klist.h   samtools
/var/cache/apt/apt-file/http.debian.net_debian_dists_unstable_main_Contents-source.gz:src/external/samtools-0.1.18/klist.h      genometools
/var/cache/apt/apt-file/http.debian.net_debian_dists_unstable_main_Contents-source.gz:src/klist.h       dillo
/var/cache/apt/apt-file/http.debian.net_debian_dists_unstable_main_Contents-source.gz:knetfile.c        samtools,tabix
/var/cache/apt/apt-file/http.debian.net_debian_dists_unstable_main_Contents-source.gz:src/external/samtools-0.1.18/knetfile.c   genometools
/var/cache/apt/apt-file/http.debian.net_debian_dists_unstable_main_Contents-source.gz:knetfile.h        samtools,tabix
/var/cache/apt/apt-file/http.debian.net_debian_dists_unstable_main_Contents-source.gz:src/external/samtools-0.1.18/knetfile.h   genometools
/var/cache/apt/apt-file/http.debian.net_debian_dists_unstable_main_Contents-source.gz:contrib/shuffleSequences_fasta/kseq.h     velvet
/var/cache/apt/apt-file/http.debian.net_debian_dists_unstable_main_Contents-source.gz:kseq.h    bwa,samtools,tabix
/var/cache/apt/apt-file/http.debian.net_debian_dists_unstable_main_Contents-source.gz:src/external/samtools-0.1.18/kseq.h       genometools
/var/cache/apt/apt-file/http.debian.net_debian_dists_unstable_main_Contents-source.gz:include/stxxl/bits/algo/ksort.h   libstxxl
/var/cache/apt/apt-file/http.debian.net_debian_dists_unstable_main_Contents-source.gz:ksort.h   bwa,samtools,tabix
/var/cache/apt/apt-file/http.debian.net_debian_dists_unstable_main_Contents-source.gz:src/external/samtools-0.1.18/ksort.h      genometools
/var/cache/apt/apt-file/http.debian.net_debian_dists_unstable_main_Contents-source.gz:kstring.c bwa,samtools,tabix
/var/cache/apt/apt-file/http.debian.net_debian_dists_unstable_main_Contents-source.gz:src/external/samtools-0.1.18/kstring.c    genometools
/var/cache/apt/apt-file/http.debian.net_debian_dists_unstable_main_Contents-source.gz:kstring.h bwa,samtools,tabix
/var/cache/apt/apt-file/http.debian.net_debian_dists_unstable_main_Contents-source.gz:src/external/samtools-0.1.18/kstring.h    genometools
/var/cache/apt/apt-file/http.debian.net_debian_dists_unstable_main_Contents-source.gz:ksw.c     bwa
/var/cache/apt/apt-file/http.debian.net_debian_dists_unstable_main_Contents-source.gz:ksw.h     bwa
/var/cache/apt/apt-file/http.debian.net_debian_dists_unstable_main_Contents-source.gz:kvec.h    bwa
/var/cache/apt/apt-file/http.debian.net_debian_dists_unstable_main_Contents-source.gz:pandas/src/kvec.h pandas
/var/cache/apt/apt-file/http.debian.net_debian_dists_experimental_main_Contents-source.gz:pandas/src/kvec.h     pandas


So besides samtools and tabix we find copies of klib files in bwa and
genometools contains a full convenience copy of samtools which in turn
also has copies of klib files.  I tend to assume (checking will follow)
that the other hits (I just excluded some linux kernel includes that are
also matching the quite gerneric file names) are false positives and so
all these packages are in Debian Med team scope and we can (and should)
somehow internally deal with this.

IMHO we should at some point in time end up with a libklib<soversion>
libklib-dev package pair and make the other packages build using this.

Kind regards

      Andreas.

-- 
http://fam-tille.de


Reply to: