[med-svn] [Git][med-team/simde][debian/experimental] 5 commits: Install the pkg-config simde file in /usr/lib/pkg-config/, not /usr/lib/<triplet>/pkg-config/
Michael R. Crusoe (@crusoe)
gitlab at salsa.debian.org
Sat May 20 15:30:13 BST 2023
Michael R. Crusoe pushed to branch debian/experimental at Debian Med / simde
Commits:
eba4b6f6 by Michael R. Crusoe at 2023-05-20T15:43:39+02:00
Install the pkg-config simde file in /usr/lib/pkg-config/, not /usr/lib/<triplet>/pkg-config/
- - - - -
e2afaf5a by Michael R. Crusoe at 2023-05-20T15:43:41+02:00
d/rules: clean all the build directories
- - - - -
846f211b by Michael R. Crusoe at 2023-05-20T15:43:41+02:00
d/rules: save testing time by skipping 'emul' tests
- - - - -
d6411174 by Michael R. Crusoe at 2023-05-20T15:43:41+02:00
Add another patch from upstream to fix ppc64el implementations of WASM SIMD128 functions.
- - - - -
afcbf79a by Michael R. Crusoe at 2023-05-20T15:44:08+02:00
pkg-config: drop "-Wno-psabi", too invasive
- - - - -
9 changed files:
- debian/changelog
- debian/patches/pkgconfig
- + debian/patches/ppc64el_fixes
- debian/patches/series
- debian/patches/wasm_f64x2_pmin_altivec.patch
- debian/rules
- debian/tests/control
- debian/tests/run-unit-test
- debian/tests/standalone
Changes:
=====================================
debian/changelog
=====================================
@@ -1,3 +1,19 @@
+simde (0.7.6-0~0exp3) experimental; urgency=medium
+
+ * Install the pkg-config simde file in /usr/share/pkgconfig/,
+ not /usr/lib/<triplet>/pkgconfig/
+ * Autopkgtests: resume skipping some tests:
+ i386: avx512/dbsad
+ ppc64el: all tests pass
+ s390x: all tests pass
+ * d/rules: clean all the build directories
+ * d/rules: save testing time by skipping 'emul' tests
+ * Add another patch from upstream to fix ppc64el implementations of WASM
+ SIMD128 functions.
+ * pkg-config: drop "-Wno-psabi", too invasive
+
+ -- Michael R. Crusoe <crusoe at debian.org> Sat, 20 May 2023 09:32:48 +0200
+
simde (0.7.6-0~0exp2) experimental; urgency=medium
* Autopkgtests control: use "@" so we get the same version of the
=====================================
debian/patches/pkgconfig
=====================================
@@ -1,5 +1,6 @@
Author: Michael R. Crusoe <crusoe at debian.org>
Description: Add the OpenMP SIMD flags automatically
+Forwarded: not-needed
These are supported by both GCC 4.9+ and Clang 6+
@@ -9,7 +10,7 @@ These are supported by both GCC 4.9+ and Clang 6+
version : meson.project_version(),
name : 'SIMDe',
filebase : 'simde',
-+ extra_cflags: ['-DSIMDE_ENABLE_OPENMP', '-fopenmp-simd', '-Wno-psabi'],
++ extra_cflags: ['-DSIMDE_ENABLE_OPENMP', '-fopenmp-simd'],
description : 'Portable SIMD wrapper library')
endif
=====================================
debian/patches/ppc64el_fixes
=====================================
@@ -0,0 +1,44 @@
+Author: Michael R. Crusoe <crusoe at debian.org>
+Description: More WASM fixes for ppc64el
+--- simde.orig/simde/wasm/simd128.h
++++ simde/simde/wasm/simd128.h
+@@ -3865,7 +3865,7 @@
+ #elif defined(SIMDE_ARM_NEON_A32V7_NATIVE)
+ r_.neon_u16 = vshlq_u16(a_.neon_u16, vdupq_n_s16(-HEDLEY_STATIC_CAST(int16_t, count & 15)));
+ #elif defined(SIMDE_POWER_ALTIVEC_P6_NATIVE)
+- r_.altivec_i16 = vec_sra(a_.altivec_i16, vec_splats(HEDLEY_STATIC_CAST(unsigned short, count & 15)));
++ r_.altivec_u16 = vec_sr(a_.altivec_u16, vec_splats(HEDLEY_STATIC_CAST(unsigned short, count & 15)));
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT) && defined(SIMDE_VECTOR_SCALAR)
+ r_.u16 = a_.u16 >> (count & 15);
+ #else
+@@ -3897,7 +3897,7 @@
+ #elif defined(SIMDE_ARM_NEON_A32V7_NATIVE)
+ r_.neon_u32 = vshlq_u32(a_.neon_u32, vdupq_n_s32(-HEDLEY_STATIC_CAST(int32_t, count & 31)));
+ #elif defined(SIMDE_POWER_ALTIVEC_P6_NATIVE)
+- r_.altivec_i32 = vec_sra(a_.altivec_i32, vec_splats(HEDLEY_STATIC_CAST(unsigned int, count & 31)));
++ r_.altivec_u32 = vec_sr(a_.altivec_u32, vec_splats(HEDLEY_STATIC_CAST(unsigned int, count & 31)));
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT) && defined(SIMDE_VECTOR_SCALAR)
+ r_.u32 = a_.u32 >> (count & 31);
+ #else
+@@ -3932,7 +3932,7 @@
+ #elif defined(SIMDE_ARM_NEON_A32V7_NATIVE)
+ r_.neon_u64 = vshlq_u64(a_.neon_u64, vdupq_n_s64(-HEDLEY_STATIC_CAST(int64_t, count & 63)));
+ #elif defined(SIMDE_POWER_ALTIVEC_P8_NATIVE)
+- r_.altivec_i64 = vec_sra(a_.altivec_i64, vec_splats(HEDLEY_STATIC_CAST(unsigned long long, count & 63)));
++ r_.altivec_u64 = vec_sr(a_.altivec_u64, vec_splats(HEDLEY_STATIC_CAST(unsigned long long, count & 63)));
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT) && defined(SIMDE_VECTOR_SCALAR)
+ r_.u64 = a_.u64 >> (count & 63);
+ #else
+@@ -4318,12 +4318,6 @@
+ r_.sse_m128i = _mm_mullo_epi16(a_.sse_m128i, b_.sse_m128i);
+ #elif defined(SIMDE_ARM_NEON_A32V7_NATIVE)
+ r_.neon_i16 = vmulq_s16(a_.neon_i16, b_.neon_i16);
+- #elif defined(SIMDE_POWER_ALTIVEC_P6_NATIVE)
+- r_.altivec_i16 =
+- vec_pack(
+- vec_mule(a_.altivec_i16, b_.altivec_i16),
+- vec_mulo(a_.altivec_i16, b_.altivec_i16)
+- );
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT)
+ r_.i16 = a_.i16 * b_.i16;
+ #else
=====================================
debian/patches/series
=====================================
@@ -1,3 +1,4 @@
wasm_f64x2_pmin_altivec.patch
+ppc64el_fixes
munit
pkgconfig
=====================================
debian/patches/wasm_f64x2_pmin_altivec.patch
=====================================
@@ -1,10 +1,9 @@
Author: Michael R. Crusoe <crusoe at debian.org>
Description: fix PPC64EL implementation of wasm_f64x2_pmin
-diff --git a/simde/wasm/simd128.h b/simde/wasm/simd128.h
-index 98b59629..4a001c24 100644
---- a/simde/wasm/simd128.h
-+++ b/simde/wasm/simd128.h
-@@ -5506,11 +5506,11 @@ simde_wasm_f64x2_pmin (simde_v128_t a, simde_v128_t b) {
+Origin: upstream,https://github.com/simd-everywhere/simde/commit/96d6e5392eb3baa72b8934594925d7c6754a729b
+--- simde.orig/simde/wasm/simd128.h
++++ simde/simde/wasm/simd128.h
+@@ -5506,11 +5506,11 @@
a_.neon_f64
);
#elif defined(SIMDE_POWER_ALTIVEC_P7_NATIVE)
=====================================
debian/rules
=====================================
@@ -22,7 +22,7 @@ endif
dh $@ --buildsystem=meson+ninja
override_dh_auto_configure:
- dh_auto_configure -- -Dtests=false
+ dh_auto_configure -- -Dtests=false --libdir=lib
ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS)))
# ifeq (,$(filter $(DEB_HOST_ARCH),$(CLANG_SKIP)))
# CC=clang CXX=clang++ dh_auto_configure --builddirectory=clang_test
@@ -30,13 +30,13 @@ ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS)))
# https://github.com/simd-everywhere/simde/issues/867
ifneq (,$(filter $(DEB_BUILD_ARCH),i386))
sed -i "/'dbsad'/d" meson.build
- rm test/x86/avx512/dbsad.c
+ rm -f test/x86/avx512/dbsad.c
endif
# According to https://wiki.debian.org/ArchitectureSpecificsMemo#Architecture_baselines
# It is odd that gcc doesn't include this automatically, but clang does
ifneq (,$(filter $(DEB_BUILD_ARCH),ppc64))
- export DEB_CFLAGS_MAINT_APPEND+=-maltivec
- export DEB_CXXFLAGS_MAINT_APPEND+=-maltivec
+ export DEB_CFLAGS_MAINT_APPEND=-maltivec
+ export DEB_CXXFLAGS_MAINT_APPEND=-maltivec
endif
CC=gcc CXX=g++ dh_auto_configure --builddirectory=gcc_test
endif
@@ -51,15 +51,20 @@ endif
override_dh_auto_test:
ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS)))
- dh_auto_test --builddirectory=gcc_test
+ dh_auto_test --builddirectory=gcc_test -- $(shell meson test -C gcc_test --list | grep -v emul)
# Skip testing on clang for now owing to bug report #1002223
# ifeq (,$(filter $(DEB_HOST_ARCH),$(CLANG_SKIP)))
-# dh_auto_test --builddirectory=clang_test
+# dh_auto_test --builddirectory=clang_test -- $(shell meson test -C clang_test --list | grep -v emul)
# endif
endif
override_dh_auto_clean:
dh_auto_clean --builddirectory=gcc_test
-# ifeq (,$(filter $(DEB_HOST_ARCH),$(CLANG_SKIP)))
-# dh_auto_clean --builddirectory=clang_test
-# endif
+ dh_auto_clean --builddirectory=clang_test
+ dh_auto_clean
+
+override_dh_auto_install:
+ dh_auto_install
+ mkdir --parents debian/libsimde-dev/usr/share/
+ mv debian/libsimde-dev/usr/lib/pkgconfig debian/libsimde-dev/usr/share/
+ find debian/libsimde-dev -type d -empty -delete
=====================================
debian/tests/control
=====================================
@@ -1,5 +1,5 @@
Tests: standalone
-Depends: @, gcc, g++, pkgconf
+Depends: @, gcc, g++, pkgconf, dpkg-dev
Tests: run-unit-test
Depends: @, gcc, g++, meson, ninja-build, dpkg-dev
=====================================
debian/tests/run-unit-test
=====================================
@@ -20,42 +20,18 @@ cp -r /usr/include/simde ./
cp -r ${SOURCE}/test ./
cp -r ${SOURCE}/meson* ./
-# if [ "$(dpkg-architecture -qDEB_HOST_ARCH)" = "i386" ] ; then
-# # https://github.com/simd-everywhere/simde/issues/867
-# sed -i "/'dbsad'/d" meson.build
-# rm -f test/x86/avx512/dbsad.c
-# fi
-#
-# if [ "$(dpkg-architecture -qDEB_HOST_ARCH)" = "s390x" ] ; then
-# # https://github.com/simd-everywhere/simde/issues/641
-# sed -i "/'madd'/d" meson.build
-# sed -i "/'qdmulh'/d" meson.build
-# sed -i "/'qdmulh_lane'/d" meson.build
-# sed -i "/'qdmulh_n'/d" meson.build
-# rm -f test/x86/avx512/madd.c
-# rm -f test/arm/neon/qdmulh.c
-# rm -f test/arm/neon/qdmulh_lane.c
-# rm -f test/arm/neon/qdmulh_n.c
-# fi
-#
-# if [ "$(dpkg-architecture -qDEB_HOST_ARCH)" = "ppc64el" ] ; then
-# #https://github.com/simd-everywhere/simde/issues/986
-# sed -i "/'mul'/d" test/wasm/simd128/meson.build
-# sed -i "/'shr'/d" test/wasm/simd128/meson.build
-# sed -i "/'trunc_sat'/d" test/wasm/simd128/meson.build
-# rm -f test/wasm/simd128/mul.c
-# rm -f test/wasm/simd128/shr.c
-# rm -f test/wasm/simd128/trunc_sat.c
-# export CFLAGS=-O2
-# export CXXFLAGS=-O2
-# fi
+if [ "$(dpkg-architecture -qDEB_HOST_ARCH)" = "i386" ] ; then
+ # https://github.com/simd-everywhere/simde/issues/867
+ sed -i "/'dbsad'/d" meson.build
+ rm -f test/x86/avx512/dbsad.c
+fi
mkdir build-gcc build-clang
cd build-gcc
CC=gcc CXX=g++ meson ..
-meson test --print-errorlogs
+meson test --print-errorlogs $(meson test --list | grep -v emul)
# cd ../build-clang
# CC=clang CXX=clang++ meson ..
-# ninja -j$(nproc) -v test
+# meson test --print-errorlogs $(meson test --list | grep -v emul)
=====================================
debian/tests/standalone
=====================================
@@ -16,6 +16,10 @@ fi
cd "${AUTOPKGTEST_TMP}"
+if [ "$(dpkg-architecture -qDEB_HOST_ARCH)" = "i386" ] ; then
+ CFLAGS=-Wno-psabi
+fi
+
cat > test.c <<EOM
#include <assert.h>
#include <simde/arm/neon.h>
@@ -31,5 +35,5 @@ cat > test.c <<EOM
}
EOM
-cc $("${PKG_CONFIG}" simde --cflags) test.c -o test
+cc $("${PKG_CONFIG}" simde --cflags) ${CFLAGS} test.c -o test
./test
View it on GitLab: https://salsa.debian.org/med-team/simde/-/compare/94a4431643f50223d498ed2de0fc4bd729c2a9a5...afcbf79a46c11b07ba6ebb5f7c4a17c9ce0e2506
--
View it on GitLab: https://salsa.debian.org/med-team/simde/-/compare/94a4431643f50223d498ed2de0fc4bd729c2a9a5...afcbf79a46c11b07ba6ebb5f7c4a17c9ce0e2506
You're receiving this email because of your account on salsa.debian.org.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/debian-med-commit/attachments/20230520/bcdd0def/attachment-0001.htm>
More information about the debian-med-commit
mailing list