1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118
|
Description: Build additional static lib
Author: Andreas Tille <tille@debian.org>
Forwarded: not-needed
Last-Update: 2020-05-27
--- bamtools.orig/src/CMakeLists.txt
+++ bamtools/src/CMakeLists.txt
@@ -33,7 +33,7 @@
# create main BamTools API library
add_library(
- BamTools
+ BamTools SHARED
api/BamAlignment.cpp
api/BamMultiReader.cpp
@@ -73,6 +73,48 @@
api/internal/sam/SamHeaderValidator_p.cpp
api/internal/utils/BamException_p.cpp
)
+add_library(
+ BamTools_static STATIC
+
+ api/BamAlignment.cpp
+ api/BamMultiReader.cpp
+ api/BamReader.cpp
+ api/BamWriter.cpp
+ api/SamHeader.cpp
+ api/SamProgram.cpp
+ api/SamProgramChain.cpp
+ api/SamReadGroup.cpp
+ api/SamReadGroupDictionary.cpp
+ api/SamSequence.cpp
+ api/SamSequenceDictionary.cpp
+ api/internal/bam/BamHeader_p.cpp
+ api/internal/bam/BamMultiReader_p.cpp
+ api/internal/bam/BamRandomAccessController_p.cpp
+ api/internal/bam/BamReader_p.cpp
+ api/internal/bam/BamWriter_p.cpp
+ api/internal/index/BamIndexFactory_p.cpp
+ api/internal/index/BamStandardIndex_p.cpp
+ api/internal/index/BamToolsIndex_p.cpp
+ api/internal/io/BamDeviceFactory_p.cpp
+ api/internal/io/BamFile_p.cpp
+ api/internal/io/BamFtp_p.cpp
+ api/internal/io/BamHttp_p.cpp
+ api/internal/io/BamPipe_p.cpp
+ api/internal/io/BgzfStream_p.cpp
+ api/internal/io/ByteArray_p.cpp
+ api/internal/io/HostAddress_p.cpp
+ api/internal/io/HostInfo_p.cpp
+ api/internal/io/HttpHeader_p.cpp
+ api/internal/io/ILocalIODevice_p.cpp
+ api/internal/io/RollingBuffer_p.cpp
+ api/internal/io/TcpSocketEngine_p.cpp
+ api/internal/io/TcpSocket_p.cpp
+ api/internal/sam/SamFormatParser_p.cpp
+ api/internal/sam/SamFormatPrinter_p.cpp
+ api/internal/sam/SamHeaderValidator_p.cpp
+ api/internal/utils/BamException_p.cpp
+)
+
# The SONAME is bumped on every version increment
# as Bamtools does not yet guarantee a stable ABI
@@ -83,6 +125,12 @@
CXX_STANDARD 11
CXX_STANDARD_REQUIRED ON
CXX_EXTENSIONS OFF)
+set_target_properties(
+ BamTools_static PROPERTIES
+ OUTPUT_NAME bamtools
+ CXX_STANDARD 11
+ CXX_STANDARD_REQUIRED ON
+ CXX_EXTENSIONS OFF)
target_include_directories(
BamTools PRIVATE
${ZLIB_INCLUDE_DIRS}
@@ -91,6 +139,15 @@
target_link_libraries(
BamTools PRIVATE
${ZLIB_LIBRARIES})
+target_include_directories(
+ BamTools_static PRIVATE
+ ${ZLIB_INCLUDE_DIRS}
+ ${CMAKE_CURRENT_SOURCE_DIR}
+ ${CMAKE_CURRENT_BINARY_DIR})
+target_link_libraries(
+ BamTools_static PRIVATE
+ ${ZLIB_LIBRARIES})
+
if(WIN32)
target_link_libraries(
@@ -103,6 +160,9 @@
target_sources(
BamTools PRIVATE
api/internal/io/TcpSocketEngine_unix_p.cpp)
+ target_sources(
+ BamTools_static PRIVATE
+ api/internal/io/TcpSocketEngine_unix_p.cpp)
endif()
if(EnableNodeJS)
@@ -195,6 +255,13 @@
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
install(
+ TARGETS BamTools_static
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+
+
+install(
TARGETS bamtools_cmd
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|