vcpkg/ports/cartographer/fix-find-packages.patch
Alexander Neumann 546813ae7b
[glib up to gtk] update and make it work with meson ()
* 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 

* 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>
2021-04-26 10:28:21 -07:00

182 lines
6.5 KiB
Diff

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 2e3a686..f36f15a 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -25,27 +25,33 @@ option(BUILD_GRPC "build Cartographer gRPC support" false)
option(BUILD_PROMETHEUS "build Prometheus monitoring support" false)
include("${PROJECT_SOURCE_DIR}/cmake/functions.cmake")
-google_initialize_cartographer_project()
-google_enable_testing()
+#google_initialize_cartographer_project()
+#google_enable_testing()
find_package(Boost REQUIRED COMPONENTS iostreams)
find_package(Ceres REQUIRED COMPONENTS SuiteSparse)
find_package(Eigen3 REQUIRED)
-find_package(LuaGoogle REQUIRED)
+find_package(Lua REQUIRED)
find_package(Protobuf 3.0.0 REQUIRED)
+find_package(glog REQUIRED)
+find_package(gflags REQUIRED)
if (${BUILD_GRPC})
find_package(async_grpc REQUIRED)
endif()
-include(FindPkgConfig)
-PKG_SEARCH_MODULE(CAIRO REQUIRED cairo>=1.12.16)
+#include(FindPkgConfig)
+#PKG_SEARCH_MODULE(CAIRO REQUIRED cairo>=1.12.16)
+#if(CMAKE_BUILD_TYPE STREQUAL Debug)
+# set(CAIRO_LIB_SUFFIX d)
+#endif()
+find_library(CAIRO_LIBRARY cairo${CAIRO_LIB_SUFFIX})
# Only build the documentation if we can find Sphinx.
-find_package(Sphinx)
-if(SPHINX_FOUND)
- add_subdirectory("docs")
-endif()
+#find_package(Sphinx)
+#if(SPHINX_FOUND)
+# add_subdirectory("docs")
+#endif()
# Install catkin package.xml
install(FILES package.xml DESTINATION share/cartographer)
@@ -169,20 +175,20 @@ configure_file(
${PROJECT_SOURCE_DIR}/cartographer/common/config.h.cmake
${PROJECT_BINARY_DIR}/cartographer/common/config.h)
-google_binary(cartographer_autogenerate_ground_truth
- SRCS
- cartographer/ground_truth/autogenerate_ground_truth_main.cc
-)
-
-google_binary(cartographer_compute_relations_metrics
- SRCS
- cartographer/ground_truth/compute_relations_metrics_main.cc
-)
-
-google_binary(cartographer_migrate_serialization_format
- SRCS
- cartographer/io/migrate_serialization_format_main.cc
-)
+#google_binary(cartographer_autogenerate_ground_truth
+# SRCS
+# cartographer/ground_truth/autogenerate_ground_truth_main.cc
+#)
+#
+#google_binary(cartographer_compute_relations_metrics
+# SRCS
+# cartographer/ground_truth/compute_relations_metrics_main.cc
+#)
+#
+#google_binary(cartographer_migrate_serialization_format
+# SRCS
+# cartographer/io/migrate_serialization_format_main.cc
+#)
if(${BUILD_GRPC})
google_binary(cartographer_grpc_server
@@ -213,8 +219,9 @@ target_include_directories(${PROJECT_NAME} SYSTEM PUBLIC
target_link_libraries(${PROJECT_NAME} PUBLIC ${Boost_LIBRARIES})
# We expect find_package(Ceres) to have located these for us.
-target_link_libraries(${PROJECT_NAME} PUBLIC glog)
-target_link_libraries(${PROJECT_NAME} PUBLIC gflags)
+#target_link_libraries(${PROJECT_NAME} PUBLIC glog)
+#target_link_libraries(${PROJECT_NAME} PUBLIC gflags)
+#target_link_libraries(${PROJECT_NAME} PUBLIC ${CAIRO_LIBRARY})
target_include_directories(${PROJECT_NAME} SYSTEM PUBLIC
"${CAIRO_INCLUDE_DIRS}")
@@ -224,7 +231,8 @@ target_include_directories(${PROJECT_NAME} SYSTEM PUBLIC
${PROTOBUF_INCLUDE_DIR})
# TODO(hrapp): This should not explicitly list pthread and use
# PROTOBUF_LIBRARIES, but that failed on first try.
-target_link_libraries(${PROJECT_NAME} PUBLIC ${PROTOBUF_LIBRARY} pthread)
+#target_link_libraries(${PROJECT_NAME} PUBLIC ${PROTOBUF_LIBRARY} pthread)
+target_link_libraries(${PROJECT_NAME} PUBLIC ${PROTOBUF_LIBRARY})
if(${BUILD_GRPC})
target_link_libraries(${PROJECT_NAME} PUBLIC grpc++)
target_link_libraries(${PROJECT_NAME} PUBLIC async_grpc)
@@ -234,7 +242,7 @@ if(${BUILD_PROMETHEUS})
target_compile_definitions(${PROJECT_NAME} PUBLIC USE_PROMETHEUS=1)
endif()
-set(TARGET_COMPILE_FLAGS "${TARGET_COMPILE_FLAGS} ${GOOG_CXX_FLAGS}")
+set(TARGET_COMPILE_FLAGS "-D_DISABLE_EXTENDED_ALIGNED_STORAGE ${TARGET_COMPILE_FLAGS} ${GOOG_CXX_FLAGS}")
set_target_properties(${PROJECT_NAME} PROPERTIES
COMPILE_FLAGS ${TARGET_COMPILE_FLAGS})
@@ -255,7 +263,7 @@ foreach(ABS_FIL ${ALL_TESTS})
get_filename_component(FIL_WE ${REL_FIL} NAME_WE)
# Replace slashes as required for CMP0037.
string(REPLACE "/" "." TEST_TARGET_NAME "${DIR}/${FIL_WE}")
- google_test("${TEST_TARGET_NAME}" ${ABS_FIL})
+ #google_test("${TEST_TARGET_NAME}" ${ABS_FIL})
if(${BUILD_GRPC})
target_link_libraries("${TEST_TARGET_NAME}" PUBLIC grpc++)
target_link_libraries("${TEST_TARGET_NAME}" PUBLIC async_grpc)
@@ -263,7 +271,7 @@ foreach(ABS_FIL ${ALL_TESTS})
if(${BUILD_PROMETHEUS})
target_link_libraries("${TEST_TARGET_NAME}" PUBLIC prometheus-cpp)
endif()
- target_link_libraries("${TEST_TARGET_NAME}" PUBLIC ${TEST_LIB})
+ #target_link_libraries("${TEST_TARGET_NAME}" PUBLIC ${TEST_LIB})
endforeach()
# Add the binary directory first, so that port.h is included after it has
diff --git a/cartographer/common/math.h b/cartographer/common/math.h
index c4a77ef..0248f66 100644
--- a/cartographer/common/math.h
+++ b/cartographer/common/math.h
@@ -17,6 +17,10 @@
#ifndef CARTOGRAPHER_COMMON_MATH_H_
#define CARTOGRAPHER_COMMON_MATH_H_
+#ifndef M_PI
+#define M_PI 3.14159265358979323846
+#endif
+
#include <cmath>
#include <vector>
diff --git a/cartographer/common/thread_pool.cc b/cartographer/common/thread_pool.cc
index bc3c743..db424d1 100644
--- a/cartographer/common/thread_pool.cc
+++ b/cartographer/common/thread_pool.cc
@@ -16,7 +16,7 @@
#include "cartographer/common/thread_pool.h"
-#include <unistd.h>
+//#include <unistd.h>
#include <algorithm>
#include <chrono>
#include <numeric>
diff --git a/cmake/functions.cmake b/cmake/functions.cmake
index 3bfd343..3d961b0 100644
--- a/cmake/functions.cmake
+++ b/cmake/functions.cmake
@@ -118,12 +118,12 @@ macro(google_initialize_cartographer_project)
set(LIST_FILES_CMD "find ${PROJECT_SOURCE_DIR}/ -not -iwholename '*.git*' | sort | sed 's/^/#/'")
set(FILES_LIST_PATH "${PROJECT_BINARY_DIR}/AllFiles.cmake")
set(DETECT_CHANGES_CMD "bash" "-c" "${LIST_FILES_CMD} | diff -N -q ${FILES_LIST_PATH} - || ${LIST_FILES_CMD} > ${FILES_LIST_PATH}")
- add_custom_target(${PROJECT_NAME}_detect_changes ALL
- COMMAND ${DETECT_CHANGES_CMD}
- VERBATIM
- )
+ #add_custom_target(${PROJECT_NAME}_detect_changes ALL
+ # COMMAND ${DETECT_CHANGES_CMD}
+ # VERBATIM
+ #)
if(NOT EXISTS ${FILES_LIST_PATH})
- execute_process(COMMAND ${DETECT_CHANGES_CMD})
+ #execute_process(COMMAND ${DETECT_CHANGES_CMD})
endif()
include(${FILES_LIST_PATH})
endmacro()