Skip to content

Commit 6942ed5

Browse files
committed
make sure variables are generated for sh shells as well - catkin uses these.
1 parent 46aadd5 commit 6942ed5

File tree

4 files changed

+29
-10
lines changed

4 files changed

+29
-10
lines changed

CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ catkin_package(CFG_EXTRAS rosjava.cmake)
1414

1515
catkin_python_setup()
1616
catkin_add_env_hooks(15.rosjava SHELLS bash DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/env-hooks)
17+
catkin_add_env_hooks(15.rosjava SHELLS sh DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/env-hooks)
1718

1819
##############################################################################
1920
# Project Settings

env-hooks/15.rosjava.bash.em

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,12 @@
11
#!/bin/bash
22

33
@[if DEVELSPACE]@
4-
export ROS_MAVEN_PATH=`python @(CMAKE_CURRENT_SOURCE_DIR)/generate_ros_maven_path.py`
5-
export ROS_MAVEN_DEPLOYMENT_PATH=`python @(CMAKE_CURRENT_SOURCE_DIR)/generate_ros_maven_path.py --deployment-repository`
6-
mkdir -p @(CATKIN_DEVEL_PREFIX)/share/gradle
7-
export GRADLE_USER_HOME=@(CATKIN_DEVEL_PREFIX)/share/gradle
4+
export ROS_MAVEN_PATH=`python @(CMAKE_CURRENT_SOURCE_DIR)/generate_environment_variables.py --maven-path`
5+
export ROS_MAVEN_DEPLOYMENT_PATH=`python @(CMAKE_CURRENT_SOURCE_DIR)/generate_environment_variables.py --maven-deployment-repository`
6+
export GRADLE_USER_HOME=`python @(CMAKE_CURRENT_SOURCE_DIR)/generate_environment_variables.py --gradle-user-home`
7+
mkdir -p ${GRADLE_USER_HOME}
88
@[else]@
9-
export ROS_MAVEN_PATH=`python @(CMAKE_INSTALL_PREFIX)/share/rosjava_build_tools/generate_ros_maven_path.py`
10-
export ROS_MAVEN_DEPLOYMENT_PATH=`python @(CMAKE_INSTALL_PREFIX)/share/rosjava_build_tools/generate_ros_maven_path.py --deployment-repository`
9+
export ROS_MAVEN_PATH=`python @(CMAKE_INSTALL_PREFIX)/share/rosjava_build_tools/generate_environment_variables.py --maven-path`
10+
export ROS_MAVEN_DEPLOYMENT_PATH=`python @(CMAKE_INSTALL_PREFIX)/share/rosjava_build_tools/generate_environment_variables.py --maven-deployment-repository`
1111
@[end if]@
1212

13-

env-hooks/15.rosjava.sh.em

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
#!/bin/sh
2+
3+
@[if DEVELSPACE]@
4+
export ROS_MAVEN_PATH=`python @(CMAKE_CURRENT_SOURCE_DIR)/generate_environment_variables.py --maven-path`
5+
export ROS_MAVEN_DEPLOYMENT_PATH=`python @(CMAKE_CURRENT_SOURCE_DIR)/generate_environment_variables.py --maven-deployment-repository`
6+
export GRADLE_USER_HOME=`python @(CMAKE_CURRENT_SOURCE_DIR)/generate_environment_variables.py --gradle-user-home`
7+
mkdir -p ${GRADLE_USER_HOME}
8+
@[else]@
9+
export ROS_MAVEN_PATH=`python @(CMAKE_INSTALL_PREFIX)/share/rosjava_build_tools/generate_environment_variables.py --maven-path`
10+
export ROS_MAVEN_DEPLOYMENT_PATH=`python @(CMAKE_INSTALL_PREFIX)/share/rosjava_build_tools/generate_environment_variables.py --maven-deployment-repository`
11+
@[end if]@

generate_ros_maven_path.py renamed to generate_environment_variables.py

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,10 @@
77

88
def parse_arguments():
99
parser = argparse.ArgumentParser(description='Generate environment variables for the rosjava maven environment.')
10-
parser.add_argument('-d', '--deployment-repository', action='store_true', help='Return the current devel workspace maven directory.')
10+
cmd_group = parser.add_mutually_exclusive_group()
11+
cmd_group.add_argument('-d', '--maven-deployment-repository', action='store_true', help='Return the current devel workspace maven directory.')
12+
cmd_group.add_argument('-m', '--maven-path', action='store_true', help='Generate maven path across all chained workspcaes.')
13+
cmd_group.add_argument('-g', '--gradle-user-home', action='store_true', help='Generate the local gradle user home in the current devel workspace (share/gradle).')
1114
args = parser.parse_args()
1215
return args
1316

@@ -26,9 +29,14 @@ def get_workspaces(environ):
2629
if __name__ == '__main__':
2730
args = parse_arguments()
2831
workspaces = get_workspaces(dict(os.environ))
29-
if args.deployment_repository:
32+
if args.maven_deployment_repository:
3033
# assuming one value exists here
3134
print os.path.join(workspaces[0], 'share', 'maven')
32-
else:
35+
elif args.maven_path:
3336
maven_repository_paths = [os.path.join(path, 'share', 'maven') for path in workspaces]
3437
print os.pathsep.join(maven_repository_paths)
38+
elif args.gradle_user_home:
39+
# assuming one value exists here
40+
print os.path.join(workspaces[0], 'share', 'gradle')
41+
else:
42+
print "Nothing to see here - please provide one of the valid command switches."

0 commit comments

Comments
 (0)