aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYuri Victorovich <yuri@FreeBSD.org>2018-03-28 17:18:28 +0800
committerYuri Victorovich <yuri@FreeBSD.org>2018-03-28 17:18:28 +0800
commit348b22109a20e22edb1af171822e574a97b0926e (patch)
treeb3f01d4bb50a39d2dd8047839bd497ec9738d4cd
parent5aaa6c0980810c8bcfdd1b6ef5c41e670af2f1e2 (diff)
downloadfreebsd-ports-348b22109a20e22edb1af171822e574a97b0926e.tar.gz
freebsd-ports-348b22109a20e22edb1af171822e574a97b0926e.tar.zst
freebsd-ports-348b22109a20e22edb1af171822e574a97b0926e.zip
New port: math/g2o: General framework for graph optimization
Differential Revision: https://reviews.freebsd.org/D13610
Notes
Notes: svn path=/head/; revision=465787
-rw-r--r--math/Makefile1
-rw-r--r--math/g2o/Makefile54
-rw-r--r--math/g2o/distinfo3
-rw-r--r--math/g2o/pkg-descr18
-rw-r--r--math/g2o/pkg-plist253
5 files changed, 329 insertions, 0 deletions
diff --git a/math/Makefile b/math/Makefile
index b24a5855152f..b34246d6bdf5 100644
--- a/math/Makefile
+++ b/math/Makefile
@@ -189,6 +189,7 @@
SUBDIR += fpc-numlib
SUBDIR += freemat
SUBDIR += fxt
+ SUBDIR += g2o
SUBDIR += galculator
SUBDIR += gambit
SUBDIR += gap
diff --git a/math/g2o/Makefile b/math/g2o/Makefile
new file mode 100644
index 000000000000..4e1b8097eefa
--- /dev/null
+++ b/math/g2o/Makefile
@@ -0,0 +1,54 @@
+# $FreeBSD$
+
+PORTNAME= g2o
+DISTVERSION= 20170730_git-87
+DISTVERSIONSUFFIX= -gbbe3c2b
+CATEGORIES= math
+
+MAINTAINER= yuri@FreeBSD.org
+COMMENT= General framework for graph optimization
+
+LICENSE= LGPL3 GPLv3
+LICENSE_COMB= dual
+
+LIB_DEPENDS= libcxsparse.so:math/suitesparse \
+ libQGLViewer-qt5.so:graphics/libQGLViewer
+
+USES= cmake:outsource eigen:3
+USE_GITHUB= yes
+GH_ACCOUNT= RainerKuemmerle
+USE_GL= gl glu
+USE_QT5= core gui opengl xml widgets buildtools_build qmake_build
+USE_LDCONFIG= yes
+
+CMAKE_OFF= DO_SSE_AUTODETECT
+
+OPTIONS_DEFINE= FAST_MATH
+OPTIONS_SINGLE= SIMD_${ARCH}
+OPTIONS_SINGLE_SIMD_amd64= NOSSE SSE2 SSE3 SSE41 SSE42 SSE4A
+OPTIONS_SINGLE_SIMD_i386= ${OPTIONS_SINGLE_SIMD_amd64}
+OPTIONS_DEFAULT_amd64= SSE2
+OPTIONS_DEFAULT_i386= SSE2
+
+SIMD_amd64_DESC= Use SSE SIMD optimizations
+SIMD_i386_DESC= ${SIMD_amd64_DESC}
+FAST_MATH_DESC= Enable fast math operations
+NOSSE_DESC= Do not use SIMD optimization
+SSE2_DESC= SSE2 optimization
+SSE3_DESC= SSE3 optimization
+SSE41_DESC= SSE41 optimization
+SSE42_DESC= SSE42 optimization
+SSE4A_DESC= SSE4a optimization
+
+FAST_MATH_CMAKE_BOOL= G2O_FAST_MATH
+NOSSE_CMAKE_ON= -DDISABLE_SSE2:BOOL=ON -DDISABLE_SSE3:BOOL=ON -DDISABLE_SSE4_1:BOOL=ON -DDISABLE_SSE4_2:BOOL=ON -DDISABLE_SSE4_A:BOOL=ON
+SSE2_CMAKE_ON= -DDISABLE_SSE3:BOOL=ON -DDISABLE_SSE4_1:BOOL=ON -DDISABLE_SSE4_2:BOOL=ON -DDISABLE_SSE4_A:BOOL=ON
+SSE3_CMAKE_ON= -DDISABLE_SSE4_1:BOOL=ON -DDISABLE_SSE4_2:BOOL=ON -DDISABLE_SSE4_A:BOOL=ON
+SSE41_CMAKE_ON= -DDISABLE_SSE4_2:BOOL=ON -DDISABLE_SSE4_A:BOOL=ON
+SSE42_CMAKE_ON= -DDISABLE_SSE4_A:BOOL=ON
+
+post-patch:
+ @${REINPLACE_CMD} -e 's|/usr/include|${LOCALBASE}/include|' \
+ ${WRKSRC}/cmake_modules/*.cmake
+
+.include <bsd.port.mk>
diff --git a/math/g2o/distinfo b/math/g2o/distinfo
new file mode 100644
index 000000000000..c94ab397d653
--- /dev/null
+++ b/math/g2o/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1522223932
+SHA256 (RainerKuemmerle-g2o-20170730_git-87-gbbe3c2b_GH0.tar.gz) = 35ff08910d775f5b9a9ee046b5372953ae9e9d4d12b96e0bf499be128f4aad79
+SIZE (RainerKuemmerle-g2o-20170730_git-87-gbbe3c2b_GH0.tar.gz) = 1576650
diff --git a/math/g2o/pkg-descr b/math/g2o/pkg-descr
new file mode 100644
index 000000000000..37991b07414e
--- /dev/null
+++ b/math/g2o/pkg-descr
@@ -0,0 +1,18 @@
+g2o is an open-source C++ framework for optimizing graph-based nonlinear error
+functions. g2o has been designed to be easily extensible to a wide range of
+problems and a new problem typically can be specified in a few lines of code.
+The current implementation provides solutions to several variants of SLAM and
+BA.
+
+A wide range of problems in robotics as well as in computer-vision involve the
+minimization of a non-linear error function that can be represented as a graph.
+Typical instances are simultaneous localization and mapping (SLAM) or bundle
+adjustment (BA). The overall goal in these problems is to find the configuration
+of parameters or state variables that maximally explain a set of measurements
+affected by Gaussian noise. g2o is an open-source C++ framework for such
+nonlinear least squares problems. g2o has been designed to be easily extensible
+to a wide range of problems and a new problem typically can be specified in a
+few lines of code. The current implementation provides solutions to several
+variants of SLAM and BA.
+
+WWW: http://openslam.org/g2o.html
diff --git a/math/g2o/pkg-plist b/math/g2o/pkg-plist
new file mode 100644
index 000000000000..a751bdd368e9
--- /dev/null
+++ b/math/g2o/pkg-plist
@@ -0,0 +1,253 @@
+bin/g2o
+bin/g2o_anonymize_observations
+bin/g2o_simulator2d
+bin/g2o_simulator3d
+bin/g2o_viewer
+include/g2o/apps/g2o_cli/dl_wrapper.h
+include/g2o/apps/g2o_cli/g2o_cli_api.h
+include/g2o/apps/g2o_cli/g2o_common.h
+include/g2o/apps/g2o_cli/output_helper.h
+include/g2o/apps/g2o_hierarchical/backbone_tree_action.h
+include/g2o/apps/g2o_hierarchical/edge_creator.h
+include/g2o/apps/g2o_hierarchical/edge_labeler.h
+include/g2o/apps/g2o_hierarchical/edge_types_cost_function.h
+include/g2o/apps/g2o_hierarchical/g2o_hierarchical_api.h
+include/g2o/apps/g2o_hierarchical/simple_star_ops.h
+include/g2o/apps/g2o_hierarchical/star.h
+include/g2o/apps/g2o_simulator/g2o_simulator_api.h
+include/g2o/apps/g2o_simulator/pointsensorparameters.h
+include/g2o/apps/g2o_simulator/sensor_line3d.h
+include/g2o/apps/g2o_simulator/sensor_odometry.h
+include/g2o/apps/g2o_simulator/sensor_odometry2d.h
+include/g2o/apps/g2o_simulator/sensor_odometry3d.h
+include/g2o/apps/g2o_simulator/sensor_pointxy.h
+include/g2o/apps/g2o_simulator/sensor_pointxy_bearing.h
+include/g2o/apps/g2o_simulator/sensor_pointxy_offset.h
+include/g2o/apps/g2o_simulator/sensor_pointxyz.h
+include/g2o/apps/g2o_simulator/sensor_pointxyz_depth.h
+include/g2o/apps/g2o_simulator/sensor_pointxyz_disparity.h
+include/g2o/apps/g2o_simulator/sensor_pose2d.h
+include/g2o/apps/g2o_simulator/sensor_pose3d.h
+include/g2o/apps/g2o_simulator/sensor_pose3d_offset.h
+include/g2o/apps/g2o_simulator/sensor_se3_prior.h
+include/g2o/apps/g2o_simulator/sensor_segment2d.h
+include/g2o/apps/g2o_simulator/sensor_segment2d_line.h
+include/g2o/apps/g2o_simulator/sensor_segment2d_pointline.h
+include/g2o/apps/g2o_simulator/simulator.h
+include/g2o/apps/g2o_simulator/simulator2d.h
+include/g2o/apps/g2o_simulator/simulator2d_base.h
+include/g2o/apps/g2o_simulator/simulator3d.h
+include/g2o/apps/g2o_simulator/simulator3d_base.h
+include/g2o/apps/g2o_simulator/simutils.h
+include/g2o/apps/g2o_viewer/g2o_qglviewer.h
+include/g2o/apps/g2o_viewer/g2o_viewer_api.h
+include/g2o/apps/g2o_viewer/gui_hyper_graph_action.h
+include/g2o/apps/g2o_viewer/main_window.h
+include/g2o/apps/g2o_viewer/properties_widget.h
+include/g2o/apps/g2o_viewer/run_g2o_viewer.h
+include/g2o/apps/g2o_viewer/stream_redirect.h
+include/g2o/apps/g2o_viewer/ui_base_main_window.h
+include/g2o/apps/g2o_viewer/ui_base_properties_widget.h
+include/g2o/apps/g2o_viewer/viewer_properties_widget.h
+include/g2o/config.h
+include/g2o/core/base_binary_edge.h
+include/g2o/core/base_binary_edge.hpp
+include/g2o/core/base_edge.h
+include/g2o/core/base_multi_edge.h
+include/g2o/core/base_multi_edge.hpp
+include/g2o/core/base_unary_edge.h
+include/g2o/core/base_unary_edge.hpp
+include/g2o/core/base_vertex.h
+include/g2o/core/base_vertex.hpp
+include/g2o/core/batch_stats.h
+include/g2o/core/block_solver.h
+include/g2o/core/block_solver.hpp
+include/g2o/core/cache.h
+include/g2o/core/creators.h
+include/g2o/core/dynamic_aligned_buffer.hpp
+include/g2o/core/eigen_types.h
+include/g2o/core/estimate_propagator.h
+include/g2o/core/factory.h
+include/g2o/core/g2o_core_api.h
+include/g2o/core/hyper_dijkstra.h
+include/g2o/core/hyper_graph.h
+include/g2o/core/hyper_graph_action.h
+include/g2o/core/jacobian_workspace.h
+include/g2o/core/linear_solver.h
+include/g2o/core/marginal_covariance_cholesky.h
+include/g2o/core/matrix_operations.h
+include/g2o/core/matrix_structure.h
+include/g2o/core/openmp_mutex.h
+include/g2o/core/optimizable_graph.h
+include/g2o/core/optimization_algorithm.h
+include/g2o/core/optimization_algorithm_dogleg.h
+include/g2o/core/optimization_algorithm_factory.h
+include/g2o/core/optimization_algorithm_gauss_newton.h
+include/g2o/core/optimization_algorithm_levenberg.h
+include/g2o/core/optimization_algorithm_property.h
+include/g2o/core/optimization_algorithm_with_hessian.h
+include/g2o/core/ownership.h
+include/g2o/core/parameter.h
+include/g2o/core/parameter_container.h
+include/g2o/core/robust_kernel.h
+include/g2o/core/robust_kernel_factory.h
+include/g2o/core/robust_kernel_impl.h
+include/g2o/core/solver.h
+include/g2o/core/sparse_block_matrix.h
+include/g2o/core/sparse_block_matrix.hpp
+include/g2o/core/sparse_block_matrix_ccs.h
+include/g2o/core/sparse_block_matrix_diagonal.h
+include/g2o/core/sparse_optimizer.h
+include/g2o/core/sparse_optimizer_terminate_action.h
+include/g2o/freeglut/freeglut_minimal.h
+include/g2o/solvers/csparse/csparse_helper.h
+include/g2o/solvers/csparse/g2o_csparse_api.h
+include/g2o/solvers/csparse/g2o_csparse_extension_api.h
+include/g2o/solvers/csparse/linear_solver_csparse.h
+include/g2o/solvers/dense/linear_solver_dense.h
+include/g2o/solvers/eigen/linear_solver_eigen.h
+include/g2o/solvers/pcg/linear_solver_pcg.h
+include/g2o/solvers/pcg/linear_solver_pcg.hpp
+include/g2o/solvers/slam2d_linear/g2o_slam2d_linear_api.h
+include/g2o/solvers/slam2d_linear/solver_slam2d_linear.h
+include/g2o/solvers/structure_only/structure_only_solver.h
+include/g2o/stuff/color_macros.h
+include/g2o/stuff/command_args.h
+include/g2o/stuff/filesys_tools.h
+include/g2o/stuff/g2o_stuff_api.h
+include/g2o/stuff/macros.h
+include/g2o/stuff/misc.h
+include/g2o/stuff/opengl_primitives.h
+include/g2o/stuff/opengl_wrapper.h
+include/g2o/stuff/os_specific.h
+include/g2o/stuff/property.h
+include/g2o/stuff/sampler.h
+include/g2o/stuff/scoped_pointer.h
+include/g2o/stuff/sparse_helper.h
+include/g2o/stuff/string_tools.h
+include/g2o/stuff/tictoc.h
+include/g2o/stuff/timeutil.h
+include/g2o/stuff/unscented.h
+include/g2o/types/data/data_queue.h
+include/g2o/types/data/g2o_types_data_api.h
+include/g2o/types/data/laser_parameters.h
+include/g2o/types/data/raw_laser.h
+include/g2o/types/data/robot_data.h
+include/g2o/types/data/robot_laser.h
+include/g2o/types/data/types_data.h
+include/g2o/types/data/vertex_ellipse.h
+include/g2o/types/data/vertex_tag.h
+include/g2o/types/icp/g2o_types_icp_api.h
+include/g2o/types/icp/types_icp.h
+include/g2o/types/sba/g2o_types_sba_api.h
+include/g2o/types/sba/sbacam.h
+include/g2o/types/sba/types_sba.h
+include/g2o/types/sba/types_six_dof_expmap.h
+include/g2o/types/sclam2d/edge_se2_odom_differential_calib.h
+include/g2o/types/sclam2d/edge_se2_sensor_calib.h
+include/g2o/types/sclam2d/g2o_types_sclam2d_api.h
+include/g2o/types/sclam2d/odometry_measurement.h
+include/g2o/types/sclam2d/types_sclam2d.h
+include/g2o/types/sclam2d/vertex_odom_differential_params.h
+include/g2o/types/sim3/sim3.h
+include/g2o/types/sim3/types_seven_dof_expmap.h
+include/g2o/types/slam2d/edge_pointxy.h
+include/g2o/types/slam2d/edge_se2.h
+include/g2o/types/slam2d/edge_se2_lotsofxy.h
+include/g2o/types/slam2d/edge_se2_offset.h
+include/g2o/types/slam2d/edge_se2_pointxy.h
+include/g2o/types/slam2d/edge_se2_pointxy_bearing.h
+include/g2o/types/slam2d/edge_se2_pointxy_calib.h
+include/g2o/types/slam2d/edge_se2_pointxy_offset.h
+include/g2o/types/slam2d/edge_se2_prior.h
+include/g2o/types/slam2d/edge_se2_twopointsxy.h
+include/g2o/types/slam2d/edge_se2_xyprior.h
+include/g2o/types/slam2d/edge_xy_prior.h
+include/g2o/types/slam2d/g2o_types_slam2d_api.h
+include/g2o/types/slam2d/parameter_se2_offset.h
+include/g2o/types/slam2d/se2.h
+include/g2o/types/slam2d/types_slam2d.h
+include/g2o/types/slam2d/vertex_point_xy.h
+include/g2o/types/slam2d/vertex_se2.h
+include/g2o/types/slam2d_addons/edge_line2d.h
+include/g2o/types/slam2d_addons/edge_line2d_pointxy.h
+include/g2o/types/slam2d_addons/edge_se2_line2d.h
+include/g2o/types/slam2d_addons/edge_se2_segment2d.h
+include/g2o/types/slam2d_addons/edge_se2_segment2d_line.h
+include/g2o/types/slam2d_addons/edge_se2_segment2d_pointLine.h
+include/g2o/types/slam2d_addons/g2o_types_slam2d_addons_api.h
+include/g2o/types/slam2d_addons/line_2d.h
+include/g2o/types/slam2d_addons/types_slam2d_addons.h
+include/g2o/types/slam2d_addons/vertex_line2d.h
+include/g2o/types/slam2d_addons/vertex_segment2d.h
+include/g2o/types/slam3d/dquat2mat.h
+include/g2o/types/slam3d/edge_pointxyz.h
+include/g2o/types/slam3d/edge_se3.h
+include/g2o/types/slam3d/edge_se3_lotsofxyz.h
+include/g2o/types/slam3d/edge_se3_offset.h
+include/g2o/types/slam3d/edge_se3_pointxyz.h
+include/g2o/types/slam3d/edge_se3_pointxyz_depth.h
+include/g2o/types/slam3d/edge_se3_pointxyz_disparity.h
+include/g2o/types/slam3d/edge_se3_prior.h
+include/g2o/types/slam3d/edge_xyz_prior.h
+include/g2o/types/slam3d/g2o_types_slam3d_api.h
+include/g2o/types/slam3d/isometry3d_gradients.h
+include/g2o/types/slam3d/isometry3d_mappings.h
+include/g2o/types/slam3d/parameter_camera.h
+include/g2o/types/slam3d/parameter_se3_offset.h
+include/g2o/types/slam3d/parameter_stereo_camera.h
+include/g2o/types/slam3d/se3_ops.h
+include/g2o/types/slam3d/se3_ops.hpp
+include/g2o/types/slam3d/se3quat.h
+include/g2o/types/slam3d/types_slam3d.h
+include/g2o/types/slam3d/vertex_pointxyz.h
+include/g2o/types/slam3d/vertex_se3.h
+include/g2o/types/slam3d_addons/edge_plane.h
+include/g2o/types/slam3d_addons/edge_se3_calib.h
+include/g2o/types/slam3d_addons/edge_se3_euler.h
+include/g2o/types/slam3d_addons/edge_se3_line.h
+include/g2o/types/slam3d_addons/edge_se3_plane_calib.h
+include/g2o/types/slam3d_addons/g2o_types_slam3d_addons_api.h
+include/g2o/types/slam3d_addons/line3d.h
+include/g2o/types/slam3d_addons/plane3d.h
+include/g2o/types/slam3d_addons/types_slam3d_addons.h
+include/g2o/types/slam3d_addons/vertex_line3d.h
+include/g2o/types/slam3d_addons/vertex_plane.h
+include/g2o/types/slam3d_addons/vertex_se3_euler.h
+include/slam_parser/interface/abstract_slam_interface.h
+include/slam_parser/interface/parser_interface.h
+include/slam_parser/interface/slam_context_interface.h
+include/slam_parser/parser/FlexLexer.h
+include/slam_parser/parser/bison_parser.h
+include/slam_parser/parser/commands.h
+include/slam_parser/parser/driver.h
+include/slam_parser/parser/location.hh
+include/slam_parser/parser/position.hh
+include/slam_parser/parser/scanner.h
+include/slam_parser/parser/slam_context.h
+include/slam_parser/parser/stack.hh
+lib/libg2o_cli.so
+lib/libg2o_core.so
+lib/libg2o_csparse_extension.so
+lib/libg2o_ext_freeglut_minimal.so
+lib/libg2o_interface.so
+lib/libg2o_opengl_helper.so
+lib/libg2o_parser.so
+lib/libg2o_simulator.so
+lib/libg2o_solver_csparse.so
+lib/libg2o_solver_dense.so
+lib/libg2o_solver_eigen.so
+lib/libg2o_solver_pcg.so
+lib/libg2o_solver_slam2d_linear.so
+lib/libg2o_solver_structure_only.so
+lib/libg2o_stuff.so
+lib/libg2o_types_data.so
+lib/libg2o_types_icp.so
+lib/libg2o_types_sba.so
+lib/libg2o_types_sclam2d.so
+lib/libg2o_types_sim3.so
+lib/libg2o_types_slam2d.so
+lib/libg2o_types_slam2d_addons.so
+lib/libg2o_types_slam3d.so
+lib/libg2o_types_slam3d_addons.so
+lib/libg2o_viewer.so