From 40bef09be0143fad7678093d50094fbf9a9275bf Mon Sep 17 00:00:00 2001 From: Darren Tsai Date: Wed, 29 Jan 2025 15:06:16 +1100 Subject: [PATCH 1/2] fix: merge install for python packages --- .../generate_parameter_library_py/setup_helper.py | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/generate_parameter_library_py/generate_parameter_library_py/setup_helper.py b/generate_parameter_library_py/generate_parameter_library_py/setup_helper.py index ed4de8e3..7a454474 100644 --- a/generate_parameter_library_py/generate_parameter_library_py/setup_helper.py +++ b/generate_parameter_library_py/generate_parameter_library_py/setup_helper.py @@ -32,7 +32,9 @@ from generate_parameter_library_py.generate_python_module import run -def generate_parameter_module(module_name, yaml_file, validation_module=''): +def generate_parameter_module( + module_name, yaml_file, validation_module='', merge_install_base=None +): # TODO there must be a better way to do this. I need to find the build directory so I can place the python # module there build_dir = None @@ -52,10 +54,13 @@ def generate_parameter_module(module_name, yaml_file, validation_module=''): tmp = tmp.split('.') py_version = f'python{tmp[0]}.{tmp[1]}' + install_base = ( + merge_install_base + if merge_install_base + else os.path.join(colcon_ws, 'install', pkg_name) + ) install_dir = os.path.join( - colcon_ws, - 'install', - pkg_name, + install_base, 'lib', py_version, 'site-packages', From 5e238b4cf1bd3eb9d6fc81cc081d2d75e6a6708e Mon Sep 17 00:00:00 2001 From: Darren Tsai Date: Wed, 29 Jan 2025 16:10:50 +1100 Subject: [PATCH 2/2] fix: separate out merge-install and install-base --- .../generate_parameter_library_py/setup_helper.py | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/generate_parameter_library_py/generate_parameter_library_py/setup_helper.py b/generate_parameter_library_py/generate_parameter_library_py/setup_helper.py index 7a454474..2a44b384 100644 --- a/generate_parameter_library_py/generate_parameter_library_py/setup_helper.py +++ b/generate_parameter_library_py/generate_parameter_library_py/setup_helper.py @@ -33,7 +33,7 @@ def generate_parameter_module( - module_name, yaml_file, validation_module='', merge_install_base=None + module_name, yaml_file, validation_module='', install_base=None, merge_install=False ): # TODO there must be a better way to do this. I need to find the build directory so I can place the python # module there @@ -54,10 +54,11 @@ def generate_parameter_module( tmp = tmp.split('.') py_version = f'python{tmp[0]}.{tmp[1]}' + if not install_base: + install_base = os.path.join(colcon_ws, 'install') + install_base = ( - merge_install_base - if merge_install_base - else os.path.join(colcon_ws, 'install', pkg_name) + install_base if merge_install else os.path.join(install_base, pkg_name) ) install_dir = os.path.join( install_base,