Restore correct dynamics linking behaviour
authorPaul Bauer <paul.bauer.q@gmail.com>
Thu, 12 Nov 2020 08:56:08 +0000 (09:56 +0100)
committerPaul Bauer <paul.bauer.q@gmail.com>
Thu, 12 Nov 2020 08:56:08 +0000 (09:56 +0100)
Recent changes to the way shared libraries are managed introduced a bug
in setting up static linking by default when building mdrun only.

Fixes #3806

cmake/gmxManageSharedLibraries.cmake

index 9c150828a88fabf52d03fff2d7475ac0ccb1fb00..53c0ec512416fd7611e9f36b5de8a5c34625144e 100644 (file)
@@ -53,12 +53,14 @@ else()
     endif()
     SET(SHARED_LIBS_DEFAULT OFF)
 endif()
+
 if (GMX_PREFER_STATIC_LIBS)
     if (NOT DEFINED BUILD_SHARED_LIBS AND SHARED_LIBS_DEFAULT)
         message("Searching for static libraries requested, so the GROMACS libraries will also be static (BUILD_SHARED_LIBS=OFF)")
     endif()
     set(SHARED_LIBS_DEFAULT OFF)
 endif()
+
 if (NOT GMX_BUILD_SHARED_EXE)
     set(GMX_PREFER_STATIC_LIBS_DEFAULT ON)
     set(SHARED_LIBS_DEFAULT OFF)
@@ -68,7 +70,7 @@ endif()
 option(BUILD_SHARED_LIBS "Enable shared libraries (can be problematic e.g. with MPI, or on some HPC systems)" ${SHARED_LIBS_DEFAULT})
 
 set(GMX_PREFER_STATIC_LIBS_DEFAULT OFF)
-if (WIN32 OR NOT BUILD_SHARED_LIBS)
+if (WIN32 AND NOT BUILD_SHARED_LIBS)
     set(GMX_PREFER_STATIC_LIBS_DEFAULT ON)
 endif()