--- Makefile.orig 2026-08-31 12:27:34 UTC +++ Makefile @@ -23,9 +23,11 @@ GCC_SUFFIX = INC = GCC_PREFIX = $(shell dirname `which gcc`) GCC_SUFFIX = -CC = $(GCC_PREFIX)/gcc$(GCC_SUFFIX) -CPP = $(GCC_PREFIX)/g++$(GCC_SUFFIX) -CXX = $(CPP) +CC ?= $(GCC_PREFIX)/gcc$(GCC_SUFFIX) +CPP ?= $(GCC_PREFIX)/g++$(GCC_SUFFIX) +CXX ?= $(CPP) +INSTALL ?= install + HEADERS = $(wildcard *.h) BOWTIE_MM = 1 BOWTIE_SHARED_MEM = 0 @@ -171,40 +173,9 @@ VERSION = $(shell cat VERSION) SEARCH_FRAGMENTS = $(wildcard search_*_phase*.c) VERSION = $(shell cat VERSION) -# Convert BITS=?? to a -m flag -BITS=32 -ifeq (x86_64,$(shell uname -m)) -BITS=64 -endif -# ARM is 64-bit (aarch64/arm64) and does not take x86 -m32/-m64 flags; the ABI -# is fixed by the toolchain target, so leave BITS_FLAG empty below. -ifeq (1,$(ARM)) -BITS=arm -endif -# msys will always be 32 bit so look at the cpu arch instead. -ifneq (,$(findstring AMD64,$(PROCESSOR_ARCHITEW6432))) - ifeq (1,$(MINGW)) - BITS=64 - endif -endif -BITS_FLAG = - -ifeq (32,$(BITS)) - BITS_FLAG = -m32 -endif - -ifeq (64,$(BITS)) - BITS_FLAG = -m64 -endif -ifeq (1,$(ARM)) - SSE_FLAG = -else - SSE_FLAG = -msse2 -endif - DEBUG_FLAGS = -O0 -g3 $(BITS_FLAG) $(SSE_FLAG) DEBUG_DEFS = -DCOMPILER_OPTIONS="\"$(DEBUG_FLAGS) $(EXTRA_FLAGS)\"" -RELEASE_FLAGS = -O3 $(BITS_FLAG) $(SSE_FLAG) -funroll-loops -g3 +RELEASE_FLAGS = $(CXXFLAGS) RELEASE_DEFS = -DCOMPILER_OPTIONS="\"$(RELEASE_FLAGS) $(EXTRA_FLAGS)\"" NOASSERT_FLAGS = -DNDEBUG FILE_FLAGS = -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE @@ -581,6 +552,20 @@ MANUAL: MANUAL.markdown MANUAL: MANUAL.markdown perl doc/strip_markdown.pl < $^ > $@ + +# Install per filesystem hierarchy standard: +# https://en.wikipedia.org/wiki/Filesystem_Hierarchy_Standard + +.PHONY: install +install: + mkdir -p ${DESTDIR}${PREFIX}/bin + ${INSTALL} -c -s ${HISAT2_BIN_LIST} ${DESTDIR}${PREFIX}/bin + ${INSTALL} -c hisat2 hisat2-build hisat2-inspect \ + ${DESTDIR}${PREFIX}/bin + + mkdir -p ${DESTDIR}${PREFIX}/libexec/hisat2 + ${INSTALL} -c scripts/*.sh scripts/*.pl scripts/*.py *.py \ + ${DESTDIR}${PREFIX}/libexec/hisat2 .PHONY: clean clean: