[Debian-med-packaging] Bug#961101: mmseqs2 FTBFS on i386

Andreas Tille tille at debian.org
Wed May 20 07:37:39 BST 2020


Control: tags -1 pending

Michael,

I know you have put a lot of effort into optimisation on all
architectures.  Thus I simply commited the suggested patch to Git and
leave it to your decision whether to upload that way or to fix the
bug otherwise.  From my point of view Adrian has a point when saying
that the usage of this tools on i386 hardware is limited.

Kind regards

     Andreas.

On Wed, May 20, 2020 at 09:12:23AM +0300, Adrian Bunk wrote:
> Source: mmseqs2
> Version: 11-e1a1c+ds-3
> Severity: important
> Tags: ftbfs patch
> 
> https://buildd.debian.org/status/fetch.php?pkg=mmseqs2&arch=i386&ver=11-e1a1c%2Bds-3&stamp=1588613875&raw=0
> 
> ...
> /<<PKGBUILDDIR>>/src/commons/Util.cpp: In static member function ‘static uint64_t Util::revComplement(uint64_t, int)’:
> /<<PKGBUILDDIR>>/src/commons/Util.cpp:601:17: error: ‘_mm_cvtsi64_si128’ was not declared in this scope; did you mean ‘_mm_cvtsi32_si128’?
>   601 |     __m128i x = _mm_cvtsi64_si128(kmer);
>       |                 ^~~~~~~~~~~~~~~~~
>       |                 _mm_cvtsi32_si128
> /<<PKGBUILDDIR>>/src/commons/Util.cpp:638:24: error: ‘_mm_cvtsi128_si64’ was not declared in this scope; did you mean ‘_mm_cvtsi128_si32’?
>   638 |     return (((uint64_t)_mm_cvtsi128_si64(x)) >> (uint64_t)(64-2*k));
>       |                        ^~~~~~~~~~~~~~~~~
>       |                        _mm_cvtsi128_si32
> make[4]: *** [src/CMakeFiles/mmseqs-framework.dir/build.make:573: src/CMakeFiles/mmseqs-framework.dir/commons/Util.cpp.o] Error 1
> 
> 
> 
> It makes sense to provide compile with different optimizations
> for amd64, but for i386 the generic version is good enough
> (there are unlikely to be many serious users on i386):
> 
> --- debian/rules.old	2020-05-19 09:28:28.837521336 +0000
> +++ debian/rules	2020-05-19 09:28:56.101507374 +0000
> @@ -23,13 +23,6 @@
>  	        export CXXFLAGS="$(CXXFLAGS) -m$${SIMD}" && export CFLAGS="$(CFLAGS) -m$${SIMD}" && \
>  	        dh_auto_configure --builddirectory build_$${SIMD} -- -DEXE_SUFFIX=-$${SIMD} -DVERSION_OVERRIDE=$(DEB_VERSION) ; \
>  	done
> -else ifeq (i386,$(DEB_HOST_ARCH))
> -	for SIMD in ssse3 sse3 sse2 ; do \
> -	        export CXXFLAGS="$(CXXFLAGS) -m$${SIMD}" && export CFLAGS="$(CFLAGS) -m$${SIMD}" && \
> -	        dh_auto_configure --builddirectory build_$${SIMD} -- -DEXE_SUFFIX=-$${SIMD} -DVERSION_OVERRIDE=$(DEB_VERSION) ; \
> -	done
> -	export CXXFLAGS="$(CXXFLAGS)" && export CFLAGS="$(CFLAGS)" && \
> -		dh_auto_configure --builddirectory build_plain -- -DEXE_SUFFIX=-plain -DVERSION_OVERRIDE=$(DEB_VERSION)
>  else
>  	dh_auto_configure -- -DVERSION_OVERRIDE=$(DEB_VERSION)
>  endif
> @@ -42,12 +35,6 @@
>  	for SIMD in avx2 avx sse4.1 ssse3 sse3 sse2 ; do \
>  		dh_auto_build --builddirectory build_$${SIMD} ; \
>  	done
> -else ifeq (i386,$(DEB_HOST_ARCH))
> -	mkdir -p $(binprefix)
> -	for SIMD in ssse3 sse3 sse2 ; do \
> -	        dh_auto_build --builddirectory build_$${SIMD} ; \
> -	done
> -	dh_auto_build --builddirectory build_plain
>  else
>  	dh_auto_build
>  endif
> @@ -63,16 +50,6 @@
>  	dh_install -pmmseqs2 usr/bin/mmseqs-* usr/bin/
>  	cd $(binprefix) \
>  		&& for prog in mmseqs ; do \
> -		ln -s ../lib/$(DEB_SOURCE)/simd-dispatch $${prog} ; done
> -else ifeq (i386,$(DEB_HOST_ARCH))
> -	dh_install -pmmseqs2 debian/bin/simd-dispatch /usr/lib/$(DEB_SOURCE)/
> -	for SIMD in ssse3 sse3 sse2 ; do \
> -	        dh_auto_install --builddirectory build_$${SIMD} ; \
> -	done
> -	dh_auto_install --builddirectory build_plain
> -	dh_install -pmmseqs2 usr/bin/mmseqs-* usr/bin/
> -	cd $(binprefix) \
> -		&& for prog in mmseqs ; do \
>  		ln -s ../lib/$(DEB_SOURCE)/simd-dispatch $${prog} ; done
>  else
>  	dh_auto_install
> _______________________________________________
> Debian-med-packaging mailing list
> Debian-med-packaging at alioth-lists.debian.net
> https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/debian-med-packaging

-- 
http://fam-tille.de



More information about the Debian-med-packaging mailing list