diff options
author | Siri Hansen <[email protected]> | 2018-11-28 11:39:17 +0100 |
---|---|---|
committer | GitHub <[email protected]> | 2018-11-28 11:39:17 +0100 |
commit | f20d86b7994596ace8713b61af0925d273a7f03e (patch) | |
tree | f4c7c4d52c1a2876b9020015a3152e23dba14009 | |
parent | efee45e4381ce1d1fc459e1eb651df8c5b0c03bc (diff) | |
parent | 807c48ea7999a9ed7becdd31db0a8e8e647d5bd2 (diff) | |
download | otp-f20d86b7994596ace8713b61af0925d273a7f03e.tar.gz otp-f20d86b7994596ace8713b61af0925d273a7f03e.tar.bz2 otp-f20d86b7994596ace8713b61af0925d273a7f03e.zip |
Merge pull request #2008 from aronisstav/reltool-fix-erl-libs-windows
Make reltool correctly handle Windows 'ERL_LIBS'
OTP-15454
-rw-r--r-- | lib/reltool/src/reltool_utils.erl | 13 | ||||
-rw-r--r-- | lib/reltool/test/reltool_server_SUITE.erl | 16 |
2 files changed, 26 insertions, 3 deletions
diff --git a/lib/reltool/src/reltool_utils.erl b/lib/reltool/src/reltool_utils.erl index 060a0912f9..2afa386cb3 100644 --- a/lib/reltool/src/reltool_utils.erl +++ b/lib/reltool/src/reltool_utils.erl @@ -47,6 +47,9 @@ call/2, cast/2, reply/3]). +%% For testing +-export([erl_libs/2]). + -include_lib("kernel/include/file.hrl"). -include_lib("wx/include/wx.hrl"). -include("reltool.hrl"). @@ -55,7 +58,15 @@ root_dir() -> code:root_dir(). erl_libs() -> - string:lexemes(os:getenv("ERL_LIBS", ""), ":;"). + erl_libs(os:getenv("ERL_LIBS", ""), os:type()). + +erl_libs(ErlLibs, OsType) when is_list(ErlLibs) -> + Sep = + case OsType of + {win32, _} -> ";"; + _ -> ":" + end, + string:lexemes(ErlLibs, Sep). lib_dirs(Dir) -> case erl_prim_loader:list_dir(Dir) of diff --git a/lib/reltool/test/reltool_server_SUITE.erl b/lib/reltool/test/reltool_server_SUITE.erl index 4e1937d479..9ee61b595d 100644 --- a/lib/reltool/test/reltool_server_SUITE.erl +++ b/lib/reltool/test/reltool_server_SUITE.erl @@ -142,7 +142,8 @@ all() -> use_selected_vsn, use_selected_vsn_relative_path, non_standard_vsn_id, - undefined_regexp]. + undefined_regexp, + windows_erl_libs]. groups() -> []. @@ -2546,10 +2547,21 @@ undefined_regexp(_Config) -> ok. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% Checks that reltool_utils can correctly read Windows ERL_LIBS + +windows_erl_libs(_Config) -> + WinErlLibs = + "C:\\Program Files\\Erlang Libs;C:\\Program Files\\More Erlang Libs", + Ret = reltool_utils:erl_libs(WinErlLibs, {win32, nt}), + ?m(["C:\\Program Files\\Erlang Libs","C:\\Program Files\\More Erlang Libs"], + Ret), + ok. + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% Library functions erl_libs() -> - string:lexemes(os:getenv("ERL_LIBS", ""), ":;"). + reltool_utils:erl_libs(). datadir(Config) -> %% Removes the trailing slash... |