From af32beafa797ba373d0d1c5bcf1ab1f5914b049f Mon Sep 17 00:00:00 2001 From: jasjuang Date: Sun, 30 Jul 2017 11:09:07 -0700 Subject: New port: g2o --- ports/g2o/CONTROL | 4 ++++ ports/g2o/portfile.cmake | 28 ++++++++++++++++++++++++++++ 2 files changed, 32 insertions(+) create mode 100644 ports/g2o/CONTROL create mode 100644 ports/g2o/portfile.cmake diff --git a/ports/g2o/CONTROL b/ports/g2o/CONTROL new file mode 100644 index 000000000..c91bc321d --- /dev/null +++ b/ports/g2o/CONTROL @@ -0,0 +1,4 @@ +Source: g2o +Version: 20170730_git +Build-Depends:suitesparse, eigen3, clapack, ceres, qt5 +Description: g2o: A General Framework for Graph Optimization http://openslam.org/g2o.html diff --git a/ports/g2o/portfile.cmake b/ports/g2o/portfile.cmake new file mode 100644 index 000000000..c23d95f84 --- /dev/null +++ b/ports/g2o/portfile.cmake @@ -0,0 +1,28 @@ +include(vcpkg_common_functions) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO RainerKuemmerle/g2o + REF 20170730_git + SHA512 a85e3f79e6a8bd0f81a9a1a7a01227779100d9f4ebd0ae9c03537bbdcc246018f292b53045f027bbe28ecf63b98de2f22f5528c992c93c9790eb6a3a40995903 + HEAD_REF master +) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} +) + +vcpkg_install_cmake() + +vcpkg_copy_pdbs() + +file(GLOB EXE ${CURRENT_PACKAGES_DIR}/bin/*.exe) +file(GLOB DEBUG_EXE ${CURRENT_PACKAGES_DIR}/debug/bin/*.exe) +file(REMOVE ${EXE}) +file(REMOVE ${DEBUG_EXE}) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) + +# Put the license file where vcpkg expects it +file(COPY ${SOURCE_PATH}/doc/license-bsd.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/g2o/) +file(RENAME ${CURRENT_PACKAGES_DIR}/share/g2o/license-bsd.txt ${CURRENT_PACKAGES_DIR}/share/g2o/copyright) -- cgit v1.2.3 From 82bebc44bb8e7ab0a1d41236e40ceeb5d1e5eb88 Mon Sep 17 00:00:00 2001 From: jasjuang Date: Sun, 30 Jul 2017 16:18:22 -0700 Subject: handle dll macros --- ports/g2o/portfile.cmake | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/ports/g2o/portfile.cmake b/ports/g2o/portfile.cmake index c23d95f84..0bb596c00 100644 --- a/ports/g2o/portfile.cmake +++ b/ports/g2o/portfile.cmake @@ -16,6 +16,33 @@ vcpkg_install_cmake() vcpkg_copy_pdbs() +if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) + foreach(HEADER g2o/apps/g2o_hierarchical/g2o_hierarchical_api.h + g2o/types/slam3d_addons/g2o_types_slam3d_addons_api.h + g2o/apps/g2o_cli/g2o_cli_api.h + g2o/apps/g2o_simulator/g2o_simulator_api.h + g2o/core/g2o_core_api.h + g2o/solvers/csparse/g2o_csparse_api.h + g2o/stuff/g2o_stuff_api.h + g2o/types/icp/g2o_types_icp_api.h + g2o/solvers/slam2d_linear/g2o_slam2d_linear_api.h + g2o/types/data/g2o_types_data_api.h + g2o/types/sclam2d/g2o_types_sclam2d_api.h + g2o/types/slam2d/g2o_types_slam2d_api.h + g2o/types/slam3d/g2o_types_slam3d_api.h + g2o/types/sba/g2o_types_sba_api.h + g2o/types/slam2d_addons/g2o_types_slam2d_addons_api.h + g2o/solvers/csparse/g2o_csparse_extension_api.h + g2o/core/robust_kernel_factory.h + g2o/stuff/opengl_primitives.h + g2o/core/optimization_algorithm_factory.h + g2o/core/factory.h) + file(READ ${CURRENT_PACKAGES_DIR}/include/${HEADER} HEADER_CONTENTS) + string(REPLACE "#ifdef G2O_SHARED_LIBS" "#if 1" HEADER_CONTENTS "${HEADER_CONTENTS}") + file(WRITE ${CURRENT_PACKAGES_DIR}/include/${HEADER} "${HEADER_CONTENTS}") + endforeach() +endif() + file(GLOB EXE ${CURRENT_PACKAGES_DIR}/bin/*.exe) file(GLOB DEBUG_EXE ${CURRENT_PACKAGES_DIR}/debug/bin/*.exe) file(REMOVE ${EXE}) -- cgit v1.2.3 From 88a5b96ea442bb87ff8c6a43d5fbd94dfc984cb9 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Tue, 1 Aug 2017 18:00:52 -0700 Subject: [g2o] Remove unneeded dependency on qt5 (only used in examples and apps, which aren't built) --- ports/g2o/CONTROL | 4 ++-- ports/g2o/portfile.cmake | 35 +++++++++++------------------------ 2 files changed, 13 insertions(+), 26 deletions(-) diff --git a/ports/g2o/CONTROL b/ports/g2o/CONTROL index c91bc321d..00ec4d963 100644 --- a/ports/g2o/CONTROL +++ b/ports/g2o/CONTROL @@ -1,4 +1,4 @@ Source: g2o -Version: 20170730_git -Build-Depends:suitesparse, eigen3, clapack, ceres, qt5 +Version: 20170730_git-1 +Build-Depends: suitesparse, eigen3, clapack, ceres Description: g2o: A General Framework for Graph Optimization http://openslam.org/g2o.html diff --git a/ports/g2o/portfile.cmake b/ports/g2o/portfile.cmake index 0bb596c00..bdfa20f62 100644 --- a/ports/g2o/portfile.cmake +++ b/ports/g2o/portfile.cmake @@ -10,6 +10,10 @@ vcpkg_from_github( vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA + OPTIONS + -DG2O_BUILD_EXAMPLES=OFF + -DG2O_BUILD_APPS=OFF ) vcpkg_install_cmake() @@ -17,36 +21,19 @@ vcpkg_install_cmake() vcpkg_copy_pdbs() if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) - foreach(HEADER g2o/apps/g2o_hierarchical/g2o_hierarchical_api.h - g2o/types/slam3d_addons/g2o_types_slam3d_addons_api.h - g2o/apps/g2o_cli/g2o_cli_api.h - g2o/apps/g2o_simulator/g2o_simulator_api.h - g2o/core/g2o_core_api.h - g2o/solvers/csparse/g2o_csparse_api.h - g2o/stuff/g2o_stuff_api.h - g2o/types/icp/g2o_types_icp_api.h - g2o/solvers/slam2d_linear/g2o_slam2d_linear_api.h - g2o/types/data/g2o_types_data_api.h - g2o/types/sclam2d/g2o_types_sclam2d_api.h - g2o/types/slam2d/g2o_types_slam2d_api.h - g2o/types/slam3d/g2o_types_slam3d_api.h - g2o/types/sba/g2o_types_sba_api.h - g2o/types/slam2d_addons/g2o_types_slam2d_addons_api.h - g2o/solvers/csparse/g2o_csparse_extension_api.h - g2o/core/robust_kernel_factory.h - g2o/stuff/opengl_primitives.h - g2o/core/optimization_algorithm_factory.h - g2o/core/factory.h) - file(READ ${CURRENT_PACKAGES_DIR}/include/${HEADER} HEADER_CONTENTS) + file(GLOB_RECURSE HEADERS "${CURRENT_PACKAGES_DIR}/include/*") + foreach(HEADER ${HEADERS}) + file(READ ${HEADER} HEADER_CONTENTS) string(REPLACE "#ifdef G2O_SHARED_LIBS" "#if 1" HEADER_CONTENTS "${HEADER_CONTENTS}") - file(WRITE ${CURRENT_PACKAGES_DIR}/include/${HEADER} "${HEADER_CONTENTS}") + file(WRITE ${HEADER} "${HEADER_CONTENTS}") endforeach() endif() file(GLOB EXE ${CURRENT_PACKAGES_DIR}/bin/*.exe) file(GLOB DEBUG_EXE ${CURRENT_PACKAGES_DIR}/debug/bin/*.exe) -file(REMOVE ${EXE}) -file(REMOVE ${DEBUG_EXE}) +if(EXE OR DEBUG_EXE) + file(REMOVE ${EXE} ${DEBUG_EXE}) +endif() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) -- cgit v1.2.3