Skip to content

Commit

Permalink
Merge pull request iqtree#401 from iqtree/Alisim_mpi
Browse files Browse the repository at this point in the history
Disable compiling iqtree2-aa
  • Loading branch information
bqminh authored Feb 6, 2025
2 parents e6a489c + d95c47d commit 1a36251
Showing 1 changed file with 31 additions and 21 deletions.
52 changes: 31 additions & 21 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -202,6 +202,15 @@ else()
set(TARGET_CMAPLE "")
endif()

option(USE_CMAPLE_AA "Integrate CMAPLE-AA" OFF)

if (USE_CMAPLE_AA STREQUAL "ON")
message("Integrate CMAPLE_AA: ON")
#add_definitions(-DUSE_CMAPLE)
else()
message("Integrate CMAPLE_AA: OFF")
endif()


##################################################################
# Detect target platforms
Expand All @@ -227,7 +236,8 @@ elseif (APPLE)
else()
# supports the first version changed from OS X to macOS
add_definitions("--target=x86_64-apple-macos10.12")
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} --target=x86_64-apple-macos10.12")
set(CMAKE_OSX_DEPLOYMENT_TARGET 10.12)
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} --target=x86_64-apple-macos10.12")
endif()
endif()
SET(CMAKE_FIND_LIBRARY_SUFFIXES .a ${CMAKE_FIND_LIBRARY_SUFFIXES})
Expand Down Expand Up @@ -782,7 +792,7 @@ else()
)
endif()

