Skip to content
Snippets Groups Projects
Commit b3648239 authored by Anthony Mallet's avatar Anthony Mallet
Browse files

[wip/ros-rviz] Move to robotpkg

parent b8c7b203
No related branches found
No related tags found
No related merge requests found
......@@ -89,7 +89,6 @@ SUBDIR+= robotModelParser-libs
SUBDIR+= robot-viewer
SUBDIR+= romeo-description
SUBDIR+= ros-realtime-tools
SUBDIR+= ros-rviz
SUBDIR+= rtslam-genom
SUBDIR+= sot-application
SUBDIR+= sot-romeo
......
3D visualization tool for ROS.
# robotpkg Makefile for: graphics/ros-rviz
# Created: Charles Lesire on Wed, 9 Apr 2014
#
ROS_PKG= rviz
ROS_VERSION= 1.11.3
ROS_REPO= ros-visualization
CATEGORIES= graphics
ROS_COMMENT= 3D visualization tool
include ../../meta-pkgs/ros-base/Makefile.common
DEPEND_ABI.libogre += libogre>=1.7
include ../../devel/ros-catkin/depend.mk
include ../../devel/ros-cmake-modules/depend.mk
include ../../devel/ros-pluginlib/depend.mk
include ../../devel/ros-ros/depend.mk
include ../../devel/yaml-cpp/depend.mk
include ../../graphics/assimp/depend.mk
include ../../graphics/ros-interactive-markers/depend.mk
include ../../graphics/ros-python-qt-binding/depend.mk
include ../../graphics/ros-robot-model/depend.mk
include ../../image/ros-image-common/depend.mk
include ../../image/ros-vision-opencv/depend.mk
include ../../interfaces/ros-comm-msgs/depend.mk
include ../../interfaces/ros-common-msgs/depend.mk
include ../../interfaces/ros-map-msgs/depend.mk
include ../../interfaces/ros-std-msgs/depend.mk
include ../../mapping/ros-laser-geometry/depend.mk
include ../../math/eigen3/depend.mk
include ../../math/ros-geometry/depend.mk
include ../../middleware/ros-comm/depend.mk
include ../../net/ros-resource-retriever/depend.mk
include ../../mk/sysdep/libogre.mk
include ../../mk/sysdep/qt4-libs.mk
include ../../mk/sysdep/qt4-opengl.mk
include ../../mk/sysdep/tinyxml.mk
include ../../mk/robotpkg.mk
@comment Mon Oct 27 15:00:49 CET 2014
bin/rviz
include/rviz/add_display_dialog.h
include/rviz/bit_allocator.h
include/rviz/class_id_recording_factory.h
include/rviz/config.h
include/rviz/default_plugin/axes_display.h
include/rviz/default_plugin/camera_display.h
include/rviz/default_plugin/depth_cloud_display.h
include/rviz/default_plugin/depth_cloud_mld.h
include/rviz/default_plugin/effort_display.h
include/rviz/default_plugin/effort_visual.h
include/rviz/default_plugin/fluid_pressure_display.h
include/rviz/default_plugin/grid_cells_display.h
include/rviz/default_plugin/grid_display.h
include/rviz/default_plugin/illuminance_display.h
include/rviz/default_plugin/image_display.h
include/rviz/default_plugin/interactive_marker_display.h
include/rviz/default_plugin/interactive_markers/integer_action.h
include/rviz/default_plugin/interactive_markers/interactive_marker.h
include/rviz/default_plugin/interactive_markers/interactive_marker_control.h
include/rviz/default_plugin/laser_scan_display.h
include/rviz/default_plugin/map_display.h
include/rviz/default_plugin/marker_array_display.h
include/rviz/default_plugin/marker_display.h
include/rviz/default_plugin/markers/arrow_marker.h
include/rviz/default_plugin/markers/line_list_marker.h
include/rviz/default_plugin/markers/line_strip_marker.h
include/rviz/default_plugin/markers/marker_base.h
include/rviz/default_plugin/markers/marker_selection_handler.h
include/rviz/default_plugin/markers/mesh_resource_marker.h
include/rviz/default_plugin/markers/points_marker.h
include/rviz/default_plugin/markers/shape_marker.h
include/rviz/default_plugin/markers/text_view_facing_marker.h
include/rviz/default_plugin/markers/triangle_list_marker.h
include/rviz/default_plugin/odometry_display.h
include/rviz/default_plugin/path_display.h
include/rviz/default_plugin/point_cloud2_display.h
include/rviz/default_plugin/point_cloud_common.h
include/rviz/default_plugin/point_cloud_display.h
include/rviz/default_plugin/point_cloud_transformer.h
include/rviz/default_plugin/point_cloud_transformers.h
include/rviz/default_plugin/point_display.h
include/rviz/default_plugin/point_visual.h
include/rviz/default_plugin/polygon_display.h
include/rviz/default_plugin/pose_array_display.h
include/rviz/default_plugin/pose_display.h
include/rviz/default_plugin/range_display.h
include/rviz/default_plugin/relative_humidity_display.h
include/rviz/default_plugin/robot_model_display.h
include/rviz/default_plugin/temperature_display.h
include/rviz/default_plugin/tf_display.h
include/rviz/default_plugin/tools/focus_tool.h
include/rviz/default_plugin/tools/goal_tool.h
include/rviz/default_plugin/tools/initial_pose_tool.h
include/rviz/default_plugin/tools/interaction_tool.h
include/rviz/default_plugin/tools/measure_tool.h
include/rviz/default_plugin/tools/move_tool.h
include/rviz/default_plugin/tools/point_tool.h
include/rviz/default_plugin/tools/pose_tool.h
include/rviz/default_plugin/tools/selection_tool.h
include/rviz/default_plugin/view_controllers/fixed_orientation_ortho_view_controller.h
include/rviz/default_plugin/view_controllers/fps_view_controller.h
include/rviz/default_plugin/view_controllers/orbit_view_controller.h
include/rviz/default_plugin/view_controllers/xy_orbit_view_controller.h
include/rviz/default_plugin/wrench_display.h
include/rviz/default_plugin/wrench_visual.h
include/rviz/display.h
include/rviz/display_context.h
include/rviz/display_factory.h
include/rviz/display_group.h
include/rviz/displays_panel.h
include/rviz/env_config.h
include/rviz/factory.h
include/rviz/failed_display.h
include/rviz/failed_panel.h
include/rviz/failed_tool.h
include/rviz/failed_view_controller.h
include/rviz/frame_manager.h
include/rviz/frame_position_tracking_view_controller.h
include/rviz/geometry.h
include/rviz/help_panel.h
include/rviz/helpers/color.h
include/rviz/image/image_display_base.h
include/rviz/image/ros_image_texture.h
include/rviz/interactive_object.h
include/rviz/load_resource.h
include/rviz/loading_dialog.h
include/rviz/mesh_loader.h
include/rviz/message_filter_display.h
include/rviz/msg_conversions.h
include/rviz/new_object_dialog.h
include/rviz/ogre_helpers/apply_visibility_bits.h
include/rviz/ogre_helpers/arrow.h
include/rviz/ogre_helpers/axes.h
include/rviz/ogre_helpers/billboard_line.h
include/rviz/ogre_helpers/camera_base.h
include/rviz/ogre_helpers/custom_parameter_indices.h
include/rviz/ogre_helpers/grid.h
include/rviz/ogre_helpers/initialization.h
include/rviz/ogre_helpers/line.h
include/rviz/ogre_helpers/mesh_shape.h
include/rviz/ogre_helpers/movable_text.h
include/rviz/ogre_helpers/object.h
include/rviz/ogre_helpers/ogre_logging.h
include/rviz/ogre_helpers/ogre_render_queue_clearer.h
include/rviz/ogre_helpers/orbit_camera.h
include/rviz/ogre_helpers/orthographic.h
include/rviz/ogre_helpers/point_cloud.h
include/rviz/ogre_helpers/qt_ogre_render_window.h
include/rviz/ogre_helpers/render_system.h
include/rviz/ogre_helpers/render_widget.h
include/rviz/ogre_helpers/shape.h
include/rviz/ogre_helpers/stl_loader.h
include/rviz/panel.h
include/rviz/panel_dock_widget.h
include/rviz/panel_factory.h
include/rviz/pluginlib_factory.h
include/rviz/properties/bool_property.h
include/rviz/properties/color_editor.h
include/rviz/properties/color_property.h
include/rviz/properties/combo_box.h
include/rviz/properties/display_group_visibility_property.h
include/rviz/properties/display_visibility_property.h
include/rviz/properties/editable_combo_box.h
include/rviz/properties/editable_enum_property.h
include/rviz/properties/enum_property.h
include/rviz/properties/float_edit.h
include/rviz/properties/float_property.h
include/rviz/properties/int_property.h
include/rviz/properties/line_edit_with_button.h
include/rviz/properties/parse_color.h
include/rviz/properties/property.h
include/rviz/properties/property_tree_delegate.h
include/rviz/properties/property_tree_model.h
include/rviz/properties/property_tree_widget.h
include/rviz/properties/property_tree_with_help.h
include/rviz/properties/quaternion_property.h
include/rviz/properties/ros_topic_property.h
include/rviz/properties/splitter_handle.h
include/rviz/properties/status_list.h
include/rviz/properties/status_property.h
include/rviz/properties/string_property.h
include/rviz/properties/tf_frame_property.h
include/rviz/properties/vector_property.h
include/rviz/render_panel.h
include/rviz/robot/link_updater.h
include/rviz/robot/robot.h
include/rviz/robot/robot_joint.h
include/rviz/robot/robot_link.h
include/rviz/robot/tf_link_updater.h
include/rviz/scaled_image_widget.h
include/rviz/screenshot_dialog.h
include/rviz/selection/forwards.h
include/rviz/selection/selection_handler.h
include/rviz/selection/selection_manager.h
include/rviz/selection_panel.h
include/rviz/splash_screen.h
include/rviz/time_panel.h
include/rviz/tool.h
include/rviz/tool_manager.h
include/rviz/tool_properties_panel.h
include/rviz/uniform_string_stream.h
include/rviz/validate_floats.h
include/rviz/view_controller.h
include/rviz/view_manager.h
include/rviz/viewport_mouse_event.h
include/rviz/views_panel.h
include/rviz/visualization_frame.h
include/rviz/visualization_manager.h
include/rviz/visualizer_app.h
include/rviz/wait_for_master_dialog.h
include/rviz/widget_geometry_change_detector.h
include/rviz/window_manager_interface.h
include/rviz/yaml_config_reader.h
include/rviz/yaml_config_writer.h
lib/libdefault_plugin.so
lib/librviz.so
lib/pkgconfig/rviz.pc
${PYTHON_SITELIB}/rviz-${PKGVERSION}-py${PYTHON_VERSION}.egg-info
${PYTHON_SITELIB}/rviz/__init__.py
${PYTHON_SITELIB}/rviz/librviz_sip.so
lib/rviz/rviz
share/rviz/cmake/rvizConfig-version.cmake
share/rviz/cmake/rvizConfig.cmake
share/rviz/default.rviz
share/rviz/icons/classes/Axes.png
share/rviz/icons/classes/Camera.png
share/rviz/icons/classes/DepthCloud.png
share/rviz/icons/classes/Displays.svg
share/rviz/icons/classes/Effort.png
share/rviz/icons/classes/FluidPressure.png
share/rviz/icons/classes/FocusCamera.svg
share/rviz/icons/classes/Grid.png
share/rviz/icons/classes/GridCells.png
share/rviz/icons/classes/Group.png
share/rviz/icons/classes/Help.svg
share/rviz/icons/classes/Illuminance.png
share/rviz/icons/classes/Image.png
share/rviz/icons/classes/Interact.png
share/rviz/icons/classes/InteractiveMarkers.png
share/rviz/icons/classes/LaserScan.png
share/rviz/icons/classes/Map.png
share/rviz/icons/classes/Marker.png
share/rviz/icons/classes/MarkerArray.png
share/rviz/icons/classes/Measure.svg
share/rviz/icons/classes/MoveCamera.png
share/rviz/icons/classes/Odometry.png
share/rviz/icons/classes/Path.png
share/rviz/icons/classes/PointCloud.png
share/rviz/icons/classes/PointCloud2.png
share/rviz/icons/classes/PointStamped.png
share/rviz/icons/classes/Polygon.png
share/rviz/icons/classes/Pose.png
share/rviz/icons/classes/PoseArray.png
share/rviz/icons/classes/PublishPoint.svg
share/rviz/icons/classes/Range.png
share/rviz/icons/classes/RelativeHumidity.png
share/rviz/icons/classes/RobotJoint.png
share/rviz/icons/classes/RobotLink.png
share/rviz/icons/classes/RobotLinkNoGeom.png
share/rviz/icons/classes/RobotModel.png
share/rviz/icons/classes/Select.png
share/rviz/icons/classes/Selection.png
share/rviz/icons/classes/SetGoal.png
share/rviz/icons/classes/SetInitialPose.png
share/rviz/icons/classes/TF.png
share/rviz/icons/classes/Temperature.png
share/rviz/icons/classes/Time.svg
share/rviz/icons/classes/Tool Properties.png
share/rviz/icons/classes/Views.svg
share/rviz/icons/classes/WrenchStamped.png
share/rviz/icons/classes/src/Arrow.xcf
share/rviz/icons/classes/src/Axes.xcf
share/rviz/icons/classes/src/GridCells.xcf
share/rviz/icons/classes/src/InteractiveMarker.xcf
share/rviz/icons/classes/src/Map.xcf
share/rviz/icons/classes/src/MarkerArray.xcf
share/rviz/icons/classes/src/Poly.xcf
share/rviz/icons/classes/src/Polygon.xcf
share/rviz/icons/classes/src/PoseArray.xcf
share/rviz/icons/classes/src/Range.xcf
share/rviz/icons/classes/src/RobotModel.xcf
share/rviz/icons/classes/src/TF.xcf
share/rviz/icons/crosshair.svg
share/rviz/icons/cursor.svg
share/rviz/icons/default_class_icon.png
share/rviz/icons/default_package_icon.png
share/rviz/icons/error.png
share/rviz/icons/failed_display.png
share/rviz/icons/forbidden.svg
share/rviz/icons/left_dock.svg
share/rviz/icons/menu.svg
share/rviz/icons/minus.png
share/rviz/icons/move1d.svg
share/rviz/icons/move2d.svg
share/rviz/icons/move_z.svg
share/rviz/icons/moverotate.svg
share/rviz/icons/ok.png
share/rviz/icons/options.png
share/rviz/icons/package.png
share/rviz/icons/plus.png
share/rviz/icons/right_dock.svg
share/rviz/icons/rotate.svg
share/rviz/icons/rotate_cam.svg
share/rviz/icons/visibility.svg
share/rviz/icons/warning.png
share/rviz/icons/zoom.svg
share/rviz/images/splash.png
share/rviz/images/splash_overlay.png
share/rviz/ogre_media/fonts/arial.fontdef
share/rviz/ogre_media/fonts/arial.ttf
share/rviz/ogre_media/fonts/font_arial.png
share/rviz/ogre_media/materials/glsl120/black.frag
share/rviz/ogre_media/materials/glsl120/depth.frag
share/rviz/ogre_media/materials/glsl120/depth.vert
share/rviz/ogre_media/materials/glsl120/depth_circle.frag
share/rviz/ogre_media/materials/glsl120/flat_color.frag
share/rviz/ogre_media/materials/glsl120/flat_color_circle.frag
share/rviz/ogre_media/materials/glsl120/glsl120.program
share/rviz/ogre_media/materials/glsl120/include/circle_impl.frag
share/rviz/ogre_media/materials/glsl120/include/pack_depth.frag
share/rviz/ogre_media/materials/glsl120/include/pass_depth.vert
share/rviz/ogre_media/materials/glsl120/indexed_8bit_image.frag
share/rviz/ogre_media/materials/glsl120/indexed_8bit_image.vert
share/rviz/ogre_media/materials/glsl120/nogp/billboard.vert
share/rviz/ogre_media/materials/glsl120/nogp/billboard_tile.vert
share/rviz/ogre_media/materials/glsl120/nogp/box.frag
share/rviz/ogre_media/materials/glsl120/nogp/box.vert
share/rviz/ogre_media/materials/glsl120/nogp/nogp.program
share/rviz/ogre_media/materials/glsl120/pass_color.frag
share/rviz/ogre_media/materials/glsl120/pass_color_circle.frag
share/rviz/ogre_media/materials/glsl120/pickcolor.frag
share/rviz/ogre_media/materials/glsl120/pickcolor_circle.frag
share/rviz/ogre_media/materials/glsl120/point.vert
share/rviz/ogre_media/materials/glsl120/shaded_circle.frag
share/rviz/ogre_media/materials/glsl120/smooth_square.frag
share/rviz/ogre_media/materials/glsl120/test_glsl.sh
share/rviz/ogre_media/materials/glsl150/billboard.geom
share/rviz/ogre_media/materials/glsl150/box.geom
share/rviz/ogre_media/materials/glsl150/glsl150.program
share/rviz/ogre_media/materials/glsl150/pass_pos_color.vert
share/rviz/ogre_media/materials/scripts/default_pick_and_depth.material
share/rviz/ogre_media/materials/scripts/indexed_8bit_image.material
share/rviz/ogre_media/materials/scripts/point_cloud_point.material
share/rviz/ogre_media/materials/scripts/point_cloud_tile.material
share/rviz/ogre_media/materials/scripts120/point_cloud_box.material
share/rviz/ogre_media/materials/scripts120/point_cloud_flat_square.material
share/rviz/ogre_media/materials/scripts120/point_cloud_sphere.material
share/rviz/ogre_media/materials/scripts120/point_cloud_square.material
share/rviz/ogre_media/materials/scripts150/point_cloud_box.material
share/rviz/ogre_media/materials/scripts150/point_cloud_flat_square.material
share/rviz/ogre_media/materials/scripts150/point_cloud_sphere.material
share/rviz/ogre_media/materials/scripts150/point_cloud_square.material
share/rviz/ogre_media/models/rviz_cone.mesh
share/rviz/ogre_media/models/rviz_cube.mesh
share/rviz/ogre_media/models/rviz_cylinder.mesh
share/rviz/ogre_media/models/rviz_sphere.mesh
share/rviz/ogre_media/plugins.cfg
share/rviz/ogre_media/textures/no_image.png
share/rviz/package.xml
share/rviz/plugin_description.xml
@pkgdir include/rviz/default_plugin/CMakeFiles/default_plugin.dir/view_controllers
@pkgdir include/rviz/default_plugin/CMakeFiles/default_plugin.dir/tools
@pkgdir include/rviz/default_plugin/CMakeFiles/default_plugin.dir/markers
@pkgdir include/rviz/default_plugin/CMakeFiles/default_plugin.dir/interactive_markers
@pkgdir include/rviz/CMakeFiles/rviz.dir/selection
@pkgdir include/rviz/CMakeFiles/rviz.dir/robot
@pkgdir include/rviz/CMakeFiles/rviz.dir/properties
@pkgdir include/rviz/CMakeFiles/rviz.dir/ogre_helpers
@pkgdir include/rviz/CMakeFiles/rviz.dir/image
@pkgdir include/rviz/CMakeFiles/executable.dir
# robotpkg depend.mk for: graphics/ros-rviz
# Created: Charles Lesire on Wed, 9 Apr 2014
#
DEPEND_DEPTH:= ${DEPEND_DEPTH}+
ROS_ROBOT_STATE_PUBLISHER_DEPEND_MK:= ${ROS_ROBOT_STATE_PUBLISHER_DEPEND_MK}+
ifeq (+,$(DEPEND_DEPTH))
DEPEND_PKG+= ros-robot-state-publisher
endif
ifeq (+,$(ROS_ROBOT_STATE_PUBLISHER_DEPEND_MK)) # --------------------------------------
include ../../meta-pkgs/ros-base/depend.common
PREFER.ros-robot-state-publisher?= ${PREFER.ros-base}
SYSTEM_PREFIX.ros-robot-state-publisher?= ${SYSTEM_PREFIX.ros-base}
DEPEND_USE+= ros-robot-state-publisher
ROS_DEPEND_USE+= ros-robot-state-publisher
DEPEND_ABI.ros-robot-state-publisher?= ros-robot-state-publisher>=1.9
DEPEND_DIR.ros-robot-state-publisher= ../../wip/ros-robot-state-publisher
DEPEND_ABI.ros += ros>=groovy
SYSTEM_SEARCH.ros-robot-state-publisher=\
include/robot_state_publisher/robot_state_publisher.h \
lib/robot_state_publisher/robot_state_publisher \
'share/robot_state_publisher/${ROS_STACKAGE}:/<version>/s/[^0-9.]//gp' \
'lib/pkgconfig/robot_state_publisher.pc:/Version/s/[^0-9.]//gp'
endif # ROS_ROBOT_STATE_PUBLISHER_DEPEND_MK --------------------------------------------
DEPEND_DEPTH:= ${DEPEND_DEPTH:+=}
SHA1 (ros/rviz/1.11.3.tar.gz) = ff3415f69fe72ad8a9d8222ba2dde69b3e480dce
RMD160 (ros/rviz/1.11.3.tar.gz) = 341ece0208800ae2327ca7639ef2e07a35af2e5b
Size (ros/rviz/1.11.3.tar.gz) = 4521400 bytes
SHA1 (patch-aa) = 27a7dfe8799ac3aa469524a03ca3259d57131be6
Set assimp flags before the definition of the targets where they are used.
Link with assimp as a private library so that the dependency is not transitive
(for default_plugin).
--- src/rviz/CMakeLists.txt~ 2014-06-27 00:15:49.000000000 +0200
+++ src/rviz/CMakeLists.txt 2014-10-28 17:24:12.212341916 +0100
@@ -11,6 +11,29 @@
configure_file(env_config.cpp.in ${ENV_CONFIG_FILE} @ONLY)
+find_package(ASSIMP QUIET)
+if (NOT ASSIMP_FOUND)
+ pkg_check_modules(ASSIMP assimp)
+endif()
+if (ASSIMP_FOUND)
+ if( NOT ${ASSIMP_VERSION} VERSION_LESS "2.0.1150" )
+ add_definitions(-DASSIMP_UNIFIED_HEADER_NAMES)
+ message(STATUS "Assimp version has unified headers")
+ else()
+ message(STATUS "Assimp version does not have unified headers")
+ endif()
+ include_directories(${ASSIMP_INCLUDE_DIRS})
+ link_directories(${ASSIMP_LIBRARY_DIRS})
+else()
+ message(STATUS "could not find assimp (perhaps available thorugh ROS package?), so assimping assimp v2")
+ set(ASSIMP_LIBRARIES assimp)
+ set(ASSIMP_LIBRARY_DIRS)
+ set(ASSIMP_CXX_FLAGS)
+ set(ASSIMP_CFLAGS_OTHER)
+ set(ASSIMP_LINK_FLAGS)
+ set(ASSIMP_INCLUDE_DIRS)
+endif()
+
# We create one lib with the C++...
qt4_wrap_cpp(MOC_FILES
@@ -183,13 +206,13 @@
)
target_link_libraries(${PROJECT_NAME}
- ${Boost_LIBRARIES}
+ LINK_PUBLIC ${Boost_LIBRARIES}
${catkin_LIBRARIES}
${OGRE_OV_LIBRARIES_ABS}
${OPENGL_LIBRARIES}
${QT_LIBRARIES}
${rviz_ADDITIONAL_LIBRARIES}
- assimp
+ LINK_PRIVATE assimp
yaml-cpp
)
@@ -197,29 +220,6 @@
set_target_properties(${PROJECT_NAME} PROPERTIES LINK_FLAGS "-undefined dynamic_lookup")
endif(APPLE)
-find_package(ASSIMP QUIET)
-if (NOT ASSIMP_FOUND)
- pkg_check_modules(ASSIMP assimp)
-endif()
-if (ASSIMP_FOUND)
- if( NOT ${ASSIMP_VERSION} VERSION_LESS "2.0.1150" )
- add_definitions(-DASSIMP_UNIFIED_HEADER_NAMES)
- message(STATUS "Assimp version has unified headers")
- else()
- message(STATUS "Assimp version does not have unified headers")
- endif()
- include_directories(${ASSIMP_INCLUDE_DIRS})
- link_directories(${ASSIMP_LIBRARY_DIRS})
-else()
- message(STATUS "could not find assimp (perhaps available thorugh ROS package?), so assimping assimp v2")
- set(ASSIMP_LIBRARIES assimp)
- set(ASSIMP_LIBRARY_DIRS)
- set(ASSIMP_CXX_FLAGS)
- set(ASSIMP_CFLAGS_OTHER)
- set(ASSIMP_LINK_FLAGS)
- set(ASSIMP_INCLUDE_DIRS)
-endif()
-
find_package(PkgConfig)
pkg_check_modules(NEW_YAMLCPP yaml-cpp>=0.5)
if(NEW_YAMLCPP_FOUND)
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment