From 977d4decb4c7ca85395012f2b52a5e6c522a1c9c Mon Sep 17 00:00:00 2001 From: sdcb Date: Fri, 1 Dec 2017 18:18:53 +0800 Subject: [PATCH] [vlpp] initial create --- ports/vlpp/CMakeLists.txt | 37 +++++++++++++++++++++++++++++++++++++ ports/vlpp/CONTROL | 3 +++ ports/vlpp/portfile.cmake | 28 ++++++++++++++++++++++++++++ 3 files changed, 68 insertions(+) create mode 100644 ports/vlpp/CMakeLists.txt create mode 100644 ports/vlpp/CONTROL create mode 100644 ports/vlpp/portfile.cmake diff --git a/ports/vlpp/CMakeLists.txt b/ports/vlpp/CMakeLists.txt new file mode 100644 index 000000000..238600f6e --- /dev/null +++ b/ports/vlpp/CMakeLists.txt @@ -0,0 +1,37 @@ +cmake_minimum_required(VERSION 3.3.0) + +project(Vlpp VERSION 0.9.3.1 LANGUAGES CXX) + +# Sources +set(SRCS + Import/Vlpp.cpp + Import/VlppWorkflow.cpp + Import/VlppWorkflowCompiler.cpp) +set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /bigobj") + +# Create and configure the target +add_library(Vlpp ${SRCS}) + +# target_compile_definitions +target_compile_definitions(Vlpp PRIVATE UNICODE) +target_compile_definitions(Vlpp PRIVATE _UNICODE) + +target_include_directories(Vlpp PRIVATE ${PROJECT_SOURCE_DIR}/Import) + +# Install +install( + TARGETS Vlpp + RUNTIME DESTINATION "bin" + LIBRARY DESTINATION "lib" + ARCHIVE DESTINATION "lib" + ) + +if (NOT DEFINED SKIP_HEADERS) + install( + FILES + Import/Vlpp.h + Import/VlppWorkflow.h + Import/VlppWorkflowCompiler.h + DESTINATION "include" + ) +endif() diff --git a/ports/vlpp/CONTROL b/ports/vlpp/CONTROL new file mode 100644 index 000000000..aa8381cae --- /dev/null +++ b/ports/vlpp/CONTROL @@ -0,0 +1,3 @@ +Source: vlpp +Version: 0.9.3.1 +Description: Common C++ construction, including string operation / generic container / linq / General-LR parser generator / multithreading / reflection for C++ / etc diff --git a/ports/vlpp/portfile.cmake b/ports/vlpp/portfile.cmake new file mode 100644 index 000000000..f607b865f --- /dev/null +++ b/ports/vlpp/portfile.cmake @@ -0,0 +1,28 @@ +if (VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) + message(STATUS "Warning: Dynamic building not supported yet. Building static.") + set(VCPKG_LIBRARY_LINKAGE static) +endif() + +include(vcpkg_common_functions) +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/Release-0.9.3.1) +vcpkg_download_distfile(ARCHIVE + URLS "https://github.com/vczh-libraries/Release/archive/0.9.3.1.tar.gz" + FILENAME "GacUI-0.9.3.1.tar.gz" + SHA512 f284d3c78f8ae54102457b2cdc4fcee4b8da9a72d13bb325c7c7269261c5b0789eeb7340b0409b2b37294d68edb558503be131948aea3cb53582900339d26b54 +) +vcpkg_extract_source_archive(${ARCHIVE}) +file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA + OPTIONS_DEBUG -DSKIP_HEADERS=1 +) + +vcpkg_install_cmake() +vcpkg_copy_pdbs() + +file(REMOVE_RECURSE ${CURRENT_PACKAGE_DIR}/debug/include) + +# Handle copyright +file(INSTALL ${SOURCE_PATH}/LICENSE.md DESTINATION ${CURRENT_PACKAGES_DIR}/share/vlpp RENAME copyright)