diff --git a/jrl-dynamics-urdf/Makefile b/jrl-dynamics-urdf/Makefile index 17e04466046cb8a7a6532931de6dc3f3c10c49b1..c848c7614d2f9b617ce6ffa47c41f4e59897e11b 100644 --- a/jrl-dynamics-urdf/Makefile +++ b/jrl-dynamics-urdf/Makefile @@ -11,23 +11,20 @@ LICENSE= gnu-lgpl-v3 MAINTAINER= openrobots@laas.fr DYNAMIC_PLIST_DIRS+= share/doc/jrl-dynamics-urdf +USE_BOOST_LIBS+= filesystem system -CONFIGURE_ENV+=\ - ROS_ROOT=${PREFIX.ros-ros}/share/ros \ - ROS_PACKAGE_PATH=${WRKSRC}:${PREFIX.ros-ros}/share \ - CMAKE_PREFIX_PATH=${PREFIX.ros-ros} +CMAKE_ARGS+= -DGTEST_ROOT=${PREFIX.googletest} -# TODO -# missing dependencies: bullet -# missing dependencies: ros-robot-model -# - -include ../../devel/ros-ros/depend.mk +include ../../devel/boost-headers/depend.mk +include ../../devel/boost-libs/depend.mk +include ../../graphics/ros-robot-model/depend.mk include ../../interfaces/jrl-mal/depend.mk include ../../math/jrl-dynamics/depend.mk include ../../pkgtools/pkg-config/depend.mk +include ../../simulation/bullet/depend.mk include ../../mk/sysdep/cmake.mk include ../../mk/sysdep/doxygen.mk +include ../../mk/sysdep/googletest.mk include ../../mk/sysdep/graphviz.mk include ../../mk/sysdep/pdflatex.mk include ../../mk/language/c.mk diff --git a/jrl-dynamics-urdf/PLIST b/jrl-dynamics-urdf/PLIST new file mode 100644 index 0000000000000000000000000000000000000000..0f3d7b0feb6ca28b1c8ba09870329786d5ca8de6 --- /dev/null +++ b/jrl-dynamics-urdf/PLIST @@ -0,0 +1,4 @@ +@comment Wed Jul 10 15:12:11 CEST 2013 +bin/display-robot +include/jrl/dynamics/urdf/parser.hh +lib/libjrl-dynamics-urdf.so diff --git a/jrl-dynamics-urdf/depend.mk b/jrl-dynamics-urdf/depend.mk index 3df784a7e285fcd968d1a59459885d54911b55b5..62b327e7bef8740bebaf9fe9e4b28d24fc1ffb1a 100644 --- a/jrl-dynamics-urdf/depend.mk +++ b/jrl-dynamics-urdf/depend.mk @@ -2,25 +2,27 @@ # Created: Olivier Stasse on Fri, Jun 28 # -DEPEND_DEPTH:= ${DEPEND_DEPTH}+ -JRL_DYNAMICS_URDF_DEPEND_MK:=${JRL_DYNAMICS_URDF_DEPEND_MK}+ +DEPEND_DEPTH:= ${DEPEND_DEPTH}+ +JRL_DYNAMICS_URDF_DEPEND_MK:= ${JRL_DYNAMICS_URDF_DEPEND_MK}+ ifeq (+,$(DEPEND_DEPTH)) -DEPEND_PKG+= jrl-dynamics-urdf +DEPEND_PKG+= jrl-dynamics-urdf endif ifeq (+,$(JRL_DYNAMICS_DEPEND_MK)) # --------------------------------- -include ../../meta-pkgs/ros-base/depend.common -PREFER.jrl-dynamics-urdf?= ${PREFER.ros-base} -SYSTEM_PREFIX.jrl-dynamics-urdf?= ${SYSTEM_PREFIX.ros-base} +PREFER.jrl-dynamics-urdf?= robotpkg -DEPEND_USE+= jrl-dynamics-urdf +DEPEND_USE+= jrl-dynamics-urdf -DEPEND_ABI.jrl-dynamics-urdf?=jrl-dynamics-urdf>=1.0.0 -DEPEND_DIR.jrl-dynamics-urdf?=../../wip/jrl-dynamics-urdf +DEPEND_ABI.jrl-dynamics-urdf?= jrl-dynamics-urdf>=1.0.0 +DEPEND_DIR.jrl-dynamics-urdf?= ../../wip/jrl-dynamics-urdf -endif # JRL_DYNAMICS_URDF_DEPEND_MK --------------------------------------- +SYSTEM_SEARCH.jrl-dynamics-urdf=\ + 'bin/display-robot' \ + 'include/jrl/dynamics/urdf/parser.hh' \ + 'lib/libjrl-dynamics-urdf.so' -DEPEND_DEPTH:= ${DEPEND_DEPTH:+=} +endif # JRL_DYNAMICS_URDF_DEPEND_MK --------------------------------------- +DEPEND_DEPTH:= ${DEPEND_DEPTH:+=} diff --git a/jrl-dynamics-urdf/distinfo b/jrl-dynamics-urdf/distinfo index e369682a0aa962892b3d9f3efddaa14ca38665dd..c157559dbc6fceda8fc8459872410b9d73047728 100644 --- a/jrl-dynamics-urdf/distinfo +++ b/jrl-dynamics-urdf/distinfo @@ -1,5 +1,5 @@ SHA1 (jrl-dynamics-urdf-1.0.0.tar.gz) = 778d4acecc57e44f09203070ea22b2878d75eebd RMD160 (jrl-dynamics-urdf-1.0.0.tar.gz) = 64ce87fbbb8df2f8303e4c7b48dd22fc9dafdc1f Size (jrl-dynamics-urdf-1.0.0.tar.gz) = 84627 bytes -SHA1 (patch-aa) = 8d2542534c4c7c4137a51a2e463cd7cc3279e641 -SHA1 (patch-ab) = 8997549d8c4c42211ae76a67cab7ed43b8d6277a +SHA1 (patch-aa) = 1ce30933014528baac5b78a49a44f766145d9535 +SHA1 (patch-ab) = b372d20b214cfabac8af4f6a5dd80c3ffeb27cad diff --git a/jrl-dynamics-urdf/patches/patch-aa b/jrl-dynamics-urdf/patches/patch-aa index c1e11a66459beefab1b7682f08fade38c154f550..bf139a03453b3e44814378c5907fe6af31ba8648 100644 --- a/jrl-dynamics-urdf/patches/patch-aa +++ b/jrl-dynamics-urdf/patches/patch-aa @@ -1,15 +1,18 @@ -XXX: just a sample patch illustratin how to remove rosbuild -XXX: upstream should decide on a strategy: either plain cmake or ros-catkin +XXX: just a sample patch illustratin how to remove rosbuild for ros-groovy +XXX: this patch should be integrated upstream (either this plain cmake or by using +XXX: ros-catkin) before inclusion in robotpkg ---- CMakeLists.txt.orig 2013-06-28 18:51:23.371807126 +0200 -+++ CMakeLists.txt 2013-06-28 18:51:29.299785429 +0200 -@@ -1,5 +1,4 @@ - cmake_minimum_required(VERSION 2.4.6) +--- CMakeLists.txt.orig 2013-07-10 13:40:55.435865605 +0200 ++++ CMakeLists.txt 2013-07-10 13:41:09.599819977 +0200 +@@ -1,5 +1,5 @@ +-cmake_minimum_required(VERSION 2.4.6) -include($ENV{ROS_ROOT}/core/rosbuild/rosbuild.cmake) ++cmake_minimum_required(VERSION 2.6) ++cmake_policy(SET CMP0003 NEW) INCLUDE(cmake/base.cmake) INCLUDE(cmake/dist.cmake) -@@ -23,30 +22,26 @@ +@@ -23,30 +23,30 @@ # end of the partial extraction from SETUP_PROJECT @@ -36,22 +39,25 @@ XXX: upstream should decide on a strategy: either plain cmake or ros-catkin -rosbuild_link_boost(${PROJECT_NAME} filesystem system) -PKG_CONFIG_USE_DEPENDENCY(${PROJECT_NAME} jrl-dynamics) +find_package(PkgConfig) -+pkg_check_modules(JRL jrl-dynamics jrl-mal) ++pkg_check_modules(DEPS bullet jrl-dynamics jrl-mal resource_retriever>=1.9 urdf>=1.9) +find_package(Boost 1.36.0 REQUIRED filesystem system) + -+# targets -+add_library(${PROJECT_NAME} SHARED src/parser.cc) +include_directories(${CMAKE_CURRENT_SOURCE_DIR}/include) +include_directories(${Boost_INCLUDE_DIRS}) -+include_directories(${JRL_INCLUDE_DIRS}) -+link_directories(${JRL_LIBRARY_DIRS}) -+target_link_libraries(${PROJECT_NAME} ${Boost_LIBRARIES} ${JRL_LIBRARIES}) ++include_directories(${DEPS_INCLUDE_DIRS}) ++link_directories(${DEPS_LIBRARY_DIRS}) ++ ++# targets ++add_library(${PROJECT_NAME} SHARED src/parser.cc) ++target_link_libraries(${PROJECT_NAME} ${Boost_LIBRARIES} ${DEPS_LIBRARIES}) ++install(TARGETS ${PROJECT_NAME} LIBRARY DESTINATION lib) -rosbuild_add_executable(display-robot examples/display-robot.cc) -target_link_libraries(display-robot ${PROJECT_NAME}) +add_executable(display-robot examples/display-robot.cc) -+target_link_libraries(display-robot ${PROJECT_NAME} ${JRL_LIBRARIES}) ++target_link_libraries(display-robot ${PROJECT_NAME} ${DEPS_LIBRARIES}) ++install(TARGETS display-robot RUNTIME DESTINATION bin) ++ ++install(DIRECTORY include/ DESTINATION include FILES_MATCHING PATTERN "*.hh") --add_subdirectory(tests) -+# later... -+# add_subdirectory(tests) + add_subdirectory(tests) diff --git a/jrl-dynamics-urdf/patches/patch-ab b/jrl-dynamics-urdf/patches/patch-ab new file mode 100644 index 0000000000000000000000000000000000000000..b8344f5b6d03a5054bf6174e1c927e0a8d3bf73b --- /dev/null +++ b/jrl-dynamics-urdf/patches/patch-ab @@ -0,0 +1,32 @@ +XXX: just a sample patch illustratin how to remove rosbuild for ros-groovy +XXX: this patch should be integrated upstream (either this plain cmake or by using +XXX: ros-catkin) before inclusion in robotpkg + +--- tests/CMakeLists.txt.orig 2013-07-10 14:15:53.812973665 +0200 ++++ tests/CMakeLists.txt 2013-07-10 14:31:17.505944506 +0200 +@@ -1,6 +1,22 @@ + # Set the tests model directory. + add_definitions( +- "-DTEST_MODEL_DIRECTORY='\"${PROJECT_SOURCE_DIR}/tests/models\"'") ++ -DTEST_MODEL_DIRECTORY=\"${PROJECT_SOURCE_DIR}/tests/models\") + +-rosbuild_add_gtest(one_dof_revolute_x one_dof_revolute_x.cpp) +-target_link_libraries(one_dof_revolute_x ${PROJECT_NAME}) ++enable_testing() ++find_path(GTEST_INCLUDE_DIR gtest/gtest.h HINTS ${GTEST_ROOT}/include /usr/include) ++include_directories(${GTEST_INCLUDE_DIR}) ++find_library(GTEST_LIBRARY gtest HINTS ${GTEST_ROOT}/lib /usr/lib) ++if(NOT GTEST_LIBRARY) ++ # for debian derivatives not shipping libgtest anymore ... ++ find_path(GTEST_SRC_DIR gtest/CMakeLists.txt HINTS ${GTEST_ROOT}/src /usr/src) ++ if(NOT GTEST_SRC_DIR) ++ message(FATAL_ERROR "gtest not found") ++ endif(NOT GTEST_SRC_DIR) ++ add_subdirectory(${GTEST_SRC_DIR}/gtest gtest EXCLUDE_FROM_ALL) ++endif(NOT GTEST_LIBRARY) ++ ++add_executable(one_dof_revolute_x one_dof_revolute_x.cpp) ++target_link_libraries(one_dof_revolute_x ${PROJECT_NAME} gtest) ++add_dependencies(one_dof_revolute_x gtest) ++ ++add_test(NAME one_dof_revolute_x COMMAND one_dof_revolute_x)