diff options
| author | Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> | 2021-04-26 19:28:21 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-04-26 10:28:21 -0700 |
| commit | 546813ae7b9e2873dd3d38e78b27ac5582feae10 (patch) | |
| tree | 6acb3bf022bf9060c70c0665d3586bb33a60f4d9 /ports/lcm | |
| parent | a9b27ed5dffbf70b135eddb0c4729f3ca87f106c (diff) | |
| download | vcpkg-546813ae7b9e2873dd3d38e78b27ac5582feae10.tar.gz vcpkg-546813ae7b9e2873dd3d38e78b27ac5582feae10.zip | |
[glib up to gtk] update and make it work with meson (#13100)
* update glib to meson
* update ci baseline
* update glib to 2.66.3
remove cmakelists
* fix some minor meson issue but meson is still a mess
* add_bin_to_path to vcpkg_install_meson
* regen docs
* try fixing/touching all glib dependent ports
* fix libsigcpp-3 version
* fix glibmm
* fix gmime
* fix libcroco
* update libnice
* fix atk build
* update harfbuzz
* fix few builds
* update libxmlpp
* fix gdk-pixbuf
* fix gts
* gts add patch
* remove old libsigcpp
* add missing comma
* fix supports logic
* fix name mismatch
* restore original ci baseline.
* fix a lot of small details.
increment controls.
* fix harfbuzz & glib
* bump port version
* update port_versions
* fix version field
* update versions
* fix glib in harfbuzz
* update port versions
* silly uppercase type
* update port-versions
* fix cairo build
* update version
* fix atk
* update atk port-verisons
* fix gts public includes
* update versions
* fix cairomm
* fix pango
* fix ignition
* update versions.
* fix gtk
* fix librsvg
* update versions
* fix atk linux
* fix libgpod
* update versions
* fix lcm
* fix librsvg
* update pango and pangomm
* update pango to meson
* more updates
* update pixman
* fix cairo
* fix cairo
* some fixes
* reorder meson a bit
* add none.txt for meson
* fix x86_x64 to x86 "cross" builds
* add tiff pkgconfig
* update gdk-pixbuf
* fix tiff and jpeg
* add graphene
* fix gdk-pixbuf
* add sassc
* update gtk
* fix cairo complete build
* add harfbuzz inlcude in pango since meson does not add it into pkgconfig.
* fix gtk build. Remaining issue fix install script.
* fix gtk build
* fix io2d
* add supports field
* fix cartographer?
* fix librsvg build
* fix gtk build
* fix cartographer
* fix sassc on linux
* fix tiff and libjpeg pc files
* fix pixman x86
* _isnanf is undefined on arm-
* merge fix for make on arm64
* fix gdk-pixbuf on arm64-windows
* pixman remove test/demos.
should fix it on osx.
* [vcpkg_install_meson] add bin to path to run code generators
* [vcpkg_configure_meson]
deactivate native compiler in cross builds
make x86 on x86_x64 a native instead of a cross build
(as long as we are not building for UWP)
* pixman reenable UWP support.
* pixman reenable arm support
* add pixman:arm-uwp=fail to baseline
* update gtkmm
* remove double whitespaces
* gtk baseline
gtk dependency on cairo x11
remove double spaces in flags
* fix linux build
* native none again
* cairo fix cairo-script.pc
* comment out patch since the cairo changes should have fixed it.
* disable wayland backend in GTK since CI is missing system packages
* silly typo in cairo pc file correction
install lzo pc on windows
* remove double spaces in _FLAGS
remove unnecessary comments
* actually disabling wayland backend
* fix glib codegen issue having the wrong path
* try to fix paths in glib codegen
* integrate changes form #12860
* add the uwp patch back in
* deactivate extra harfbuzz shapers.
* vcpkg x-add-version --all --overwrite-version
* remove patches in tesseract.
* fix version
* rerun add-version
* add libgpod:x64-linux=fail to baseline due to missing system tools/libraries
* change regex to take double - into account.
* run x-add-version
* run format-manifest
* add missing removal of multiple spaces back into the regex
* remove ws diff change
* fix gtkmm the upstream way
* remove ws to reduce diff
* make glib build on osx
* format manifest
* run x-add-version
* add pthread dependency
* update baseline due to glib compiling on osx now.
* add meson as a dep to glib
* - add glib host dependencies
- switch to manifest of touched ports
* switch to manifest.
* [libxml2] add gnuinstalldirs
* [libxml2] add missing include of GNUInstallDirs
* add version info
* add include dir to pc files ....
* update version
* add UWP as crosscompiling target
* Apply suggestions from code review
* trying to fix cairo pthread detection on osx.
* fix libmicrohttpd by adding the required system frameworks on osx
* fix poppler by not removing the CXX standard
* fix missing coretext header from harfbuzz in pano
* fix formating issues
* fix librsvg on osx
* revert version changes
* bump version
* version stuff.
* fix graphene version stuff
* fix version stuff
* removing ports from ci baseline to cause me pain
* move cairomm:x64-linux=fail
to gtkmm:x64-linx=fail
remove pangomm:x64-osx=fail
* fix typo
* revert ws changes to vcpkg_install_meson
* update port version after merge
* version stuff
* fix fluidsynth by adding vcpkg_check_features
* move cairo to ci baseline on osx
* version stuff
* fluidsynth corrections
* more version stuff
* apply code review changes
* clean version stuff.
* update version stuff
* code review cleanup
* version stuff
* formating
* update version stuff again
* remove gdi again
* version stuff
* version stuff
* version baseline
* Apply strega-nil suggestions from code review
* run x-add-version
* reset versions to upstream/master
* v8 CONTROL -> json
* reset fluidsynth to upstream/master
* first batch of version-string -> version conversion
* second and last batch of version-string -> version conversions
* update version stuff
* disable gdi feature in harfbuzz (missing user32 linkage in qt5-base)
* version stuff
* Apply suggestions from code review
Co-authored-by: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com>
* Apply suggestions from code review
Co-authored-by: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com>
* more CR stuff
* update versions
* back out provision changes so that pr can be merged.
Co-authored-by: nicole mazzuca <mazzucan@outlook.com>
Co-authored-by: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com>
Diffstat (limited to 'ports/lcm')
| -rw-r--r-- | ports/lcm/CONTROL | 7 | ||||
| -rw-r--r-- | ports/lcm/fix-linux-build.patch | 127 | ||||
| -rw-r--r-- | ports/lcm/glib.link.patch | 30 | ||||
| -rw-r--r-- | ports/lcm/portfile.cmake | 2 | ||||
| -rw-r--r-- | ports/lcm/vcpkg.json | 13 |
5 files changed, 44 insertions, 135 deletions
diff --git a/ports/lcm/CONTROL b/ports/lcm/CONTROL deleted file mode 100644 index 6a20be1db..000000000 --- a/ports/lcm/CONTROL +++ /dev/null @@ -1,7 +0,0 @@ -Source: lcm -Version: 1.4.0 -Port-Version: 1 -Build-Depends: glib -Homepage: https://github.com/lcm-proj/lcm -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/fix-linux-build.patch b/ports/lcm/fix-linux-build.patch deleted file mode 100644 index 47ccf8b93..000000000 --- a/ports/lcm/fix-linux-build.patch +++ /dev/null @@ -1,127 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 6d3a4c2..da3bfc5 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -7,7 +7,7 @@ if(CMAKE_VERSION VERSION_LESS 3.7) - list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake/3.7") - endif() - --find_package(GLib2 REQUIRED) -+find_package(unofficial-glib CONFIG REQUIRED) - - # Configuration and utility functions - include(lcm-cmake/config.cmake NO_POLICY_SCOPE) -@@ -22,6 +22,11 @@ if (WIN32) - include_directories(${lcm_SOURCE_DIR}) - add_subdirectory(WinSpecific) - set(lcm-winport lcm-winport) -+ if(CMAKE_BUILD_TYPE STREQUAL Debug) -+ get_target_property(GLIB2_GLIB_RUNTIME unofficial::glib::glib IMPORTED_LOCATION_DEBUG) -+ elseif(CMAKE_BUILD_TYPE STREQUAL Release) -+ get_target_property(GLIB2_GLIB_RUNTIME unofficial::glib::glib IMPORTED_LOCATION_RELEASE) -+ endif() - get_filename_component(LCM_LCMGEN_PATH ${GLIB2_GLIB_RUNTIME} DIRECTORY) - set(LCM_USE_GLIB_RUNTIME "set(LCM_LCMGEN_PATH \"${LCM_LCMGEN_PATH}\")") - else() -diff --git a/lcm-logger/CMakeLists.txt b/lcm-logger/CMakeLists.txt -index 9aee9df..253af08 100644 ---- a/lcm-logger/CMakeLists.txt -+++ b/lcm-logger/CMakeLists.txt -@@ -1,9 +1,9 @@ - add_executable(lcm-logger lcm_logger.c glib_util.c) --target_link_libraries(lcm-logger -- lcm -- ${lcm-winport} -- GLib2::glib --) -+if(WIN32) -+ target_link_libraries(lcm-logger lcm ${lcm-winport} unofficial::glib::glib ws2_32) -+else() -+ target_link_libraries(lcm-logger lcm ${lcm-winport} unofficial::glib::glib) -+endif() - - add_executable(lcm-logplayer lcm_logplayer.c) - target_link_libraries(lcm-logplayer lcm ${lcm-winport}) -diff --git a/lcm/CMakeLists.txt b/lcm/CMakeLists.txt -index 639ec12..9da0c00 100644 ---- a/lcm/CMakeLists.txt -+++ b/lcm/CMakeLists.txt -@@ -60,10 +60,11 @@ foreach(lcm_lib lcm lcm-static) - $<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}> - ) - -- target_link_libraries(${lcm_lib} PRIVATE -- GLib2::glib -- ${CMAKE_THREAD_LIBS_INIT} -- ) -+ if(WIN32) -+ target_link_libraries(${lcm_lib} PRIVATE unofficial::glib::glib ${CMAKE_THREAD_LIBS_INIT} ws2_32) -+ else() -+ target_link_libraries(${lcm_lib} PRIVATE unofficial::glib::glib ${CMAKE_THREAD_LIBS_INIT}) -+ endif() - endforeach() - - generate_export_header(lcm STATIC_DEFINE LCM_STATIC) -diff --git a/lcmgen/CMakeLists.txt b/lcmgen/CMakeLists.txt -index 29354bb..d848b16 100644 ---- a/lcmgen/CMakeLists.txt -+++ b/lcmgen/CMakeLists.txt -@@ -43,7 +43,11 @@ if(_uses_sanitizers AND NOT LCM_SANITIZE_LCMGEN) - endif() - - add_executable(lcm-gen ${lcm-gen_sources}) --target_link_libraries(lcm-gen PRIVATE GLib2::glib) -+if(WIN32) -+ target_link_libraries(lcm-gen PRIVATE unofficial::glib::glib ws2_32) -+else() -+ target_link_libraries(lcm-gen PRIVATE unofficial::glib::glib) -+endif() - - install(TARGETS lcm-gen - EXPORT lcmTargets -diff --git a/liblcm-test/CMakeLists.txt b/liblcm-test/CMakeLists.txt -index bb24675..da041d9 100644 ---- a/liblcm-test/CMakeLists.txt -+++ b/liblcm-test/CMakeLists.txt -@@ -5,7 +5,11 @@ add_executable(lcm-source lcm-source.c) - target_link_libraries(lcm-source lcm ${lcm-winport}) - - add_executable(lcm-tester lcm-tester.c) --target_link_libraries(lcm-tester lcm GLib2::glib) -+if(WIN32) -+ target_link_libraries(lcm-tester lcm unofficial::glib::glib ws2_32) -+else() -+ target_link_libraries(lcm-tester lcm unofficial::glib::glib) -+endif() - - add_executable(lcm-example lcm-example.c) - target_link_libraries(lcm-example lcm) -@@ -14,13 +18,25 @@ if(WIN32) - endif() - - add_executable(lcm-logfilter lcm-logfilter.c) --target_link_libraries(lcm-logfilter lcm ${lcm-winport} GLib2::glib) -+if(WIN32) -+ target_link_libraries(lcm-logfilter lcm ${lcm-winport} unofficial::glib::glib ws2_32) -+else() -+ target_link_libraries(lcm-logfilter lcm ${lcm-winport} unofficial::glib::glib) -+endif() - - add_executable(lcm-buftest-receiver buftest-receiver.c) --target_link_libraries(lcm-buftest-receiver lcm GLib2::glib) -+if(WIN32) -+ target_link_libraries(lcm-buftest-receiver lcm unofficial::glib::glib ws2_32) -+else() -+ target_link_libraries(lcm-buftest-receiver lcm unofficial::glib::glib) -+endif() - - add_executable(lcm-buftest-sender buftest-sender.c) --target_link_libraries(lcm-buftest-sender lcm GLib2::glib) -+if(WIN32) -+ target_link_libraries(lcm-buftest-sender lcm unofficial::glib::glib ws2_32) -+else() -+ target_link_libraries(lcm-buftest-sender lcm unofficial::glib::glib) -+endif() - - install(TARGETS - lcm-sink diff --git a/ports/lcm/glib.link.patch b/ports/lcm/glib.link.patch new file mode 100644 index 000000000..67f6dc0f5 --- /dev/null +++ b/ports/lcm/glib.link.patch @@ -0,0 +1,30 @@ +diff --git a/cmake/FindGLib2.cmake b/cmake/FindGLib2.cmake +index 2f1a8be45..db823b953 100644 +--- a/cmake/FindGLib2.cmake ++++ b/cmake/FindGLib2.cmake +@@ -14,7 +14,7 @@ function(_glib2_find_include VAR HEADER) + + find_path(GLIB2_${VAR}_INCLUDE_DIR ${HEADER} + PATHS ${_paths} +- PATH_SUFFIXES glib-2.0 glib-2.0/include ++ PATH_SUFFIXES glib-2.0 glib-2.0/include lib/glib-2.0/include + ) + mark_as_advanced(GLIB2_${VAR}_INCLUDE_DIR) + endfunction() +@@ -108,6 +108,16 @@ foreach(_glib2_component ${GLib2_FIND_COMPONENTS}) + + endforeach() + ++find_library(PCRE_LIBRARY pcre) ++set_property(TARGET GLib2::glib APPEND PROPERTY ++ INTERFACE_LINK_LIBRARIES ${PCRE_LIBRARY} ++) ++set(THREADS_PREFER_PTHREAD_FLAG ON) ++find_package(Threads) ++set_property(TARGET GLib2::glib APPEND PROPERTY ++ INTERFACE_LINK_LIBRARIES Threads::Threads ++) ++ + list(APPEND GLib2_FIND_COMPONENTS glib) + set(GLib2_FIND_REQUIRED_glib TRUE) + diff --git a/ports/lcm/portfile.cmake b/ports/lcm/portfile.cmake index 24ebb21b0..74bca46d3 100644 --- a/ports/lcm/portfile.cmake +++ b/ports/lcm/portfile.cmake @@ -7,7 +7,7 @@ vcpkg_from_github( PATCHES only-install-one-flavor.patch fix-build-error.patch - fix-linux-build.patch + glib.link.patch ) vcpkg_configure_cmake( diff --git a/ports/lcm/vcpkg.json b/ports/lcm/vcpkg.json new file mode 100644 index 000000000..ec04fd87b --- /dev/null +++ b/ports/lcm/vcpkg.json @@ -0,0 +1,13 @@ +{ + "name": "lcm", + "version": "1.4.0", + "port-version": 2, + "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." + ], + "homepage": "https://github.com/lcm-proj/lcm", + "dependencies": [ + "glib" + ] +} |
