Commit Graph

332 Commits (release/4.3a0)

Author SHA1 Message Date
Varun Agrawal 3374524172 clean up cmake 2023-02-12 22:16:32 -05:00
Lawrence Ibarria 5347d205e8 Minor cleanup on HandleEigen.cmake 2023-02-12 13:39:39 -08:00
Lawrence Ibarria 1bed89e942 Allow override of BUILD_SHARED_LIBS
The cmake option BUILD_SHARED_LIBS is a cmake built-in option
to control if libraries are by default SHARED or STATIC.

For large projects, it is desired to be able to design gtsam as a
shared or static library regardless of the value of BUILD_SHARED_LIBS.
This change is unobtrusive, two new cmake options are created, to
force gtsam to be a shared or static library. If neither option is
set (this is the default), the behavior of gtsam remains unchanged
which is to use BUILD_SHARED_LIBS decision.
2023-02-12 13:29:30 -08:00
Frank Dellaert a8eb98acea Fixed warnings that arise from stricter compiler flags 2023-02-11 12:32:50 -08:00
Varun Agrawal 775d2e877e update CppUnitLite to not rely on boost 2023-02-06 10:48:10 -05:00
Frank Dellaert 4c9743457c Get rid of indentation warnings in Eigen 2023-02-05 15:19:43 -08:00
Frank Dellaert e18b3c5078 Try adding directive in cmake 2023-02-05 11:01:24 -08:00
kartik arcot 1d7181be10 fix CI issue 2023-01-23 15:56:33 -08:00
kartik arcot b2134d1d12 move the option to enable boost serialization to a different file 2023-01-23 14:21:24 -08:00
Frank Dellaert 1ecba12c6a Removed obsolete flag and TODOs 2023-01-20 23:11:12 -08:00
Frank Dellaert ac2db387d6 Switch flag to V43 2023-01-20 22:50:05 -08:00
Frank Dellaert 0cb0733e33 Added c++17 flags to build functions 2023-01-19 22:33:32 -08:00
Varun Agrawal d3440f8018
Merge pull request #1296 from stefangachter/bugfix/cmake_march_native 2023-01-02 07:41:47 -05:00
Varun Agrawal b34a8775bc clean up cmake and add comments 2022-12-23 23:07:44 +05:30
Varun Agrawal 1129c95dd5 fix CMake so that Eigen discovery and linking is consistent 2022-10-25 17:37:29 -04:00
GAECHTER TOYA Stefan d1fa38457a Improve handling of GTSAM_BUILD_WITH_MARCH_NATIVE flag 2022-10-19 14:54:24 +02:00
Sébastien Gonzalve 774cfd25b8 Use Eigen Config file for cmake detection
Since Eigen 3.3.0, a Config.cmake file is provided, thus no need to rely
on a custom one.

Moreover, the FindEigen3.cmake used in gtsam was erroneously forcing an
include directory when using system version of eigen.

