diff options
| author | Robert Schumacher <roschuma@microsoft.com> | 2018-03-25 10:29:20 -0700 |
|---|---|---|
| committer | Robert Schumacher <roschuma@microsoft.com> | 2018-03-25 10:29:20 -0700 |
| commit | 9c6698ab3446d7aed55103f785f0c00919a949fe (patch) | |
| tree | 7122479e925f784232b5ca166a51d38850299ab7 /ports | |
| parent | 21ef72d02a7ea840b3427bda2ea2705aeaef2f00 (diff) | |
| download | vcpkg-9c6698ab3446d7aed55103f785f0c00919a949fe.tar.gz vcpkg-9c6698ab3446d7aed55103f785f0c00919a949fe.zip | |
[lcm] Disable unexpected components. Only install one flavor. Don't delete DLL.
Diffstat (limited to 'ports')
| -rw-r--r-- | ports/lcm/CONTROL | 2 | ||||
| -rw-r--r-- | ports/lcm/only-install-one-flavor.patch | 19 | ||||
| -rw-r--r-- | ports/lcm/portfile.cmake | 30 |
3 files changed, 46 insertions, 5 deletions
diff --git a/ports/lcm/CONTROL b/ports/lcm/CONTROL index e6b9803fe..0cca68404 100644 --- a/ports/lcm/CONTROL +++ b/ports/lcm/CONTROL @@ -1,5 +1,5 @@ Source: lcm -Version: 1.3.95 +Version: 1.3.95-1 Build-Depends: glib Description: Lightweight Communications and Marshalling (LCM) LCM is a set of libraries and tools for message passing and data marshalling, targeted at real-time systems where high-bandwidth and low latency are critical. It provides a publish/subscribe message passing model and automatic marshalling/unmarshalling code generation with bindings for applications in a variety of programming languages. diff --git a/ports/lcm/only-install-one-flavor.patch b/ports/lcm/only-install-one-flavor.patch new file mode 100644 index 000000000..d22b83c23 --- /dev/null +++ b/ports/lcm/only-install-one-flavor.patch @@ -0,0 +1,19 @@ +diff --git a/lcm/CMakeLists.txt b/lcm/CMakeLists.txt
+index a706a85..639ec12 100644
+--- a/lcm/CMakeLists.txt
++++ b/lcm/CMakeLists.txt
+@@ -76,8 +76,12 @@ endif()
+ target_include_directories(lcm-coretypes INTERFACE
+ $<BUILD_INTERFACE:${lcm_SOURCE_DIR}>
+ )
+-
+-install(TARGETS lcm-coretypes lcm-static lcm
++if(BUILD_SHARED_LIBS)
++ set(INSTALL_TARGETS lcm)
++else()
++ set(INSTALL_TARGETS lcm-static)
++endif()
++install(TARGETS lcm-coretypes ${INSTALL_TARGETS}
+ EXPORT lcmTargets
+ RUNTIME DESTINATION bin
+ LIBRARY DESTINATION lib${LIB_SUFFIX}
diff --git a/ports/lcm/portfile.cmake b/ports/lcm/portfile.cmake index 98f34e2ca..b50139f62 100644 --- a/ports/lcm/portfile.cmake +++ b/ports/lcm/portfile.cmake @@ -8,15 +8,24 @@ vcpkg_from_github( HEAD_REF master ) +vcpkg_apply_patches( + SOURCE_PATH ${SOURCE_PATH} + PATCHES ${CMAKE_CURRENT_LIST_DIR}/only-install-one-flavor.patch +) + vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA OPTIONS + -DLCM_ENABLE_JAVA=OFF + -DLCM_ENABLE_LUA=OFF + -DLCM_ENABLE_PYTHON=OFF -DLCM_ENABLE_TESTS=OFF + -DLCM_INSTALL_M4MACROS=OFF + -DLCM_INSTALL_PKGCONFIG=OFF ) vcpkg_install_cmake() -vcpkg_copy_pdbs() vcpkg_fixup_cmake_targets(CONFIG_PATH cmake) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) @@ -25,9 +34,22 @@ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/share/aclocal) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/share/java) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/share/man) -file(COPY ${CURRENT_PACKAGES_DIR}/bin/lcm-gen.exe DESTINATION ${CURRENT_PACKAGES_DIR}/tools/lcm) +file(GLOB EXES ${CURRENT_PACKAGES_DIR}/bin/*.exe) +if(EXES) + file(COPY ${EXES} DESTINATION ${CURRENT_PACKAGES_DIR}/tools/lcm) + file(REMOVE ${EXES}) +endif() +file(GLOB DEBUG_EXES ${CURRENT_PACKAGES_DIR}/debug/bin/*.exe) +if(DEBUG_EXES) + file(REMOVE ${DEBUG_EXES}) +endif() + +if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin) +endif() + vcpkg_copy_tool_dependencies(${CURRENT_PACKAGES_DIR}/tools/lcm) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin) file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/lcm RENAME copyright) + +vcpkg_copy_pdbs() |
