diff options
Diffstat (limited to 'vcpkg/ports/duktape/CMakeLists.txt')
| -rw-r--r-- | vcpkg/ports/duktape/CMakeLists.txt | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/vcpkg/ports/duktape/CMakeLists.txt b/vcpkg/ports/duktape/CMakeLists.txt new file mode 100644 index 0000000..3b2054c --- /dev/null +++ b/vcpkg/ports/duktape/CMakeLists.txt @@ -0,0 +1,56 @@ +cmake_minimum_required(VERSION 3.13) + +option(CMAKE_VERBOSE_MAKEFILE "Create verbose makefile" OFF) +option(BUILD_SHARED_LIBS "Create duktape as a shared library" ON) + +project(duktape VERSION ${VERSION}) + +file(GLOB_RECURSE DUKTAPE_SOURCES "${CMAKE_CURRENT_LIST_DIR}/src/*.c") +file(GLOB_RECURSE DUKTAPE_HEADERS "${CMAKE_CURRENT_LIST_DIR}/src/*.h") + +add_library(duktape ${DUKTAPE_SOURCES} ${DUKTAPE_HEADERS}) +target_include_directories(duktape PRIVATE "${CMAKE_CURRENT_LIST_DIR}/src") +target_include_directories(duktape PUBLIC "$<INSTALL_INTERFACE:include>") +set_target_properties(duktape PROPERTIES PUBLIC_HEADER "${DUKTAPE_HEADERS}") +set_target_properties(duktape PROPERTIES VERSION ${duktape_VERSION}) +set_target_properties(duktape PROPERTIES SOVERSION ${duktape_VERSION_MAJOR}) + +if (BUILD_SHARED_LIBS) + target_compile_definitions(duktape PRIVATE -DDUK_F_DLL_BUILD) +endif () + +install(TARGETS duktape + EXPORT duktapeTargets + ARCHIVE DESTINATION "lib" + LIBRARY DESTINATION "lib" + RUNTIME DESTINATION "bin" + PUBLIC_HEADER DESTINATION "include" + COMPONENT dev +) + +install(EXPORT duktapeTargets + FILE unofficial-duktape-config.cmake + NAMESPACE unofficial::duktape:: + DESTINATION "share/unofficial-duktape" +) + +export(PACKAGE duktape) + +include(CMakePackageConfigHelpers) +write_basic_package_version_file("${PROJECT_BINARY_DIR}/unofficial-duktape-config-version.cmake" + COMPATIBILITY SameMajorVersion +) + +install(FILES + "${PROJECT_BINARY_DIR}/unofficial-duktape-config-version.cmake" + DESTINATION "share/unofficial-duktape" +) + +set(prefix "") +set(LIBDIR "/lib") +set(VERSION "${duktape_VERSION}") +configure_file("${CMAKE_CURRENT_SOURCE_DIR}/duktape.pc.in" "${CMAKE_CURRENT_BINARY_DIR}/duktape.pc" @ONLY) +install( + FILES "${CMAKE_CURRENT_BINARY_DIR}/duktape.pc" + DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig" +) |