1
- diff --git a/cmake/register_py.cmake b/cmake/register_py.cmake
2
- index f31c534..4671ec0 100644
3
- --- a/cmake/register_py.cmake
4
- +++ b/cmake/register_py.cmake
5
- @@ -14,6 +14,7 @@
6
-
7
- macro(rosidl_generator_py_extras BIN GENERATOR_FILES TEMPLATE_DIR)
8
- find_package(ament_cmake_core QUIET REQUIRED)
9
- +
10
- # Make sure extension points are registered in order
11
- find_package(rosidl_generator_c QUIET REQUIRED)
12
- find_package(rosidl_typesupport_c QUIET REQUIRED)
13
1
diff --git a/cmake/rosidl_generator_py_generate_interfaces.cmake b/cmake/rosidl_generator_py_generate_interfaces.cmake
14
- index a6d8263..0f7a12a 100644
2
+ index a6d8263..f231ea2 100644
15
3
--- a/cmake/rosidl_generator_py_generate_interfaces.cmake
16
4
+++ b/cmake/rosidl_generator_py_generate_interfaces.cmake
17
5
@@ -17,10 +17,9 @@ find_package(rosidl_runtime_c REQUIRED)
@@ -21,13 +9,12 @@ index a6d8263..0f7a12a 100644
21
9
- find_package(PythonInterp 3.6 REQUIRED)
22
10
-
23
11
find_package(python_cmake_module REQUIRED)
24
- - find_package(PythonExtra MODULE REQUIRED)
25
- + find_package(PythonExtra REQUIRED)
26
- + find_package(Python3 REQUIRED COMPONENTS Interpreter Development NumPy)
12
+ find_package(PythonExtra MODULE REQUIRED)
13
+ + find_package(Python3 REQUIRED COMPONENTS Development NumPy)
27
14
28
15
# Get a list of typesupport implementations from valid rmw implementations.
29
16
rosidl_generator_py_get_typesupports(_typesupport_impls)
30
- @@ -165,52 +164,26 @@ set(rosidl_generator_py_suffix "__rosidl_generator_py")
17
+ @@ -165,52 +164,28 @@ set(rosidl_generator_py_suffix "__rosidl_generator_py")
31
18
set(_target_name_lib "${rosidl_generate_interfaces_TARGET}${rosidl_generator_py_suffix}")
32
19
add_library(${_target_name_lib} SHARED ${_generated_c_files})
33
20
target_link_libraries(${_target_name_lib}
@@ -75,26 +62,19 @@ index a6d8263..0f7a12a 100644
75
62
- message(STATUS "Using numpy include directory: ${_output}")
76
63
- target_include_directories(${_target_name_lib} PUBLIC "${_output}")
77
64
+ if(APPLE)
78
- + set_target_properties(${_target_name_lib} PROPERTIES LINK_FLAGS "-undefined dynamic_lookup")
65
+ + set_target_properties(${_target_name_lib} PROPERTIES LINK_FLAGS "-undefined dynamic_lookup")
66
+ + target_include_directories(${_target_name_lib} PUBLIC ${Python3_INCLUDE_DIRS} ${Python3_NumPy_INCLUDE_DIRS})
67
+ + else()
68
+ + target_link_libraries(${_target_name_lib} PUBLIC Python3::NumPy Python3::Module Python3::Python)
79
69
endif()
80
- + target_link_libraries(${_target_name_lib} PRIVATE Python3::NumPy Python3::Python)
81
70
82
71
rosidl_get_typesupport_target(c_typesupport_target "${rosidl_generate_interfaces_TARGET}" "rosidl_typesupport_c")
83
72
- target_link_libraries(${_target_name_lib} ${c_typesupport_target})
84
73
+ target_link_libraries(${_target_name_lib} PUBLIC ${c_typesupport_target})
85
74
86
75
foreach(_typesupport_impl ${_typesupport_impls})
87
76
find_package(${_typesupport_impl} REQUIRED)
88
- @@ -223,7 +196,7 @@ foreach(_typesupport_impl ${_typesupport_impls})
89
- set(_pyext_suffix "__pyext")
90
- set(_target_name "${PROJECT_NAME}__${_typesupport_impl}${_pyext_suffix}")
91
-
92
- - add_library(${_target_name} SHARED
93
- + python3_add_library(${_target_name} SHARED
94
- ${_generated_extension_${_typesupport_impl}_files}
95
- )
96
- add_dependencies(
97
- @@ -245,27 +218,28 @@ foreach(_typesupport_impl ${_typesupport_impls})
77
+ @@ -245,27 +220,28 @@ foreach(_typesupport_impl ${_typesupport_impls})
98
78
endif()
99
79
target_link_libraries(
100
80
${_target_name}
@@ -127,7 +107,7 @@ index a6d8263..0f7a12a 100644
127
107
${_pkg_name}
128
108
)
129
109
endforeach()
130
- @@ -273,7 +247 ,7 @@ foreach(_typesupport_impl ${_typesupport_impls})
110
+ @@ -273,7 +249 ,7 @@ foreach(_typesupport_impl ${_typesupport_impls})
131
111
add_dependencies(${_target_name}
132
112
${rosidl_generate_interfaces_TARGET}__${_typesupport_impl}
133
113
)
@@ -136,7 +116,7 @@ index a6d8263..0f7a12a 100644
136
116
"rosidl_runtime_c"
137
117
"rosidl_generator_py"
138
118
)
139
- @@ -288,7 +262 ,7 @@ set(PYTHON_EXECUTABLE ${_PYTHON_EXECUTABLE})
119
+ @@ -288,7 +264 ,7 @@ set(PYTHON_EXECUTABLE ${_PYTHON_EXECUTABLE})
140
120
141
121
# Depend on rosidl_generator_py generated targets from our dependencies
142
122
foreach(_pkg_name ${rosidl_generate_interfaces_DEPENDENCY_PACKAGE_NAMES})
@@ -145,21 +125,18 @@ index a6d8263..0f7a12a 100644
145
125
endforeach()
146
126
147
127
set_lib_properties("")
148
- @@ -352,4 +326 ,4 @@ if(BUILD_TESTING AND rosidl_generate_interfaces_ADD_LINTER_TESTS)
128
+ @@ -352,4 +328 ,4 @@ if(BUILD_TESTING AND rosidl_generate_interfaces_ADD_LINTER_TESTS)
149
129
MAX_LINE_LENGTH 0
150
130
"${_output_path}")
151
131
endif()
152
132
- endif()
153
133
+ endif()
154
134
\ No newline at end of file
155
135
diff --git a/rosidl_generator_py-extras.cmake.in b/rosidl_generator_py-extras.cmake.in
156
- index 80bed29..c2be2ce 100644
136
+ index 80bed29..ba70acc 100644
157
137
--- a/rosidl_generator_py-extras.cmake.in
158
138
+++ b/rosidl_generator_py-extras.cmake.in
159
- @@ -1,7 +1,9 @@
160
- # generated from rosidl_generator_py/rosidl_generator_py-extras.cmake
161
- + find_package(Python3 REQUIRED COMPONENTS Development NumPy)
162
- +
139
+ @@ -2,6 +2,6 @@
163
140
include("${CMAKE_CURRENT_LIST_DIR}/register_py.cmake")
164
141
rosidl_generator_py_extras(
165
142
"${rosidl_generator_py_DIR}/../../../lib/rosidl_generator_py/rosidl_generator_py"
0 commit comments