diff options
| author | Sean Farrell <sean.farrell@rioki.org> | 2020-09-01 02:58:24 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-08-31 17:58:24 -0700 |
| commit | 2045a0e1ddaa36edc90554d88e4240a3342f3616 (patch) | |
| tree | fe8b1fa5a0a0412b59a76e65935367c9f30d7400 | |
| parent | b1bdebe4d0bbc304a9765d29de6a8176de22eae7 (diff) | |
| download | vcpkg-2045a0e1ddaa36edc90554d88e4240a3342f3616.tar.gz vcpkg-2045a0e1ddaa36edc90554d88e4240a3342f3616.zip | |
[libxmlmm ] Add new port libxmlmm 0.6.0 (#13139)
| -rw-r--r-- | ports/libxmlmm/CMakeLists.txt | 59 | ||||
| -rw-r--r-- | ports/libxmlmm/CONTROL | 5 | ||||
| -rw-r--r-- | ports/libxmlmm/portfile.cmake | 23 |
3 files changed, 87 insertions, 0 deletions
diff --git a/ports/libxmlmm/CMakeLists.txt b/ports/libxmlmm/CMakeLists.txt new file mode 100644 index 000000000..721641a64 --- /dev/null +++ b/ports/libxmlmm/CMakeLists.txt @@ -0,0 +1,59 @@ +cmake_minimum_required(VERSION 3.8) +project(libxmlmm CXX) + +set(CMAKE_SHARED_LIBRARY_PREFIX) +set(CMAKE_STATIC_LIBRARY_PREFIX) + +find_package(LibXml2 REQUIRED) + +set(HEADERS_LIBXMLMM + libxmlmm/Attribute.h + libxmlmm/CData.h + libxmlmm/Comment.h + libxmlmm/Content.h + libxmlmm/defines.h + libxmlmm/Document.h + libxmlmm/Element.h + libxmlmm/exceptions.h + libxmlmm/libxmlmm.h + libxmlmm/LibXmlSentry.h + libxmlmm/Node.h + libxmlmm/ProcessingInstruction.h + libxmlmm/Text.h + libxmlmm/utils.h +) + +set(SOURCES_LIBXMLMM + libxmlmm/Attribute.cpp + libxmlmm/CData.cpp + libxmlmm/Comment.cpp + libxmlmm/Content.cpp + libxmlmm/Document.cpp + libxmlmm/Element.cpp + libxmlmm/LibXmlSentry.cpp + libxmlmm/Node.cpp + libxmlmm/ProcessingInstruction.cpp + libxmlmm/Text.cpp + libxmlmm/utils.cpp +) + +add_library(libxmlmm ${SOURCES_LIBXMLMM}) +include_directories(${LIBXML2_INCLUDE_DIR}) +target_link_libraries (libxmlmm ${LIBXML2_LIBRARIES}) + +set_target_properties(libxmlmm PROPERTIES + CXX_STANDARD 17 + PUBLIC_HEADER "${HEADERS_LIBXMLMM}" +) + +target_include_directories(libxmlmm PUBLIC + $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/libxmlmm> + $<INSTALL_INTERFACE:include/libxmlmm>) + +install(TARGETS ${PROJECT_NAME} + EXPORT litehtmlTargets + RUNTIME DESTINATION bin + LIBRARY DESTINATION lib + ARCHIVE DESTINATION lib + PUBLIC_HEADER DESTINATION include/libxmlmm +) diff --git a/ports/libxmlmm/CONTROL b/ports/libxmlmm/CONTROL new file mode 100644 index 000000000..a943bcf28 --- /dev/null +++ b/ports/libxmlmm/CONTROL @@ -0,0 +1,5 @@ +Source: libxmlmm +Version: 0.6.0 +Homepage: https://github.com/rioki/libxmlmm +Description: Libxmlmm is a C++ wrapper for libxml 2.0 that only relies on standard C++ and libxml2. +Build-Depends: libxml2 diff --git a/ports/libxmlmm/portfile.cmake b/ports/libxmlmm/portfile.cmake new file mode 100644 index 000000000..552bd6cb2 --- /dev/null +++ b/ports/libxmlmm/portfile.cmake @@ -0,0 +1,23 @@ +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO rioki/libxmlmm + REF r0.6 + SHA512 4f619e730de2f88b891ef31dd7ced2e6be75fff7f3852ec178843bf8d099d2e1ea84e0fcde35ff7fefc201b026f63e4b5d55f88e48334c49a0333be0327894df + HEAD_REF master +) + +file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA +) + +vcpkg_install_cmake() + +# Handle copyright +configure_file(${SOURCE_PATH}/README.md ${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright COPYONLY) + +vcpkg_copy_pdbs() + +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") |
