From f75854b70b7949a8223a08191f4f067481f6e109 Mon Sep 17 00:00:00 2001 From: Rin Kuryloski Date: Fri, 14 Jun 2024 10:35:04 +0200 Subject: [PATCH] Add extra variables to erlang_vars rules Also define a map used to conveniently pass those vars to sh_test rules --- tools/erlang_vars.bzl | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/tools/erlang_vars.bzl b/tools/erlang_vars.bzl index 5b17ab24..0b26bf4f 100644 --- a/tools/erlang_vars.bzl +++ b/tools/erlang_vars.bzl @@ -1,14 +1,32 @@ +ERLANG_VARS_ENV_MAP = { + "OTP_VERSION": "$(OTP_VERSION)", + "OTP_VERSION_FILE_PATH": "$(OTP_VERSION_FILE_PATH)", + "OTP_VERSION_FILE_SHORT_PATH": "$(OTP_VERSION_FILE_SHORT_PATH)", + "ERLANG_HOME": "$(ERLANG_HOME)", +} + +ERLANG_VARS_ENV_MAP_INTERNAL = ERLANG_VARS_ENV_MAP | { + "OTP_INSTALL_PATH": "$(OTP_INSTALL_PATH)", + "ERLANG_RELEASE_TAR_PATH": "$(ERLANG_RELEASE_TAR_PATH)", + "ERLANG_RELEASE_TAR_SHORT_PATH": "$(ERLANG_RELEASE_TAR_SHORT_PATH)", +} + def _impl(ctx): otpinfo = ctx.toolchains["//tools:toolchain_type"].otpinfo vars = { "OTP_VERSION": otpinfo.version, + "OTP_VERSION_FILE_PATH": otpinfo.version_file.path, + "OTP_VERSION_FILE_SHORT_PATH": otpinfo.version_file.short_path, "ERLANG_HOME": otpinfo.erlang_home, } if otpinfo.release_dir_tar != None: + vars["OTP_INSTALL_PATH"] = otpinfo.install_path vars["ERLANG_RELEASE_TAR_PATH"] = otpinfo.release_dir_tar.path vars["ERLANG_RELEASE_TAR_SHORT_PATH"] = otpinfo.release_dir_tar.short_path - return [platform_common.TemplateVariableInfo(vars)] + return [ + platform_common.TemplateVariableInfo(vars), + ] erlang_vars = rule( implementation = _impl,