diff --git a/ament_package/template/environment_hook/pkg_config_path.bat b/ament_package/template/environment_hook/pkg_config_path.bat new file mode 100644 index 0000000..81d2bb3 --- /dev/null +++ b/ament_package/template/environment_hook/pkg_config_path.bat @@ -0,0 +1,42 @@ +:: copied from ament_package/template/environment_hook/pkg_config_path.bat +@echo off + +call:ament_prepend_unique_value PKG_CONFIG_PATH "%AMENT_CURRENT_PREFIX%\lib\pkgconfig" + +goto:eof + + +:: Prepend non-duplicate values to environment variables +:: using semicolons as separators and avoiding trailing separators. +:: first argument: the name of the result variable +:: second argument: the value +:ament_prepend_unique_value + setlocal enabledelayedexpansion + :: arguments + set "listname=%~1" + set "value=%~2" + :: skip if path doesn't exist + if NOT EXIST "%value%" ( + goto:eof + ) + :: expand the list variable + set "list=!%listname%!" + :: check if the list contains the value + set "is_duplicate=" + if "%list%" NEQ "" ( + for %%v in ("%list:;=";"%") do ( + if "%%~v" == "%value%" set "is_duplicate=1" + ) + ) + :: if it is not a duplicate prepend it + if "%is_duplicate%" == "" ( + :: if not empty, prepend a semi-colon + if "!list!" NEQ "" set "list=;!list!" + :: prepend the value + set "list=%value%!list!" + ) + endlocal & ( + :: set result variable in parent scope + set "%~1=%list%" + ) +goto:eof diff --git a/ament_package/template/environment_hook/pkg_config_path.sh b/ament_package/template/environment_hook/pkg_config_path.sh new file mode 100644 index 0000000..e33a8de --- /dev/null +++ b/ament_package/template/environment_hook/pkg_config_path.sh @@ -0,0 +1,3 @@ +# copied from ament_package/template/environment_hook/pkg_config_path.sh + +ament_prepend_unique_value PKG_CONFIG_PATH "$AMENT_CURRENT_PREFIX/lib/pkgconfig"