From 0f8532f6c703dd845cfa1db3b9410724cb871031 Mon Sep 17 00:00:00 2001 From: Minh Bui Date: Thu, 6 Feb 2025 11:24:18 +1100 Subject: [PATCH 1/4] update latest cmaple --- cmaple | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmaple b/cmaple index fce5f2fe8..ad2bd9f69 160000 --- a/cmaple +++ b/cmaple @@ -1 +1 @@ -Subproject commit fce5f2fe8eae28a195222f8cba642fb2e994fdfc +Subproject commit ad2bd9f6918cdd35d3af6e6cb5eb7a4d98a76376 From ff4fad984deefbf571432baaa07026a1ee5d81bd Mon Sep 17 00:00:00 2001 From: NhanLT Date: Thu, 6 Feb 2025 12:07:00 +1100 Subject: [PATCH 2/4] Disable compiling iqtree2-aa --- CMakeLists.txt | 61 +++++++++++++++++++++++++++++--------------------- 1 file changed, 36 insertions(+), 25 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 68b4898a0..1c1e6f45a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -191,7 +191,7 @@ endif() ################################################################## # Include the CMAPLE library ################################################################## -option(USE_CMAPLE "Integrate CMAPLE" OFF) +option(USE_CMAPLE "Integrate CMAPLE" ON) if (USE_CMAPLE STREQUAL "ON") message("Integrate CMAPLE: ON") @@ -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 @@ -216,16 +225,18 @@ if (WIN32) elseif (APPLE) message("Target OS : Mac OS X") if(OSX_NATIVE_ARCHITECTURE STREQUAL "arm64") - add_definitions("--target=arm64-apple-macos10.5") - set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} --target=arm64-apple-macos12.0.1") + add_definitions("--target=arm64-apple-macos11.0.1") + # set the first version of mac 11 that supports ARM + set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} --target=arm64-apple-macos11.0.1") else() # to be compatible back to Mac OS X 10.7 if (IQTREE_FLAGS MATCHES "oldmac") add_definitions("-mmacosx-version-min=10.5") set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -mmacosx-version-min=10.5") else() - add_definitions("--target=x86_64-apple-macos10.7") - set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} --target=x86_64-apple-macos10.7") + # 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") endif() endif() SET(CMAKE_FIND_LIBRARY_SUFFIXES .a ${CMAKE_FIND_LIBRARY_SUFFIXES}) @@ -780,7 +791,7 @@ else() ) endif() -if (USE_CMAPLE STREQUAL "ON") +if (USE_CMAPLE_AA STREQUAL "ON") add_executable(iqtree2-aa obsolete/parsmultistate.cpp obsolete/parsmultistate.h @@ -790,14 +801,14 @@ 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() @@ -805,7 +816,7 @@ 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) @@ -850,7 +861,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() @@ -860,28 +871,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() @@ -890,7 +901,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() @@ -899,12 +910,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() @@ -913,7 +924,7 @@ 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() @@ -921,12 +932,12 @@ endif() 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 $) - if (USE_CMAPLE STREQUAL "ON") + if (USE_CMAPLE_AA STREQUAL "ON") ADD_CUSTOM_COMMAND(TARGET iqtree2-aa POST_BUILD COMMAND strip $) endif() elseif (NOT APPLE) ADD_CUSTOM_COMMAND(TARGET iqtree2 POST_BUILD COMMAND strip $) - if (USE_CMAPLE STREQUAL "ON") + if (USE_CMAPLE_AA STREQUAL "ON") ADD_CUSTOM_COMMAND(TARGET iqtree2-aa POST_BUILD COMMAND strip $) endif() endif() @@ -942,18 +953,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() @@ -963,7 +974,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 .) @@ -973,7 +984,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) From ac2dce7b30b8f3fc1ba40024df9f18146a0039b7 Mon Sep 17 00:00:00 2001 From: NhanLT Date: Thu, 6 Feb 2025 12:38:18 +1100 Subject: [PATCH 3/4] set CMAKE_OSX_DEPLOYMENT_TARGET at 10.12 to avoid warnings --- CMakeLists.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index 1c1e6f45a..6dacc487c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -236,6 +236,7 @@ elseif (APPLE) else() # supports the first version changed from OS X to macOS add_definitions("--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() From 9a5a27c9ac75b5f92314f0b928b22f2b7328c12e Mon Sep 17 00:00:00 2001 From: Minh Bui Date: Thu, 6 Feb 2025 13:47:04 +1100 Subject: [PATCH 4/4] resolve conflict --- CMakeLists.txt | 2 +- lsd2 | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 6dacc487c..30ab00b14 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -237,7 +237,7 @@ elseif (APPLE) # supports the first version changed from OS X to macOS add_definitions("--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") + 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}) diff --git a/lsd2 b/lsd2 index 125720d9d..c61110f3a 160000 --- a/lsd2 +++ b/lsd2 @@ -1 +1 @@ -Subproject commit 125720d9da1281642053713d9b094d5bff2ce9cf +Subproject commit c61110f3a4fa05325b45c97b2134792ff9d55d4c