Permalink
Please sign in to comment.
@@ -0,0 +1,3 @@ | |||
[submodule "lib/mmseqs"] | |||
path = lib/mmseqs | |||
url = https://github.com/soedinglab/MMseqs2.git |
@@ -1,66 +1,12 @@ | |||
cmake_minimum_required(VERSION 2.8.12 FATAL_ERROR) | |||
project(MMseqs CXX) | |||
message("-- Source Directory: ${CMAKE_CURRENT_SOURCE_DIR}") | |||
message("-- Project Directory: ${PROJECT_SOURCE_DIR}") | |||
cmake_minimum_required(VERSION 2.8.9 FATAL_ERROR) | |||
project(plass CXX) | |||
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_CURRENT_SOURCE_DIR}/cmake") | |||
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_CURRENT_SOURCE_DIR}/lib/mmseqs/cmake") | |||
|
|||
set(FRAMEWORK_ONLY 0 CACHE BOOL "Framework Mode") | |||
set(HAVE_SANITIZER 0 CACHE BOOL "Have Sanitizers") | |||
set(VERSION_OVERRIDE "" CACHE STRNG "Override version string in help and usage messages") | |||
|
|||
#Sanitizers | |||
if (${HAVE_SANITIZER}) | |||
include(FindUBSan) | |||
include(FindASan) | |||
include(FindMSan) | |||
include(FindTSan) | |||
endif () | |||
|
|||
if (NOT CMAKE_BUILD_TYPE) | |||
set(CMAKE_BUILD_TYPE Release) | |||
endif (NOT CMAKE_BUILD_TYPE) | |||
|
|||
# find compiler | |||
if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") | |||
# using Clang | |||
message("-- Compiler is clang(++)") | |||
set(CMAKE_COMPILER_IS_CLANG 1) | |||
elseif ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU") | |||
# using GCC | |||
message("-- Compiler is GNU ") | |||
if (CMAKE_CXX_COMPILER_VERSION VERSION_LESS "4.6.0") | |||
message(FATAL_ERROR "Insufficient gcc version") | |||
endif () | |||
elseif ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Intel") | |||
# using Intel C++ | |||
message("-- Compiler is icc(++)") | |||
set(CMAKE_COMPILER_IS_ICC 1) | |||
endif () | |||
|
|||
# set flags | |||
set(MMSEQS_CXX_FLAGS "-std=c++0x -m64") | |||
|
|||
# Compiler-specific features | |||
if (CMAKE_COMPILER_IS_CLANG) | |||
set(CMAKE_XCODE_ATTRIBUTE_CLANG_CXX_LANGUAGE_STANDARD "c++11") | |||
set(CMAKE_XCODE_ATTRIBUTE_CLANG_CXX_LIBRARY "libc++") | |||
set(MMSEQS_CXX_FLAGS "${MMSEQS_CXX_FLAGS} -stdlib=libc++") | |||
endif () | |||
|
|||
set(FRAMEWORK_ONLY 1 CACHE INTERNAL "" FORCE) | |||
include(MMseqsSetupDerivedTarget) | |||
add_subdirectory(lib/mmseqs) | |||
add_subdirectory(data) | |||
include_directories(lib) | |||
include_directories(lib/kseq) | |||
include_directories(lib/simd) | |||
include_directories(lib/gzstream) | |||
include_directories(lib/alp) | |||
include_directories(lib/cacode) | |||
include_directories(lib/ksw2) | |||
include_directories(lib/kerasify) | |||
add_subdirectory(lib/kerasify) | |||
add_subdirectory(lib/cacode) | |||
add_subdirectory(lib/alp) | |||
add_subdirectory(lib/ksw2) | |||
add_subdirectory(data) | |||
add_subdirectory(src) | |||
if (NOT FRAMEWORK_ONLY) | |||
add_subdirectory(util) | |||
endif () |
@@ -1,24 +1,17 @@ | |||
FROM alpine:latest as mmseqs-builder | |||
FROM alpine:latest AS plass-builder | |||
|
|||
RUN apk add --no-cache gcc g++ cmake musl-dev vim git ninja zlib-dev bzip2-dev | |||
RUN apk add --no-cache gcc g++ cmake musl-dev git ninja | |||
|
|||
WORKDIR /opt/mmseqs | |||
WORKDIR /opt/plass | |||
ADD . . | |||
|
|||
RUN git submodule init && git submodule update | |||
|
|||
WORKDIR build_sse | |||
RUN cmake -G Ninja -DHAVE_SSE4_1=1 -DHAVE_MPI=0 -DHAVE_TESTS=0 -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=. .. | |||
RUN cmake -G Ninja -DHAVE_SSE=1 -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=. .. | |||
RUN ninja && ninja install | |||
|
|||
WORKDIR ../build_avx | |||
RUN cmake -G Ninja -DHAVE_AVX2=1 -DHAVE_MPI=0 -DHAVE_TESTS=0 -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=. .. | |||
RUN cmake -G Ninja -DHAVE_AVX=1 -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=. .. | |||
RUN ninja && ninja install | |||
|
|||
FROM alpine:latest | |||
MAINTAINER Milot Mirdita <milot@mirdita.de> | |||
RUN apk add --no-cache gawk bash grep libstdc++ libgomp zlib libbz2 | |||
|
|||
COPY --from=mmseqs-builder /opt/mmseqs/build_sse/bin/mmseqs /usr/local/bin/mmseqs_sse42 | |||
COPY --from=mmseqs-builder /opt/mmseqs/build_avx/bin/mmseqs /usr/local/bin/mmseqs_avx2 | |||
ADD util/mmseqs_wrapper.sh /usr/local/bin/mmseqs | |||
|
|||
CMD ["mmseqs"] |

Oops, something went wrong.
0 comments on commit
5ab02ed