Skip to content
GitLab
Explore
Sign in
Register
Commits on Source (4)
enable float precisionpatch
· e6a24d17
Michael R. Crusoe
authored
Jan 02, 2019
and remove -O0 from ppc64el
e6a24d17
add SSE flags for i386 to the pkg-config.
· 4e88f3d9
Michael R. Crusoe
authored
Jan 03, 2019
4e88f3d9
test
· 6b8f3065
Michael R. Crusoe
authored
Jan 03, 2019
6b8f3065
back out the floating point patch again.
· f08c619b
Michael R. Crusoe
authored
Jan 03, 2019
f08c619b
Show whitespace changes
Inline
Side-by-side
debian/changelog
View file @
f08c619b
htslib (1.9-9) UNRELEASED; urgency=medium
* add SSE flags for i386 to the pkg-config.
-- Michael R. Crusoe <michael.crusoe@gmail.com> Wed, 02 Jan 2019 06:34:33 -0800
htslib (1.9-8) unstable; urgency=medium
* Disable optimization on ppc64el to unblock this and many other packages
...
...
debian/i386-htslib.pc.in
0 → 100644
View file @
f08c619b
includedir=@-includedir@
libdir=@-libdir@
# Flags and libraries needed when linking against a static libhts.a
# (used by manual and semi-manual pkg-config(1)-style enquiries).
static_ldflags=@static_LDFLAGS@
static_libs=@static_LIBS@
Name: htslib
Description: C library for high-throughput sequencing data formats
Version: @-PACKAGE_VERSION@
Cflags: -I${includedir} -msse -mfpmath=sse
Libs: -L${libdir} -lhts
Libs.private: -L${libdir} @private_LIBS@ -lhts -lm -lpthread
Requires.private: zlib @pc_requires@
debian/patches/fix_float_precision
View file @
f08c619b
...
...
@@ -3,15 +3,7 @@ Subject: ppc64el float handling fix
I dug a bit further and it looks like that sam_parse1() is actually
generating a different value for the floats in question, so when they are
loaded back for the comparison they are already screwed up, e.g.:
-- O3 --
0xc0490fcf
-3.14158988
-- O0 --
0xc0490fd0
-3.14159012 (expected)
loaded back for the comparison they are already screwed up
because strtod() is used in float_to_le() and so also in u32_to_le(), which are
inlined and float_to_le() takes a float and not a double as the first argument
...
...
debian/patches/series
View file @
f08c619b
define_PATH_MAX.patch
fPIC.patch
testShebang.patch
#fix_float_precision
# doesn't fix all errors on ppc64el yet
#fix_float_precision
debian/rules
View file @
f08c619b
...
...
@@ -10,12 +10,8 @@ include /usr/share/dpkg/default.mk
ifneq (,$(filter $(DEB_HOST_ARCH),i386 kfreebsd-i386 hurd-i386))
DEB_CFLAGS_MAINT_APPEND=-msse -mfpmath=sse
endif
ifneq (,$(filter $(DEB_HOST_ARCH),ppc64el))
DEB_CFLAGS_MAINT_APPEND+=-O0
else
DEB_CFLAGS_MAINT_APPEND+=-flto
DEB_LDFLAGS_MAINT_APPEND+=-Wl,-flto
endif
export DEB_CFLAGS_MAINT_APPEND
export DEB_LDFLAGS_MAINT_APPEND
...
...
@@ -24,6 +20,10 @@ export DEB_LDFLAGS_MAINT_APPEND
dh $@
override_dh_auto_configure:
ifneq (,$(filter $(DEB_HOST_ARCH),i386 kfreebsd-i386 hurd-i386))
cp htslib.pc.in debian/
cp debian/i386-htslib.pc.in ./htslib.pc.in
endif
# create clean copy of test dir
cp -a test test_backup
autoconf
...
...
@@ -34,18 +34,15 @@ override_dh_auto_build:
CFLAGS="$$(dpkg-buildflags --get CFLAGS)" \
CPPFLAGS="-I. -DSAMTOOLS=1 $$(dpkg-buildflags --get CPPFLAGS)" \
LDFLAGS="$$(dpkg-buildflags --get LDFLAGS)" \
# re-try later LDLIBS=-lhts \
PACKAGE_VERSION="$(DEB_VERSION)" \
libdir=/usr/lib/$(DEB_HOST_MULTIARCH)
# re-try later LDLIBS=-lhts \
override_dh_auto_install:
for binary in sam test-regidx hts_endian test-bcf-sr test_bgzf ; do \
rm $(CURDIR)/test/$${binary} ; \
done
dh_auto_install -- \
prefix=/usr \
libdir=/usr/lib/$(DEB_HOST_MULTIARCH) \
PACKAGE_VERSION="$(DEB_VERSION)"
dh_auto_install -- prefix=/usr
# restore clean copy of test dir before dh_install is run
# This should not be done earlier since dh_auto_install contains some unconditional removals
$(RM) -r test
...
...
@@ -55,5 +52,10 @@ override_dh_installchangelogs:
dh_installchangelogs NEWS
override_dh_auto_clean:
ifneq (,$(filter $(DEB_HOST_ARCH),i386 kfreebsd-i386 hurd-i386))
ifneq (,$(wildcard debian/htslib.pc.in))
cp debian/htslib.pc.in ./
endif
endif
dh_auto_clean
rm -rf test_backup/