From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ben Woodcroft Subject: Re: [PATCHES] Add vsearch. Date: Sat, 3 Oct 2015 11:59:33 +1000 Message-ID: <560F3685.5040102@uq.edu.au> References: <560B14F2.7010103@uq.edu.au> <87612qof9a.fsf@gnu.org> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------070009040004000309000002" Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:42196) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZiC71-0004tJ-Mc for guix-devel@gnu.org; Fri, 02 Oct 2015 21:59:48 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZiC6y-00032H-Eq for guix-devel@gnu.org; Fri, 02 Oct 2015 21:59:47 -0400 In-Reply-To: <87612qof9a.fsf@gnu.org> List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org To: =?UTF-8?Q?Ludovic_Court=c3=a8s?= Cc: "guix-devel@gnu.org" This is a multi-part message in MIME format. --------------070009040004000309000002 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: quoted-printable X-MIME-Autoconverted: from 8bit to quoted-printable by newmailhub.uq.edu.au id t931xa7w020579 On 02/10/15 00:05, Ludovic Court=C3=A8s wrote: > Vsearch fails to build on platforms other than x86_64 (see > ): > > --8<---------------cut here---------------start------------->8--- > In file included from /gnu/store/r0p8d0a3n2zlkj1l5a9xv368yhbgc5bh-gcc-4= .9.3-lib/lib/gcc/i686-unknown-linux-gnu/4.9.3/include/xmmintrin.h:1258:0, > from /gnu/store/r0p8d0a3n2zlkj1l5a9xv368yhbgc5bh-gcc-= 4.9.3-lib/lib/gcc/i686-unknown-linux-gnu/4.9.3/include/x86intrin.h:31, > from vsearch.h:69, > from align_simd.cc:61: > /gnu/store/r0p8d0a3n2zlkj1l5a9xv368yhbgc5bh-gcc-4.9.3-lib/lib/gcc/i686-= unknown-linux-gnu/4.9.3/include/emmintrin.h:686:1: error: inlining failed= in call to always_inline =C3=83=C2=A2=C3=82=E2=82=AC=C3=82=CB=9C__m128i = _mm_load_si128(const __m128i*)=C3=83=C2=A2=C3=82=E2=82=AC=C3=82=E2=84=A2:= target specific option mismatch > _mm_load_si128 (__m128i const *__P) > ^ > align_simd.cc:204:71: error: called from here > xmm1 =3D _mm_load_si128((__m128i*)(score_matrix_word + d[1] + = i)); > --8<---------------cut here---------------end--------------->8--- > > My impression is that the code unconditionally uses SSE, meaning that i= t > works only on x86_64. > > Could you investigate a bit? If that is the case, could you send a > patch that adds: > > (supported-platforms '("x86_64-linux")) > > with a comment explaining why? I think you are right, I have attached the patch. I also noticed that the license definition was changed from the first=20 patch applied, removing the public-domain license i.e. from + (license (list license:gpl3 license:bsd-2 license:public-domain)))) to + (license (list license:gpl3 license:bsd-2)))) Of course you know what you are doing, I just wanted to check because=20 this changed between the patches I submitted for 1.4.0 and 1.4.1. Thanks, ben --------------070009040004000309000002 Content-Type: text/x-patch; name="0001-gnu-vsearch-Restrict-supported-systems-to-x86_64-lin.patch" Content-Disposition: attachment; filename*0="0001-gnu-vsearch-Restrict-supported-systems-to-x86_64-lin.pa"; filename*1="tch" Content-Transfer-Encoding: 7bit >From 28497af997b07a57ce6006b19c50a467a4f3907f Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Sat, 3 Oct 2015 11:46:22 +1000 Subject: [PATCH] gnu: vsearch: Restrict supported systems to x86_64-linux * gnu/packages/bioinformatics.scm (vsearch): Restrict supported systems. --- gnu/packages/bioinformatics.scm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index b04c288..a3619be 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -2766,6 +2766,9 @@ vectorization as well as multiple threads to perform accurate alignments at high speed. VSEARCH uses an optimal global aligner (full dynamic programming Needleman-Wunsch).") (home-page "https://github.com/torognes/vsearch") + ;; vsearch uses non-portable SSE instrinsics so building fails on other + ;; platforms. + (supported-systems '("x86_64-linux")) ;; Dual licensed; also includes public domain source. (license (list license:gpl3 license:bsd-2)))) -- 2.4.3 --------------070009040004000309000002--