Files
macports-ports/math/z3/files/libz3-static-4.8.5.diff
2020-11-05 10:21:01 -07:00

48 lines
2.1 KiB
Diff

--- src/CMakeLists.txt.orig 2019-08-20 17:53:35.000000000 -0600
+++ src/CMakeLists.txt 2019-08-20 18:01:51.000000000 -0600
@@ -111,6 +111,7 @@
set(lib_type "STATIC")
endif()
add_library(libz3 ${lib_type} ${object_files})
+add_library(libz3-static STATIC ${object_files})
set_target_properties(libz3 PROPERTIES
# VERSION determines the version in the filename of the shared library.
# SOVERSION determines the value of the DT_SONAME field on ELF platforms.
@@ -122,6 +123,11 @@
VERSION ${Z3_VERSION}
SOVERSION ${Z3_VERSION_MAJOR}.${Z3_VERSION_MINOR})
+set_target_properties(libz3-static PROPERTIES
+ VERSION ${Z3_VERSION}
+ SOVERSION ${Z3_VERSION_MAJOR}.${Z3_VERSION_MINOR})
+set_target_properties(libz3-static PROPERTIES OUTPUT_NAME z3)
+
if (NOT MSVC)
# On UNIX like platforms if we don't change the OUTPUT_NAME
# the library gets a name like ``liblibz3.so`` so we change it
@@ -136,6 +142,7 @@
# shared library the dependent libraries are specified on the link command line
# so that if those are also shared libraries they are referenced by `libz3.so`.
target_link_libraries(libz3 PRIVATE ${Z3_DEPENDENT_LIBS})
+target_link_libraries(libz3-static PRIVATE ${Z3_DEPENDENT_LIBS})
# This is currently only for the OpenMP flags. It needs to be set
# via `target_link_libraries()` rather than `z3_append_linker_flag_list_to_target()`
@@ -143,6 +150,7 @@
# the link dependencies need to be exported too.
foreach (flag_name ${Z3_DEPENDENT_EXTRA_CXX_LINK_FLAGS})
target_link_libraries(libz3 PRIVATE ${flag_name})
+ target_link_libraries(libz3-static PRIVATE ${flag_name})
endforeach()
# Declare which header file are the public header files of libz3
@@ -169,7 +177,7 @@
set_property(TARGET libz3 APPEND PROPERTY
PUBLIC_HEADER "${CMAKE_CURRENT_BINARY_DIR}/util/z3_version.h")
-install(TARGETS libz3
+install(TARGETS libz3 libz3-static
EXPORT Z3_EXPORTED_TARGETS
LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}"
ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}" # On Windows this installs ``libz3.lib`` which CMake calls the "corresponding import library". Do we want this installed?