Package: phast / 1.7+dfsg-2

Metadata

Package Version Patches format
phast 1.7+dfsg-2 3.0 (quilt)

Patch series

view the series file
Patch File delta Description
clapack.patch | (download)

include/phast/external_libs.h | 6 2 + 4 - 0 !
src/lib/Makefile | 24 2 + 22 - 0 !
src/lib/base/phast_eigen.c | 6 3 + 3 - 0 !
src/lib/base/phast_markov_matrix.c | 7 4 + 3 - 0 !
src/lib/base/phast_matrix.c | 5 3 + 2 - 0 !
src/make-include.mk | 6 1 + 5 - 0 !
6 files changed, 15 insertions(+), 39 deletions(-)

 use debian package for blas/lapack (instead of obsolete clapack)
 - Use -lblas instead of -lblaswr
 - Use -ltmglib instead of -ltmg
 - Do not use f2c, not needed
 - Introduce prototypes for LAPACK functions used in the package
   (those are documented in the manpages from the liblapack-doc package)
do_not_install_to_opt.patch | (download)

src/Makefile | 4 2 + 2 - 0 !
1 file changed, 2 insertions(+), 2 deletions(-)

 packages should not install anything to /opt


use_debian_packaged_libpcre.patch | (download)

src/lib/Makefile | 2 1 + 1 - 0 !
src/make-include.mk | 4 2 + 2 - 0 !
2 files changed, 3 insertions(+), 3 deletions(-)

 use debian packaged libpcre


use_debian_packaged_help2man.patch | (download)

src/Makefile | 4 2 + 2 - 0 !
1 file changed, 2 insertions(+), 2 deletions(-)

 debian packaged help2man creates better results


hardening.patch | (download)

src/make-include.mk | 4 2 + 2 - 0 !
1 file changed, 2 insertions(+), 2 deletions(-)

 propagate hardening options
 Later edited to add support for CPPFLAGS.  This change modifies the
 build infrastructure for needs that are somewhat Debian specific, hence
 forwarding not needed.


pcre2.patch | (download)

include/phast/stringsplus.h | 20 9 + 11 - 0 !
src/dless/dlessP.c | 2 1 + 1 - 0 !
src/lib/base/phast_misc.c | 2 1 + 1 - 0 !
src/lib/base/phast_stringsplus.c | 39 22 + 17 - 0 !
src/lib/feature/phast_bed.c | 2 1 + 1 - 0 !
src/lib/feature/phast_category_map.c | 10 5 + 5 - 0 !
src/lib/feature/phast_gff.c | 6 3 + 3 - 0 !
src/lib/motif/phast_tfbs.c | 6 3 + 3 - 0 !
src/lib/msa/phast_local_alignment.c | 2 1 + 1 - 0 !
src/lib/msa/phast_msa.c | 6 3 + 3 - 0 !
src/lib/msa/phast_multi_msa.c | 6 3 + 3 - 0 !
src/lib/msa/phast_sufficient_stats.c | 2 1 + 1 - 0 !
src/lib/phylo/phast_phylo_p_print.c | 2 1 + 1 - 0 !
src/make-include.mk | 2 1 + 1 - 0 !
src/prequel/phast_pbs_code.c | 2 1 + 1 - 0 !
src/util/msa_view.c | 2 1 + 1 - 0 !
16 files changed, 57 insertions(+), 54 deletions(-)

 port from pcre3 to pcre2
Bug-Debian: https://bugs.debian.org/1000000
gcc 14.patch | (download)

include/phast/stringsplus.h | 2 1 + 1 - 0 !
src/lib/base/phast_stringsplus.c | 10 5 + 5 - 0 !
2 files changed, 6 insertions(+), 6 deletions(-)

 fix multiple issues gone fatal with gcc 14.
 This patch casts a few types to nudge several PCREs to build properly,
 given a number of mismatches or confusions between pcre2_code and
 pcre2_compile_context.  The most notable change is probably the
 modified signature of str_re_new, as otherwise the code would have to
 include a huge amount of type casts for each and every call of
 str_re_new.
 .
make.patch | (download)

src/lib/base/Makefile | 2 2 + 0 - 0 !
src/lib/feature/Makefile | 2 2 + 0 - 0 !
src/lib/hmm/Makefile | 2 2 + 0 - 0 !
src/lib/motif/Makefile | 2 2 + 0 - 0 !
src/lib/msa/Makefile | 2 2 + 0 - 0 !
src/lib/phylo/Makefile | 2 2 + 0 - 0 !
src/lib/phylo_hmm/Makefile | 2 2 + 0 - 0 !
src/lib/rphast/Makefile | 2 2 + 0 - 0 !
8 files changed, 16 insertions(+)

 force sequential access to libphast.a.
 When building phast using make's parallel capabilities, the build
 almost always fails because the many subdirectories of src/lib/*/ are
 trying to add objects to the libphast.a static library at the same
 time, resulting in corruption and weird error messages like:
 .
 	gcc  -L/<<PKGBUILDDIR>>/src/dless/../../lib  -o /<<PKGBUILDDIR>>/src/dless/../../bin/dless dless.o phast_bd_phylo_hmm.o -lphast -llapack -ltmglib -lblas -lc -lm -lpcre2-8 -Wl,-z,relro -Wl,-z,now 
 	/usr/bin/ld: /<<PKGBUILDDIR>>/src/dless/../../lib/libphast.a: error adding symbols: malformed archive
 	collect2: error: ld returned 1 exit status
 .
 Placing .NOTPARALLEL pseudo targets at strategic locations looks to
 reliably resolve the problem while preserving otherwise some level of
 parallelism where the library is not involved.  Checkout the GNU Make
 manual's chapter about [Disabling Parallel Execution] for further
 details.
 .
 [Disabling Parallel Execution]: https://www.gnu.org/software/make/manual/html_node/Parallel-Disable.html