* gnu/packages/bioinformatics.scm (minimap2)[arguments]: Adjust configure-flags to be better per-architecture. [source]: Add patch. * gnu/packages/patches/minimap2-aarch64-support.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it.
		
			
				
	
	
		
			52 lines
		
	
	
	
		
			2.2 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			52 lines
		
	
	
	
		
			2.2 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
| This patch should be removed with the next release. There is WIP upstream
 | |
| support for proper support of more architectures, including aarch64 and powerpc64le.
 | |
| 
 | |
| diff --git a/Makefile b/Makefile
 | |
| index ed341f6..94dbd85 100644
 | |
| --- a/Makefile
 | |
| +++ b/Makefile
 | |
| @@ -6,20 +6,18 @@ PROG=		minimap2
 | |
|  PROG_EXTRA=	sdust minimap2-lite
 | |
|  LIBS=		-lm -lz -lpthread
 | |
|  
 | |
| -ifeq ($(arm_neon),) # if arm_neon is not defined
 | |
| -ifeq ($(sse2only),) # if sse2only is not defined
 | |
| -	OBJS+=ksw2_extz2_sse41.o ksw2_extd2_sse41.o ksw2_exts2_sse41.o ksw2_extz2_sse2.o ksw2_extd2_sse2.o ksw2_exts2_sse2.o ksw2_dispatch.o
 | |
| -else                # if sse2only is defined
 | |
| -	OBJS+=ksw2_extz2_sse.o ksw2_extd2_sse.o ksw2_exts2_sse.o
 | |
| -endif
 | |
| -else				# if arm_neon is defined
 | |
| +ifneq ($(arm_neon),) 		# if arm_neon is defined
 | |
|  	OBJS+=ksw2_extz2_neon.o ksw2_extd2_neon.o ksw2_exts2_neon.o
 | |
| -    INCLUDES+=-Isse2neon
 | |
| -ifeq ($(aarch64),)	#if aarch64 is not defined
 | |
|  	CFLAGS+=-D_FILE_OFFSET_BITS=64 -mfpu=neon -fsigned-char
 | |
| -else				#if aarch64 is defined
 | |
| +	INCLUDES+=-Isse2neon
 | |
| +else ifneq ($(aarch64),)	#if aarch64 is defined
 | |
| +	OBJS+=ksw2_extz2_neon.o ksw2_extd2_neon.o ksw2_exts2_neon.o
 | |
|  	CFLAGS+=-D_FILE_OFFSET_BITS=64 -fsigned-char
 | |
| -endif
 | |
| +	INCLUDES+=-Isse2neon
 | |
| +else ifneq ($(sse2only),) 	# if sse2only is defined
 | |
| +	OBJS+=ksw2_extz2_sse.o ksw2_extd2_sse.o ksw2_exts2_sse.o
 | |
| +else                		# none of the above
 | |
| +	OBJS+=ksw2_extz2_sse41.o ksw2_extd2_sse41.o ksw2_exts2_sse41.o ksw2_extz2_sse2.o ksw2_extd2_sse2.o ksw2_exts2_sse2.o ksw2_dispatch.o
 | |
|  endif
 | |
|  
 | |
|  .PHONY:all extra clean depend
 | |
| @@ -46,9 +44,12 @@ sdust:sdust.c kalloc.o kalloc.h kdq.h kvec.h kseq.h ketopt.h sdust.h
 | |
|  
 | |
|  # SSE-specific targets on x86/x86_64
 | |
|  
 | |
| -ifeq ($(arm_neon),)   # if arm_neon is defined, compile this target with the default setting (i.e. no -msse2)
 | |
| +ifneq ($(arm_neon),)   # if arm_neon is defined, compile this target with the default setting (i.e. no -msse2)
 | |
| +ksw2_ll_sse.o:ksw2_ll_sse.c ksw2.h kalloc.h
 | |
| +else ifneq ($(aarch64),)
 | |
|  ksw2_ll_sse.o:ksw2_ll_sse.c ksw2.h kalloc.h
 | |
| -		$(CC) -c $(CFLAGS) -msse2 $(CPPFLAGS) $(INCLUDES) $< -o $@
 | |
| +else
 | |
| +	$(CC) -c $(CFLAGS) -msse2 $(CPPFLAGS) $(INCLUDES) $< -o $@
 | |
|  endif
 | |
|  
 | |
|  ksw2_extz2_sse41.o:ksw2_extz2_sse.c ksw2.h kalloc.h
 |