This fixes bug #1297
2022-10-08 18:04:40 +02:00
Sébastien Gonzalve ec3d6b36da Use cannonical library name for eigen 2022-10-05 21:30:58 +02:00
GAECHTER TOYA Stefan ecd00f59d5 Check for native architecture and set GTSAM_COMPILE_OPTIONS_PUBLIC accordingly 2022-09-23 12:52:56 +02:00
Varun Agrawal fb8d6abb21
Merge pull request #1237 from borglab/jose-fixes 2022-08-21 15:19:37 -04:00
Varun Agrawal 0b9ddb7957
Merge pull request #1262 from borglab/fix/matlab
Fix matlab toolbox compilation
2022-08-01 16:38:45 -04:00
Varun Agrawal 9ec762b76d print boost version 2022-08-01 15:06:36 -04:00
Tobias Fischer 8a68e061cd
Delete FindBoost.cmake 2022-08-01 07:48:03 +10:00
Varun Agrawal 441ec33235 fix small issue 2022-07-07 11:09:56 -04:00
Varun Agrawal ea8e69c735 Use system Eigen by default only if found 2022-07-07 11:02:54 -04:00
Jose Luis Blanco-Claraco 8f509dc326 Do not optimize native by default 2022-07-07 10:58:12 -04:00
Varun Agrawal dab3089003 include patch version for Python interpreter to help disambiguate 2022-05-11 12:06:33 -04:00
Varun Agrawal a9a4075ff6
Merge pull request #1117 from acxz/metis-include
Allow more functionality through system METIS
2022-03-26 03:34:27 -04:00
Akash Patel 4efdc6982e
fix typo
Co-authored-by: Varun Agrawal <varagrawal@gmail.com>
2022-03-25 17:11:05 -04:00
Varun Agrawal 8c55ac729b check for mac silicon for march=native 2022-03-19 19:51:59 -04:00
acxz c7374307f4 use internal metislib.h; extern C for system&local 2022-02-22 12:57:43 -05:00
Varun Agrawal d860e39561 suppress spurious warnings 2022-02-17 11:16:13 -05:00
Frank Dellaert 6d0c55901c Global replace to V42 2022-01-02 15:49:47 -05:00
Fan Jiang 3755f2185d
Merge pull request #901 from borglab/fan/tbb_revert
Revert @acxz's TBB revert
2021-10-28 18:16:38 -04:00
Varun Agrawal f06d66df69 update cmake function to set default package version number 2021-10-23 12:45:44 -04:00
Fan Jiang 7a9d89539c TBB revival 2021-10-21 19:23:44 -04:00
Varun Agrawal f9703e9cb1 Merge branch 'develop' into feature/between-factor-cmake-flag 2021-09-28 10:12:46 -04:00
Akash Sharma 711bc98d94 Merge branch 'develop' of https://github.com/borglab/gtsam into borglab-develop 2021-09-19 11:46:20 -04:00
Varun Agrawal d8b6f15247 make TBB finding depend on the GTSAM_WITH_TBB flag 2021-09-18 02:48:31 -04:00
Akash Sharma d99a9432bc Update Find TBB to handle TBB installed with homebrew on OS X
Better Error message for TBB handling with versions greater than 2021.1
on OS X
2021-09-17 18:26:43 -04:00
Varun Agrawal cd682fecc3 add a cmake flag for easy toggling BetweenFactor jacobian computations 2021-09-01 14:31:29 -04:00
Varun Agrawal ad73645c83 Merge branch 'develop' into feature/system-metis-lib 2021-08-26 00:25:41 -04:00
Varun Agrawal 42b7525337 set lowest common boost version 2021-08-20 11:10:13 -04:00
Varun Agrawal d90dca7fab update docs to reflect min Boost version 2021-08-19 19:33:49 -04:00
Varun Agrawal 99f351da4c Merge branch 'develop' into feature/matlab-wrap 2021-03-10 15:59:57 -05:00
Varun Agrawal 9afce21ac5 delete example project since it is now its own git template 2021-03-10 09:18:09 -05:00
Varun Agrawal f03b12e420 Make matlab wrapping rely completely on the wrap project 2021-03-09 16:10:08 -05:00
Varun Agrawal 6f81bdea7b offload matlab wrapping to the wrap project 2021-03-09 15:07:15 -05:00
Varun Agrawal 48232a3357
Merge pull request #691 from borglab/fix-uninstall-target-exists
Avoid target collision if gtsam used as submodule
2021-03-08 14:56:55 -05:00
Fan Jiang cb05d01d06
Merge pull request #698 from borglab/feature/wrap_update
Fix GTSAM MATLAB Wrapper
2021-02-16 12:41:20 -05:00
Fan Jiang cd4c0c6dbd Fix GTSAM MATLAB 2021-02-15 19:40:40 -05:00
Jose Luis Blanco Claraco ffc4e59bfc
Avoid target collision if gtsam used as submodule 2021-02-05 02:26:35 +01:00
Varun Agrawal 79305fc497 set TBB default to Release unless TBB_USE_DEBUG_BUILD is set 2021-01-22 13:21:39 -05:00
Varun Agrawal 3d629290ee make non-editable CMake variables as INTERNAL 2021-01-22 13:21:09 -05:00
Jose-Luis Blanco Claraco 35aeaf5246
CMake scripts compatible with gtsam as git submodule 2021-01-17 22:21:53 +01:00
Varun Agrawal 3a80b38a9a updates to Cmake to use the new wrap package 2021-01-04 13:13:01 -05:00
Varun Agrawal 085d01580e minor formatting of cmake file 2020-12-27 19:13:41 -05:00
Varun Agrawal 628ae26496 encapsulated and updated all the CMake related to Matlab 2020-11-18 16:29:53 -05:00
Varun Agrawal 812240b056 restructuring 2020-11-18 16:08:06 -05:00
Varun Agrawal 30afc95936 placed MEX check to new cmake file 2020-11-18 16:05:13 -05:00
Varun Agrawal 8c7a404ace Merge branch 'develop' into feature/system-metis-lib 2020-11-18 15:18:29 -05:00
Varun Agrawal a94b6dacaf Print message when either Pose3 or Rot3 expmap is ON 2020-11-12 11:15:50 -05:00
Varun Agrawal c2455082db Force EXPMAP option for both if either POSE3 or ROT3 is set 2020-11-11 13:34:40 -05:00
Varun Agrawal bb313eb7ce Fix python discovery for MATLAB wrapper 2020-11-07 18:19:04 -05:00
Jose Luis Blanco-Claraco 1da968afd3
Automatic detection of correct suggest-override flag 2020-10-28 07:43:16 +01:00
Jose Luis Blanco-Claraco 9d41178070
Use METIS system library if so selected 2020-10-19 07:52:12 +02:00
Frank dellaert 8a7ce130ad Fix warning on clang 2020-10-12 14:32:21 -04:00
Jose Luis Blanco Claraco 69b2cacbe7
Revert use system Eigen if found 2020-10-07 17:03:20 +02:00
Jose Luis Blanco Claraco 8cb22624e0
Use camel case for cmake files 2020-10-07 17:02:55 +02:00
Jose Luis Blanco Claraco b1c2e0174b
Use system eigen3 only if first quietly found. 2020-10-06 22:58:42 +02:00
Jose Luis Blanco Claraco 8b2b7476e1
Remove obsolete comments 2020-10-06 22:58:21 +02:00
Jose Luis Blanco Claraco e9e87526c4
refactor cmake scripts into smaller files 2020-10-06 18:10:11 +02:00
Varun Agrawal b30448733c remove all Cython references 2020-10-01 19:56:35 -04:00
Varun Agrawal a4c3623701
Merge pull request #526 from borglab/feature/python-version
Automatically find Python3 version
2020-09-21 21:52:42 -04:00
Varun Agrawal f64ced8791 Don't print private compile options 2020-09-17 21:43:31 -04:00
Varun Agrawal 859c157a0f Use cmake to identify best Python version if Default requested 2020-09-17 21:26:11 -04:00
Fan Jiang 1d6392dc88 Initial migration 2020-08-17 17:13:10 -04:00
Varun Agrawal 3ea9897723 function for consistent width printing of CMake flags 2020-08-07 16:11:05 -05:00
Jose Luis Blanco Claraco 8a9780113a
remove leftover cmake debug trace 2020-07-27 00:16:28 +02:00
Jose Luis Blanco Claraco 99256c6d28
relax override -Werror for now 2020-07-26 23:35:49 +02:00
Jose Luis Blanco Claraco 64fb7b9503
Avoid -Woverride in clang <12.0.0 2020-07-26 23:35:11 +02:00
Jose Luis Blanco Claraco 0198c648e3
Fix all new gcc warnings/errors: make explicit virtual/override methods.
Rules are:
- use "virtual" in base classes only.
- use "override" in all derived classes.
2020-07-26 11:20:42 +02:00
Jose Luis Blanco Claraco 4e3638f6a7
enable compiler warnings and errors for safer code 2020-07-26 08:41:57 +02:00
Frank Dellaert c8ddd43f97
Merge pull request #277 from borglab/feature/python-install
Auto-install Python Package
2020-07-16 12:50:58 -04:00
Varun Agrawal 289ab6271d added cmake policy for AppleClang compiler identification 2020-07-11 21:44:38 -04:00
Varun Agrawal e08e392020 Improved paths and added checks 2020-07-05 21:57:18 -05:00
Varun Agrawal d2f69eeab4 Add python-install dependency for gtsam_unstable as well 2020-07-01 17:07:31 -05:00
Varun Agrawal a6908cd1cb removed unneeded install commands and updated README 2020-07-01 16:23:24 -05:00
Varun Agrawal 59968fddc5 Python Wrapper CMake update
- Added python-install target variable for easy updating.
- Fixed/Added all dependencies so that everything is built automatically.
- Removed unnecessary install commands
2020-07-01 14:36:57 -05:00
Varun Agrawal 8859b963a2 In-place cython build
Build everything inside the build/cython{BuildType} directory directly, so we can bypass the `make install` step and introduce the `make python-install` step which allows cmake to handle all dependencies.
2020-07-01 12:13:53 -05:00
Varun Agrawal 7a725bf46a Remove redundant postfix checking since the postfix is already added at the top level 2020-06-30 20:48:01 -05:00
Varun Agrawal 453d3a7416 Added cmake variable GTSAM_CYTHON_INSTALL_FULLPATH to include build tag directly 2020-06-24 18:11:24 -05:00
Varun Agrawal 5feaf6dd9d reset to previous version 2020-06-24 14:07:28 -05:00
Varun Agrawal 9698b03253 removed extra line 2020-06-24 14:06:25 -05:00
Varun Agrawal efde078b94 pure CMake script to install Python wrapper after compiling 2020-06-24 14:05:17 -05:00
Varun Agrawal ca46ebfda8 added comments and removed unnecessary code 2020-06-22 20:20:50 -05:00
Varun Agrawal 93a00a38a4 add new make command for installing python wrapper 2020-06-22 20:14:03 -05:00
Varun Agrawal 1725a577cf cmake function to install python package once make install is completed 2020-06-22 17:25:29 -05:00
Tuwuh S Wibowo 046bcaa031 Add full path to Python library, esp useful for VS generator 2020-05-21 13:23:18 -04:00
Tuwuh S Wibowo 125d59dfcd Fix Cython build on Windows/MSVC, tested on MSVC 2019 compiler 2020-05-21 02:15:15 -04:00