Commit e78087f6 authored by Andreas Tille's avatar Andreas Tille
Browse files

New upstream version 0.18.0+dfsg

parent 143103ae
Loading
Loading
Loading
Loading

cmake/FindHTSlib.cmake

0 → 100644
+11 −0
Original line number Diff line number Diff line
# Find HTSlib
find_package(PkgConfig REQUIRED)
pkg_check_modules(HTSlib REQUIRED htslib)

# because CMake is trying to be extra clever,
# it will not properly load libraries with
# absolute paths in *_LIBRARIES
set(HTSlib_LIBRARIES "${HTSlib_LDFLAGS}")

message(STATUS "   HTSlib include dirs: ${HTSlib_INCLUDE_DIRS}")
message(STATUS "   HTSlib libraries: ${HTSlib_LIBRARIES}")

cmake/PbbamTool.cmake

0 → 100644
+23 −0
Original line number Diff line number Diff line
include(CMakeParseArguments)

function(create_pbbam_tool)

    # parse args
    set(oneValueArgs TARGET)
    set(multiValueArgs SOURCES)
    cmake_parse_arguments(create_pbbam_tool "" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})

    # create executable
    include_directories(
        ${ToolsCommonDir}           # shared tool code
        ${GeneratedDir}             # generated version headers
        ${PacBioBAM_INCLUDE_DIRS}   # pbbam/htslib includes
    )
    add_executable(${create_pbbam_tool_TARGET} ${create_pbbam_tool_SOURCES})
    set_target_properties(
        ${create_pbbam_tool_TARGET} PROPERTIES
        RUNTIME_OUTPUT_DIRECTORY ${PacBioBAM_BinDir}
    )
    target_link_libraries(${create_pbbam_tool_TARGET} pbbam)

endfunction(create_pbbam_tool)
+8 −0
Original line number Diff line number Diff line

if(PacBioBAM_use_ccache)
    find_program(CCACHE_FOUND ccache)
    if(CCACHE_FOUND)
        set_property(GLOBAL PROPERTY RULE_LAUNCH_COMPILE ccache)
        set_property(GLOBAL PROPERTY RULE_LAUNCH_LINK    ccache)
    endif()
endif()
+44 −0
Original line number Diff line number Diff line

include(CheckCXXCompilerFlag)

# C++11 check & enabling
if (CMAKE_VERSION VERSION_LESS "3.1")
    if ("${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang")
        set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -stdlib=libc++")    # clang
    else()
        set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")        # gcc
    endif()
else() # 3.1+
    set(CMAKE_CXX_STANDARD          14)
    set(CMAKE_CXX_STANDARD_REQUIRED ON)
endif()

# shared CXX flags for src & tests
if (MSVC)
    set(PacBioBAM_CXX_FLAGS "/Wall")
else()
    set(PacBioBAM_CXX_FLAGS "-Wall")
endif()

# NOTE: -Wno-unused-local-typedefs used to quash clang warnings w/ Boost
check_cxx_compiler_flag("-Wno-unused-local-typedefs" HAS_NO_UNUSED_LOCAL_TYPEDEFS)
if(HAS_NO_UNUSED_LOCAL_TYPEDEFS)
    set(PacBioBAM_CXX_FLAGS "${PacBioBAM_CXX_FLAGS} -Wno-unused-local-typedefs")
endif()

check_cxx_compiler_flag("-Wno-sign-compare" HAS_NO_SIGN_COMPARE)
if(HAS_NO_SIGN_COMPARE)
    set(PacBioBAM_CXX_FLAGS "${PacBioBAM_CXX_FLAGS} -Wno-sign-compare")
endif()

# Turn on windows-style filepath resolution.
# We need to add this #define early (not just in the C# SWIG wrapper)
if(WIN32)
    add_definitions(-DPBBAM_WIN_FILEPATHS)
endif()

# For now, keep @rpath out of install names on OS X, as it causes SWIG
# tests to fail.
if(APPLE)
    set(CMAKE_MACOSX_RPATH OFF)
endif()
+32 −0
Original line number Diff line number Diff line

# pthreads
find_package(Threads REQUIRED)

# boost
if(NOT Boost_INCLUDE_DIRS)
    find_package(Boost REQUIRED)
endif()

# Winsock for htslib on Windows
if(WIN32)
    set(SOCKET_LIBRARIES "ws2_32")
endif()

# zlib
if (NOT ZLIB_INCLUDE_DIRS OR NOT ZLIB_LIBRARIES)
    find_package(PkgConfig REQUIRED)
    pkg_check_modules(ZLIB zlib)
    set(ZLIB_LIBRARIES ${ZLIB_LDFLAGS})
else()
    set(ZLIB_LDFLAGS ${ZLIB_LIBRARIES})
endif()

# htslib
if(NOT HTSLIB_INCLUDE_DIRS OR NOT HTSLIB_LIBRARIES)
    find_package(HTSlib)
    set(hts_INCLUDE_DIRS ${HTSlib_INCLUDE_DIRS})
    set(hts_LIBRARIES    ${HTSlib_LIBRARIES})
else()    
    set(hts_INCLUDE_DIRS ${HTSLIB_INCLUDE_DIRS})
    set(hts_LIBRARIES    ${HTSLIB_LIBRARIES})
endif()
Loading