aboutsummaryrefslogtreecommitdiff
path: root/vcpkg/ports/liblzf/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'vcpkg/ports/liblzf/CMakeLists.txt')
-rw-r--r--vcpkg/ports/liblzf/CMakeLists.txt46
1 files changed, 46 insertions, 0 deletions
diff --git a/vcpkg/ports/liblzf/CMakeLists.txt b/vcpkg/ports/liblzf/CMakeLists.txt
new file mode 100644
index 0000000..91292e2
--- /dev/null
+++ b/vcpkg/ports/liblzf/CMakeLists.txt
@@ -0,0 +1,46 @@
+# Based on http://cvs.schmorp.de/liblzf/Makefile.in?view=markup
+cmake_minimum_required(VERSION 3.15)
+project(liblzf LANGUAGES C)
+
+## Build ##
+
+add_library(liblzf
+ lzf_c.c
+ lzf_d.c
+ liblzf.def
+)
+set_target_properties(liblzf PROPERTIES OUTPUT_NAME lzf)
+target_include_directories(liblzf INTERFACE $<INSTALL_INTERFACE:include>)
+if(MINGW)
+ target_compile_definitions(liblzf PRIVATE "_int64=long long")
+endif()
+
+## Install ##
+
+include(GNUInstallDirs)
+install(TARGETS liblzf
+ EXPORT unofficial-liblzf-targets
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
+)
+install(FILES lzf.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
+
+## Write config ##
+
+set(LIBLZF_SHARE_DIR share/unofficial-liblzf)
+install(EXPORT unofficial-liblzf-targets
+ FILE unofficial-liblzf-config.cmake
+ NAMESPACE unofficial::liblzf::
+ DESTINATION ${LIBLZF_SHARE_DIR}
+)
+include(CMakePackageConfigHelpers)
+write_basic_package_version_file(
+ "${CMAKE_CURRENT_BINARY_DIR}/unofficial-liblzf-config-version.cmake"
+ VERSION ${VERSION}
+ COMPATIBILITY SameMajorVersion
+)
+install(FILES
+ "${CMAKE_CURRENT_BINARY_DIR}/unofficial-liblzf-config-version.cmake"
+ DESTINATION ${LIBLZF_SHARE_DIR}
+)