blob: fe9cc347882b065e254bff5cb05dcb1356785673 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
Allow CATKIN_PREFIX_PATH to work as CMAKE_PREFIX_PATH:
When building with SYSROOT!=/, CMAKE_PREFIX_PATH is the same as with SYSROOT=/
but we need to find packages in SYSROOT.
Index: catkin_pkg-0.2.8/src/catkin_pkg/workspaces.py
===================================================================
--- catkin_pkg-0.2.8.orig/src/catkin_pkg/workspaces.py
+++ catkin_pkg-0.2.8/src/catkin_pkg/workspaces.py
@@ -42,15 +42,16 @@ CATKIN_WORKSPACE_MARKER_FILE = '.catkin_
def get_spaces(paths=None):
"""
- Return a list of spaces based on the CMAKE_PREFIX_PATH or passed in list of workspaces.
+ Return a list of spaces based on the CMAKE_PREFIX_PATH/CATKIN_PREFIX_PATH or passed in list of workspaces.
It resolves the source space for each devel space and ignores non-catkin paths.
:param paths_to_order: list of paths
:param prefix_paths: list of prefixes, must not end with '/'
"""
if paths is None:
- if 'CMAKE_PREFIX_PATH' not in os.environ:
- raise RuntimeError('Neither the environment variable CMAKE_PREFIX_PATH is set nor was a list of paths passed.')
+ if 'CMAKE_PREFIX_PATH' not in os.environ and 'CATKIN_PREFIX_PATH' not in os.environ:
+ raise RuntimeError('None of the environment variables CMAKE_PREFIX_PATH or CATKIN_PREFIX_PATH are set nor was a list of paths passed.')
paths = os.environ['CMAKE_PREFIX_PATH'].split(os.pathsep) if os.environ['CMAKE_PREFIX_PATH'] else []
+ paths += os.environ['CATKIN_PREFIX_PATH'].split(os.pathsep) if os.environ['CATKIN_PREFIX_PATH'] else []
spaces = []
for path in paths:
|