Skip to content

Commit bbc3a75

Browse files
committed
dependency tracking in concert with gradle java messages.
1 parent 1a60feb commit bbc3a75

File tree

1 file changed

+9
-18
lines changed

1 file changed

+9
-18
lines changed

cmake/rosjava.cmake.em

Lines changed: 9 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -84,35 +84,26 @@ macro(catkin_rosjava_setup)
8484
###################################
8585
# Execution
8686
###################################
87-
# This is an interesting option, it uses cmake to check for changes in files and
88-
# avoids gradle's own slow check. It could get annoying though.
89-
file(GLOB_RECURSE BUILD_FILES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} FOLLOW_SYMLINKS *.java *.gradle *.properties CMakeLists.txt *.cmake *.xml)
90-
# Can't actually key off the subproject build dirs since we don't know them from here so we
91-
# use touch a file to link the command to the target. Actual triggers come from the file dependency changes.
92-
add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/built
93-
DEPENDS ${BUILD_FILES}
94-
# COMMAND ${ROSJAVA_ENV} ${CATKIN_ENV} "env" "|" "grep" "ROS"
87+
add_custom_target(gradle-${PROJECT_NAME} ALL
88+
#COMMAND ${ROSJAVA_ENV} ${CATKIN_ENV} "env" "|" "grep" "ROS"
9589
COMMAND ${ROSJAVA_ENV} ${CATKIN_ENV} ${${PROJECT_NAME}_gradle_BINARY} ${gradle_options} ${gradle_tasks}
96-
COMMAND touch ${CMAKE_CURRENT_BINARY_DIR}/built
97-
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
98-
COMMENT "Running gradle tasks for ${PROJECT_NAME}"
99-
)
100-
101-
add_custom_target(gradle-${PROJECT_NAME}
102-
ALL
103-
DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/built
10490
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
10591
VERBATIM
92+
COMMENT "Gradling tasks for ${PROJECT_NAME}"
10693
)
10794
###################################
10895
# Target Management
10996
###################################
11097
catkin_package_xml()
111-
foreach(depends in ${${PROJECT_NAME}_BUILD_DEPENDS})
98+
foreach(depends ${${PROJECT_NAME}_BUILD_DEPENDS})
11299
if(TARGET gradle-${depends})
113-
#message(STATUS "Adding dependency gradle-${depends}")
100+
#message(STATUS "Adding dependency.....gradle-${PROJECT_NAME} <- gradle-${depends}")
114101
add_dependencies(gradle-${PROJECT_NAME} gradle-${depends})
115102
endif()
103+
if(TARGET ${depends}_generate_messages)
104+
#message(STATUS "Adding dependency.....gradle-${PROJECT_NAME} <- ${depends}_generate_messages")
105+
add_dependencies(gradle-${PROJECT_NAME} ${depends}_generate_messages)
106+
endif()
116107
endforeach()
117108
if(NOT TARGET gradle-clean)
118109
add_custom_target(gradle-clean)

0 commit comments

Comments
 (0)