if (USE_CMAPLE STREQUAL "ON")
if (USE_CMAPLE_AA STREQUAL "ON")
add_executable(iqtree2-aa
obsolete/parsmultistate.cpp
obsolete/parsmultistate.h
Expand All @@ -792,22 +802,22 @@ endif()
if(Backtrace_FOUND)
include_directories(${Backtrace_INCLUDE_DIR})
target_link_libraries(iqtree2 ${Backtrace_LIBRARY})
if (USE_CMAPLE STREQUAL "ON")
if (USE_CMAPLE_AA STREQUAL "ON")
target_link_libraries(iqtree2-aa ${Backtrace_LIBRARY})
endif()
endif(Backtrace_FOUND)

if (USE_BOOSTER)
target_link_libraries(iqtree2 booster)
if (USE_CMAPLE STREQUAL "ON")
if (USE_CMAPLE_AA STREQUAL "ON")
target_link_libraries(iqtree2-aa booster)
endif()
endif()

if (NOT IQTREE_FLAGS MATCHES "avx" AND NOT IQTREE_FLAGS MATCHES "fma")
if (NOT IQTREE_FLAGS MATCHES "nosse")
set_target_properties(iqtree2 ncl nclextra utils pda lbfgsb whtest sprng vectorclass model gsl alignment tree simulator yaml-cpp phyloYAML main ${TARGET_CMAPLE} PROPERTIES COMPILE_FLAGS "${SSE_FLAGS}")
if (USE_CMAPLE STREQUAL "ON")
if (USE_CMAPLE_AA STREQUAL "ON")
set_target_properties(iqtree2-aa ncl nclextra utils pda lbfgsb whtest sprng vectorclass model gsl alignment tree simulator yaml-cpp phyloYAML main-aa maple-aa PROPERTIES COMPILE_FLAGS "${SSE_FLAGS}")
endif()
if (USE_TERRAPHAST)
Expand Down Expand Up @@ -852,7 +862,7 @@ if (NOT IQTREE_FLAGS MATCHES "single")
set(THREAD_LIB "pthreadVC2")
elseif(CLANG AND WIN32)
target_link_libraries(iqtree2 ${PROJECT_SOURCE_DIR}/lib/libiomp5md.dll)
if (USE_CMAPLE STREQUAL "ON")
if (USE_CMAPLE_AA STREQUAL "ON")
target_link_libraries(iqtree2-aa ${PROJECT_SOURCE_DIR}/lib/libiomp5md.dll)
endif()
endif()
Expand All @@ -862,28 +872,28 @@ endif()
target_link_libraries(iqtree2 pll ncl nclextra utils pda lbfgsb whtest sprng vectorclass model
gsl alignment tree simulator terrace yaml-cpp phyloYAML main ${TARGET_CMAPLE} ${PLATFORM_LIB} ${STD_LIB} ${THREAD_LIB} ${ATOMIC_LIB})

if (USE_CMAPLE STREQUAL "ON")
if (USE_CMAPLE_AA STREQUAL "ON")
target_link_libraries(iqtree2-aa pll ncl nclextra utils pda lbfgsb whtest sprng vectorclass model
gsl alignment tree simulator terrace yaml-cpp phyloYAML main-aa maple-aa ${PLATFORM_LIB} ${STD_LIB} ${THREAD_LIB} ${ATOMIC_LIB})
endif()

if (USE_TERRAPHAST)
target_link_libraries(iqtree2 terracetphast)
if (USE_CMAPLE STREQUAL "ON")
if (USE_CMAPLE_AA STREQUAL "ON")
target_link_libraries(iqtree2-aa terracetphast)
endif()
endif()

if (USE_LSD2)
target_link_libraries(iqtree2 lsd2)
if (USE_CMAPLE STREQUAL "ON")
if (USE_CMAPLE_AA STREQUAL "ON")
target_link_libraries(iqtree2-aa lsd2)
endif()
endif()

if (NOT IQTREE_FLAGS MATCHES "nosse")
target_link_libraries(iqtree2 kernelsse)
if (USE_CMAPLE STREQUAL "ON")
if (USE_CMAPLE_AA STREQUAL "ON")
target_link_libraries(iqtree2-aa kernelsse)
endif()
endif()
Expand All @@ -892,7 +902,7 @@ endif()
if (IQTREE_FLAGS MATCHES "mpi")
if (NOT CMAKE_CXX_COMPILER MATCHES "mpi")
target_link_libraries(iqtree2 ${MPI_CXX_LIBRARIES})
if (USE_CMAPLE STREQUAL "ON")
if (USE_CMAPLE_AA STREQUAL "ON")
target_link_libraries(iqtree2-aa ${MPI_CXX_LIBRARIES})
endif()
endif()
Expand All @@ -901,12 +911,12 @@ endif()
# SSE, AVX etc. libraries
if (NOT BINARY32 AND NOT IQTREE_FLAGS MATCHES "novx")
target_link_libraries(iqtree2 pllavx kernelavx kernelfma)
if (USE_CMAPLE STREQUAL "ON")
if (USE_CMAPLE_AA STREQUAL "ON")
target_link_libraries(iqtree2-aa pllavx kernelavx kernelfma)
endif()
if (IQTREE_FLAGS MATCHES "KNL")
target_link_libraries(iqtree2 kernelavx512)
if (USE_CMAPLE STREQUAL "ON")
if (USE_CMAPLE_AA STREQUAL "ON")
target_link_libraries(iqtree2-aa kernelavx512)
endif()
endif()
Expand All @@ -915,20 +925,20 @@ endif()
# setup the executable name
##################################################################
set_target_properties(iqtree2 PROPERTIES OUTPUT_NAME "iqtree2${EXE_SUFFIX}")
if (USE_CMAPLE STREQUAL "ON")
if (USE_CMAPLE_AA STREQUAL "ON")
set_target_properties(iqtree2-aa PROPERTIES OUTPUT_NAME "iqtree2-aa${EXE_SUFFIX}")
endif()

# strip the release build
if (NOT IQTREE_FLAGS MATCHES "nostrip" AND CMAKE_BUILD_TYPE STREQUAL "Release" AND (GCC OR CLANG) AND NOT APPLE) # strip is not necessary for MSVC
if (WIN32)
ADD_CUSTOM_COMMAND(TARGET iqtree2 POST_BUILD COMMAND strip $<TARGET_FILE:iqtree2>)
if (USE_CMAPLE STREQUAL "ON")
if (USE_CMAPLE_AA STREQUAL "ON")
ADD_CUSTOM_COMMAND(TARGET iqtree2-aa POST_BUILD COMMAND strip $<TARGET_FILE:iqtree2-aa>)
endif()
elseif (NOT APPLE)
ADD_CUSTOM_COMMAND(TARGET iqtree2 POST_BUILD COMMAND strip $<TARGET_FILE:iqtree2>)
if (USE_CMAPLE STREQUAL "ON")
if (USE_CMAPLE_AA STREQUAL "ON")
ADD_CUSTOM_COMMAND(TARGET iqtree2-aa POST_BUILD COMMAND strip $<TARGET_FILE:iqtree2-aa>)
endif()
endif()
Expand All @@ -944,18 +954,18 @@ if (WIN32)
if (MSVC)
if (CLANG_UNDER_VS)
ADD_CUSTOM_COMMAND(TARGET iqtree2 POST_BUILD COMMAND copy "iqtree2${EXE_SUFFIX}.exe" "iqtree2${EXE_SUFFIX}-click.exe")
if (USE_CMAPLE STREQUAL "ON")
if (USE_CMAPLE_AA STREQUAL "ON")
ADD_CUSTOM_COMMAND(TARGET iqtree2-aa POST_BUILD COMMAND copy "iqtree2-aa${EXE_SUFFIX}.exe" "iqtree2-aa${EXE_SUFFIX}-click.exe")
endif()
else()
ADD_CUSTOM_COMMAND(TARGET iqtree2 POST_BUILD COMMAND copy "Release\\iqtree2${EXE_SUFFIX}.exe" "Release\\iqtree2${EXE_SUFFIX}-click.exe")
if (USE_CMAPLE STREQUAL "ON")
if (USE_CMAPLE_AA STREQUAL "ON")
ADD_CUSTOM_COMMAND(TARGET iqtree2-aa POST_BUILD COMMAND copy "Release\\iqtree2-aa${EXE_SUFFIX}.exe" "Release\\iqtree2-aa${EXE_SUFFIX}-click.exe")
endif()
endif()
else()
ADD_CUSTOM_COMMAND(TARGET iqtree2 POST_BUILD COMMAND copy "iqtree2${EXE_SUFFIX}.exe" "iqtree2${EXE_SUFFIX}-click.exe")
if (USE_CMAPLE STREQUAL "ON")
if (USE_CMAPLE_AA STREQUAL "ON")
ADD_CUSTOM_COMMAND(TARGET iqtree2-aa POST_BUILD COMMAND copy "iqtree2-aa${EXE_SUFFIX}.exe" "iqtree2-aa${EXE_SUFFIX}-click.exe")
endif()
endif()
Expand All @@ -965,7 +975,7 @@ endif()
# add the install targets
##############################################################
install (TARGETS iqtree2 DESTINATION bin)
if (USE_CMAPLE STREQUAL "ON")
if (USE_CMAPLE_AA STREQUAL "ON")
install (TARGETS iqtree2-aa DESTINATION bin)
endif()
install (FILES "${PROJECT_SOURCE_DIR}/example/models.nex" DESTINATION .)
Expand All @@ -975,7 +985,7 @@ install (FILES "${PROJECT_SOURCE_DIR}/example/example.cf" DESTINATION .)

if (WIN32)
install (FILES "${BINARY_DIR}/iqtree2${EXE_SUFFIX}-click.exe" DESTINATION bin)
if (USE_CMAPLE STREQUAL "ON")
if (USE_CMAPLE_AA STREQUAL "ON")
install (FILES "${BINARY_DIR}/iqtree2-aa${EXE_SUFFIX}-click.exe" DESTINATION bin)
endif()
if (NOT IQTREE_FLAGS MATCHES "single" AND MSVC)
Expand Down

0 comments on commit 1a36251

Please sign in to comment.