Merging w/ mainline

This commit is contained in:
Dave Smith 2010-02-13 10:18:18 -07:00
commit 0f7b47ce7b
4 changed files with 24 additions and 10 deletions

View file

@ -1,5 +1,6 @@
#!/usr/bin/env escript #!/usr/bin/env escript
%% -*- erlang -*- %% -*- tab-width: 4;erlang-indent-level: 4;indent-tabs-mode: nil -*-
%% ex: ft=erlang ts=4 sw=4 et
main(Args) -> main(Args) ->
%% Get a string repr of build time %% Get a string repr of build time

View file

@ -106,13 +106,20 @@ inspect(Source, IncludePath) ->
-spec inspect_epp(Epp::pid(), Module::string(), Includes::[string()]) -> {string(), [string()]}. -spec inspect_epp(Epp::pid(), Module::string(), Includes::[string()]) -> {string(), [string()]}.
inspect_epp(Epp, Module, Includes) -> inspect_epp(Epp, Module, Includes) ->
case epp:parse_erl_form(Epp) of case epp:parse_erl_form(Epp) of
{ok, {attribute, _, module, ActualModule}} -> {ok, {attribute, _, module, ModInfo}} ->
%% If the module name includes package info, we get a list of atoms... case ModInfo of
case is_list(ActualModule) of %% Typical module name, single atom
true -> ActualModule when is_atom(ActualModule) ->
ActualModuleStr = atom_to_list(ActualModule);
%% Packag-ized module name, list of atoms
ActualModule when is_list(ActualModule) ->
ActualModuleStr = string:join([atom_to_list(P) || P <- ActualModule], "."); ActualModuleStr = string:join([atom_to_list(P) || P <- ActualModule], ".");
false -> %% Parameterized module name, single atom
ActualModuleStr = atom_to_list(ActualModule) {ActualModule, _} when is_atom(ActualModule) ->
ActualModuleStr = atom_to_list(ActualModule);
%% Parameterized and packagized module name, list of atoms
{ActualModule, _} when is_list(ActualModule) ->
ActualModuleStr = string:join([atom_to_list(P) || P <- ActualModule], ".")
end, end,
inspect_epp(Epp, ActualModuleStr, Includes); inspect_epp(Epp, ActualModuleStr, Includes);
{ok, {attribute, 1, file, {Module, 1}}} -> {ok, {attribute, 1, file, {Module, 1}}} ->

View file

@ -253,7 +253,9 @@ default_env() ->
" -I", filename:join(erts_dir(), include), " -I", filename:join(erts_dir(), include),
" "])}, " "])},
{"DRIVER_LDFLAGS", lists:concat([" -L", code:lib_dir(erl_interface, lib), {"DRIVER_LDFLAGS", lists:concat([" -L", code:lib_dir(erl_interface, lib),
" -lerl_interface -lei"])}]. " -lerl_interface -lei"])},
{"ERLANG_ARCH", integer_to_list(8 * erlang:system_info(wordsize))},
{"ERLANG_TARGET", rebar_utils:get_arch()}].

View file

@ -28,6 +28,7 @@
-export([get_cwd/0, -export([get_cwd/0,
is_arch/1, is_arch/1,
get_arch/0,
get_os/0, get_os/0,
sh/2, sh/3, sh/2, sh/3,
sh_failfast/2, sh_failfast/2,
@ -48,14 +49,17 @@ get_cwd() ->
is_arch(ArchRegex) -> is_arch(ArchRegex) ->
Arch = erlang:system_info(system_architecture), case re:run(get_arch(), ArchRegex, [{capture, none}]) of
case re:run(Arch, ArchRegex, [{capture, none}]) of
match -> match ->
true; true;
nomatch -> nomatch ->
false false
end. end.
get_arch() ->
Words = integer_to_list(8 * erlang:system_info(wordsize)),
erlang:system_info(system_architecture) ++ "-" ++ Words.
get_os() -> get_os() ->
Arch = erlang:system_info(system_architecture), Arch = erlang:system_info(system_architecture),
case match_first([{"linux", linux}, {"darwin", darwin}], Arch) of case match_first([{"linux", linux}, {"darwin", darwin}], Arch) of