diff --git a/biology/kallisto/Makefile b/biology/kallisto/Makefile index 91193aa7facc..c2d33ef3ce82 100644 --- a/biology/kallisto/Makefile +++ b/biology/kallisto/Makefile @@ -1,48 +1,58 @@ PORTNAME= kallisto DISTVERSIONPREFIX= v DISTVERSION= 0.51.1 PORTEPOCH= 1 CATEGORIES= biology MAINTAINER= jwb@FreeBSD.org COMMENT= Quantify abundances of transcripts from RNA-Seq data WWW= https://pachterlab.github.io/kallisto/about.html LICENSE= BSD2CLAUSE LICENSE_FILE= ${WRKSRC}/license.txt ONLY_FOR_ARCHS= aarch64 amd64 powerpc64 powerpc64le riscv64 ONLY_FOR_ARCHS_REASON= Requires a 64-bit processor LIB_DEPENDS= libhdf5.so:science/hdf5 \ libsz.so:science/libaec \ libhts.so:biology/htslib USES= cmake:noninja compiler:c++11-lang gmake localbase:ldflags USE_GITHUB= yes GH_ACCOUNT= pachterlab EXTRACT_AFTER_ARGS= --exclude ${GH_PROJECT_DEFAULT}-${GH_TAGNAME_EXTRACT}/ext/htslib --no-same-owner --no-same-permissions SUB_FILES= kallisto-test PORTEXAMPLES= * PLIST_FILES= bin/kallisto EXAMPLES_PLIST_FILES= bin/kallisto-test # hdf5 is being phased out and is no longer built in by default, but is still # required for Sleuth (requires kallisto bootstrap estimates) and other # downstream tools. Remove this after Sleuth et al catch up. CMAKE_ARGS+= -DUSE_HDF5:BOOL=ON -DUSE_BAM:BOOL=ON # WIP: Remove before committing CMAKE_ARGS+= -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON MAKE_JOBS_UNSAFE= yes +CXXFLAGS+= -Wno-unqualified-std-cast-call LDFLAGS+= -lhts -lz OPTIONS_DEFINE= EXAMPLES +.include + +# Build fails with clang19, but succeeds with gcc13 +# Have not figured out where this sz_link member is even supposed to come from +# DataStorage.tcc:81:69: error: no member named 'sz_link' in 'DataStorage' +.if ${OSVERSION} > 1500000 +USE_GCC= yes +.endif + post-install-EXAMPLES-on: ${INSTALL_SCRIPT} ${WRKDIR}/kallisto-test ${STAGEDIR}${PREFIX}/bin cd ${WRKSRC}/test && ${COPYTREE_SHARE} . ${STAGEDIR}${EXAMPLESDIR} -.include +.include diff --git a/biology/kallisto/files/patch-ext_bifrost_CMakeLists.txt b/biology/kallisto/files/patch-ext_bifrost_CMakeLists.txt index d25cf028cfdd..c662b37881c9 100644 --- a/biology/kallisto/files/patch-ext_bifrost_CMakeLists.txt +++ b/biology/kallisto/files/patch-ext_bifrost_CMakeLists.txt @@ -1,40 +1,41 @@ ---- ext/bifrost/CMakeLists.txt.orig 2023-06-27 10:45:00 UTC +--- ext/bifrost/CMakeLists.txt.orig 2024-09-17 05:40:08 UTC +++ ext/bifrost/CMakeLists.txt -@@ -7,18 +7,12 @@ find_package(Threads REQUIRED) +@@ -6,18 +6,12 @@ SET(MAX_GMER_SIZE "${MAX_KMER_SIZE}" CACHE STRING "MAX + # To enable a larger default k-mer size, replace MAX_KMER_SIZE with a larger multiple of 32: actual maximum k-mer size will be MAX_KMER_SIZE-1. - SET(MAX_KMER_SIZE "32" CACHE STRING "MAX_KMER_SIZE") SET(MAX_GMER_SIZE "${MAX_KMER_SIZE}" CACHE STRING "MAX_GMER_SIZE") -# Enable architecture optimizations -SET(COMPILATION_ARCH "native" CACHE STRING "COMPILATION_ARCH") -# Enable AVX2 instructions -SET(ENABLE_AVX2 "ON" CACHE STRING "ENABLE_AVX2") +SET(CMAKE_VERBOSE_MAKEFILE "ON") # Set some default compile flags set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=c11") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") +-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") ++set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -Wno-unqualified-std-cast-call") -set_property(SOURCE BlockedBloomFilter.cpp APPEND_STRING PROPERTY COMPILE_FLAGS " -funroll-loops") - - #check if we are on arm64 and apple, if so, disable AVX2 if(APPLE AND CMAKE_SYSTEM_PROCESSOR MATCHES "arm") message("Disabling AVX2 instructions on arm64") -@@ -30,8 +24,6 @@ if(COMPILATION_ARCH MATCHES "OFF") +@@ -29,8 +23,6 @@ else(COMPILATION_ARCH MATCHES "OFF") message("Disabling native architecture compilation (including AVX2)") else(COMPILATION_ARCH MATCHES "OFF") message("Compilation architecture: ${COMPILATION_ARCH}") - set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -march=${COMPILATION_ARCH}") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=${COMPILATION_ARCH}") endif(COMPILATION_ARCH MATCHES "OFF") if(ENABLE_AVX2 MATCHES "OFF") -@@ -56,7 +48,7 @@ else(CMAKE_BUILD_TYPE MATCHES Debug) +@@ -55,7 +47,7 @@ else(CMAKE_BUILD_TYPE MATCHES Debug) set(CMAKE_EXE_LINKER_FLAGS "-pg") else(CMAKE_BUILD_TYPE MATCHES Profile) message("Build type: Release") - add_compile_options(-O3) + add_compile_options(-O2) endif(CMAKE_BUILD_TYPE MATCHES Profile) endif(CMAKE_BUILD_TYPE MATCHES Debug)