diff options
-rw-r--r-- | Makefile.in | 22 | ||||
-rw-r--r-- | lib/test_server/src/ts.erl | 2 | ||||
-rw-r--r-- | lib/test_server/src/ts_erl_config.erl | 26 | ||||
-rw-r--r-- | lib/test_server/src/ts_install.erl | 21 | ||||
-rw-r--r-- | lib/test_server/src/ts_lib.erl | 20 | ||||
-rwxr-xr-x | otp_build | 252 |
6 files changed, 39 insertions, 304 deletions
diff --git a/Makefile.in b/Makefile.in index b420628751..4b6e2e1190 100644 --- a/Makefile.in +++ b/Makefile.in @@ -750,14 +750,16 @@ recreate_primary_bootstrap: # of the emulator possible .PHONY: primary_bootstrap \ - primary_bootstrap_check_make \ primary_bootstrap_build \ primary_bootstrap_compiler \ primary_bootstrap_mkdirs \ primary_bootstrap_copy -primary_bootstrap: primary_bootstrap_check_make +primary_bootstrap: @echo "=== Building a bootstrap compiler in $(BOOTSTRAP_ROOT)/bootstrap" + $(MAKE) BOOTSTRAP_ROOT=$(BOOTSTRAP_ROOT) \ + ERL_TOP=$(ERL_TOP) \ + bootstrap_clean cd $(ERL_TOP) && \ $(MAKE) TESTROOT=$(BOOTSTRAP_TOP) \ BOOTSTRAP_TOP=$(BOOTSTRAP_TOP) \ @@ -775,22 +777,6 @@ primary_bootstrap: primary_bootstrap_check_make $(BOOTSTRAP_TOP) \ $(BOOTSTRAP_ROOT) -# -# Dependencies are not complete in all makefiles; therefore, remove bootstrap -# build result and build from scratch if we are not using clearmake (which -# tracks dependencies itself). -# -primary_bootstrap_check_make: - @ case "$(MAKE)" in \ - *clearmake*) \ - ;; \ - *) \ - $(MAKE) BOOTSTRAP_ROOT=$(BOOTSTRAP_ROOT) \ - ERL_TOP=$(ERL_TOP) \ - bootstrap_clean \ - ;; \ - esac - primary_bootstrap_build: primary_bootstrap_mkdirs primary_bootstrap_compiler \ primary_bootstrap_stdlib cd lib && $(MAKE) ERLC_FLAGS='-pa $(BOOTSTRAP_COMPILER)/ebin' \ diff --git a/lib/test_server/src/ts.erl b/lib/test_server/src/ts.erl index e23b891392..fcd955345f 100644 --- a/lib/test_server/src/ts.erl +++ b/lib/test_server/src/ts.erl @@ -71,7 +71,7 @@ %%% ts_erl_config Finds out information about the Erlang system, %%% for instance the location of erl_interface. %%% This works for either an installed OTP or an Erlang -%%% system running from Clearcase. +%%% system running in a git repository/source tree. %%% ts_make Interface to run the `make' program on Unix %%% and other platforms. %%% ts_make_erl A corrected version of the standar Erlang module diff --git a/lib/test_server/src/ts_erl_config.erl b/lib/test_server/src/ts_erl_config.erl index 14c36a2c35..640c8ddc9f 100644 --- a/lib/test_server/src/ts_erl_config.erl +++ b/lib/test_server/src/ts_erl_config.erl @@ -107,7 +107,7 @@ erts_lib(Vars,OsType) -> ErtsIncludeInternal, ErtsLib, ErtsLibInternal}; - {Type, Root, Target} when Type == clearcase; Type == srctree -> + {srctree, Root, Target} -> Erts = filename:join([Root, "erts"]), ErtsInclude = filename:join([Erts, "include"]), ErtsIncludeTarget = filename:join([ErtsInclude, Target]), @@ -146,7 +146,7 @@ erl_include(Vars) -> case erl_root(Vars) of {installed, Root} -> filename:join([Root, "usr", "include"]); - {Type, Root, Target} when Type == clearcase; Type == srctree -> + {srctree, Root, Target} -> filename:join([Root, "erts", "emulator", "beam"]) ++ " -I" ++ filename:join([Root, "erts", "emulator"]) ++ system_include(Root, Vars) @@ -179,7 +179,7 @@ erl_interface(Vars,OsType) -> {srctree, _Root, _Target} when OsType =:= vxworks -> {filename:join(Dir, "lib"), filename:join([Dir, "src"])}; - {Type, _Root, Target} when Type == clearcase; Type == srctree -> + {srctree, _Root, Target} -> {filename:join([Dir, "obj", Target]), filename:join([Dir, "src", Target])} end} @@ -246,7 +246,7 @@ ic(Vars, OsType) -> case erl_root(Vars) of {installed, _Root} -> filename:join([Dir, "priv", "lib"]); - {Type, _Root, Target} when Type == clearcase; Type == srctree -> + {srctree, _Root, Target} -> filename:join([Dir, "priv", "lib", Target]) end, filename:join(Dir, "include")} @@ -266,21 +266,6 @@ jinterface(Vars, _OsType) -> end, [{jinterface_classpath, filename:nativename(ClassPath)}|Vars]. -%% Unused! -% ig_vars(Vars) -> -% {Lib0, Incl} = -% case erl_root(Vars) of -% {installed, Root} -> -% Base = filename:join([Root, "usr"]), -% {filename:join([Base, "lib"]), -% filename:join([Base, "include"])}; -% {Type, Root, Target} when Type == clearcase; Type == srctree -> -% {filename:join([Root, "lib", "ig", "obj", Target]), -% filename:join([Root, "lib", "ig", "include"])} -% end, -% [{ig_libdir, filename:nativename(Lib0)}, -% {ig_include, filename:nativename(Incl)}|Vars]. - lib_dir(Vars, Lib) -> LibLibDir = case Lib of erts -> @@ -317,9 +302,6 @@ lib_dir(Vars, Lib) -> erl_root(Vars) -> Root = code:root_dir(), case ts_lib:erlang_type() of - {clearcase, _Version} -> - Target = get_var(target, Vars), - {clearcase, Root, Target}; {srctree, _Version} -> Target = get_var(target, Vars), {srctree, Root, Target}; diff --git a/lib/test_server/src/ts_install.erl b/lib/test_server/src/ts_install.erl index 94926eba80..bbbb7883db 100644 --- a/lib/test_server/src/ts_install.erl +++ b/lib/test_server/src/ts_install.erl @@ -1,19 +1,19 @@ %% %% %CopyrightBegin% -%% -%% Copyright Ericsson AB 1997-2009. All Rights Reserved. -%% +%% +%% Copyright Ericsson AB 1997-2010. All Rights Reserved. +%% %% The contents of this file are subject to the Erlang Public License, %% Version 1.1, (the "License"); you may not use this file except in %% compliance with the License. You should have received a copy of the %% Erlang Public License along with this software. If not, it can be %% retrieved online at http://www.erlang.org/. -%% +%% %% Software distributed under the License is distributed on an "AS IS" %% basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See %% the License for the specific language governing rights and limitations %% under the License. -%% +%% %% %CopyrightEnd% %% -module(ts_install). @@ -175,15 +175,8 @@ get_testcase_callback() -> get_rsh_name() -> case os:getenv("ERL_RSH") of - false -> - case ts_lib:erlang_type() of - {clearcase, _} -> - "ctrsh"; - {_, _} -> - "rsh" - end; - Str -> - Str + false -> "rsh"; + Str -> Str end. platform_id(Vars) -> diff --git a/lib/test_server/src/ts_lib.erl b/lib/test_server/src/ts_lib.erl index 082c9e0519..c90f4e511b 100644 --- a/lib/test_server/src/ts_lib.erl +++ b/lib/test_server/src/ts_lib.erl @@ -1,19 +1,19 @@ %% %% %CopyrightBegin% -%% -%% Copyright Ericsson AB 1997-2009. All Rights Reserved. -%% +%% +%% Copyright Ericsson AB 1997-2010. All Rights Reserved. +%% %% The contents of this file are subject to the Erlang Public License, %% Version 1.1, (the "License"); you may not use this file except in %% compliance with the License. You should have received a copy of the %% Erlang Public License along with this software. If not, it can be %% retrieved online at http://www.erlang.org/. -%% +%% %% Software distributed under the License is distributed on an "AS IS" %% basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See %% the License for the specific language governing rights and limitations %% under the License. -%% +%% %% %CopyrightEnd% %% -module(ts_lib). @@ -72,12 +72,10 @@ progress(Vars, Level, Format, Args) -> erlang_type() -> {_, Version} = init:script_id(), - RelDir = filename:join([code:root_dir(), "releases"]), % Only in installed - SysDir = filename:join([code:root_dir(), "system"]), % Nonexisting link/dir outside ClearCase - case {filelib:is_file(RelDir),filelib:is_file(SysDir)} of - {true,_} -> {otp, Version}; % installed OTP - {_,true} -> {clearcase, Version}; - _ -> {srctree, Version} + RelDir = filename:join(code:root_dir(), "releases"), % Only in installed + case filelib:is_file(RelDir) of + true -> {otp,Version}; % installed OTP + false -> {srctree,Version} % source code tree end. %% Upcases the first letter in a string. @@ -21,9 +21,6 @@ # Expected autoconf version EXPECTED_AUTOCONF_VERSION=2.59 -# clearmake command to use -clearmake=false - # Global configuration variables # # NOTE: lazy_configure depends on '.' always being last directory @@ -77,14 +74,6 @@ usage () case $version_controller in none) ;; - clearcase) - echo "" - echo "Handle the primary bootstrap in Clearcase:" - echo " prepare_primary - prepare for building a primary bootstrap" - echo " update_primary - create the primary bootstrap" - echo " commit_primary - commit a primary bootstrap" - echo " cancel_primary - uncheckout a primary bootstrap" - ;; git) echo "" echo "update_primary - build and commit a new primary bootstrap" @@ -94,14 +83,6 @@ usage () case $version_controller in none) ;; - clearcase) - echo "" - echo "Handle the preloaded modules in Clearcase:" - echo " prepare_preloaded - prepares for building preloaded code" - echo " update_preloaded - creates the preloaded code" - echo " commit_preloaded - commits the preloaded code" - echo " cancel_preloaded - uncheckout preloaded code" - ;; git) echo "" echo "update_preloaded - build and commit the preloaded modules" @@ -109,6 +90,12 @@ usage () esac } +git_required () +{ + echo "This operation must be run in a git repository." + exit 1 +} + hide_vars () { script= @@ -164,17 +151,11 @@ determine_version_controller () { version_controller=none - # The current directory is now $ERL_TOP. Check for - # either this directory being controlled by git or - # for the "otp_build" file being a Clearcase controlled - # object. + # The current directory is now $ERL_TOP. Find out whether + # this directory is a git repository. if { git rev-parse --git-dir; } 2>/dev/null >/dev/null; then version_controller=git - else - if test -d "otp_build@@/"; then - version_controller=clearcase - fi fi } # Execution of the different options @@ -875,47 +856,16 @@ setup_make () win32) MAKE=make;; *) - if [ "X$CLEARCASE_MAKE_COMPAT" = "Xgnu" -a \ - X"$CLEARCASE_ROOT" != X"" -a \ - -n "`lookup_prog_in_path clearmake`" ]; then - clearmake="clearmake -V" - MAKE=$clearmake - else - if [ -n "`lookup_prog_in_path gmake`" ]; then - MAKE=gmake - else - MAKE=make - fi + if [ -n "`lookup_prog_in_path gmake`" ]; then + MAKE=gmake + else + MAKE=make fi;; esac fi export MAKE } -do_noboot_lib_and_erts () -{ - setup_make - EMULATORS=emulator - if [ X`$MAKE is_cross_configured` = Xyes ]; then - TARGET=`$MAKE target_configured` - fi - if [ "x$MAKE" != "x$clearmake" ]; then - $MAKE MAKE="$MAKE" TARGET=$TARGET OTP_SMALL_BUILD=$OTP_SMALL_BUILD depend || exit 1; - fi - $MAKE MAKE="$MAKE" TARGET=$TARGET OTP_SMALL_BUILD=$OTP_SMALL_BUILD TYPE=$TYPE FLAVOR=$FLAVOR noboot || exit 1 -} - -do_primary () -{ - setup_make - if [ "x$OVERRIDE_TARGET" != "x" -a "x$OVERRIDE_TARGET" != "xwin32" ]; then - echo "OVERRIDE_TARGET set" >&2 - exit 1 - else - $MAKE MAKE="$MAKE" BOOTSTRAP_ROOT=$BOOTSTRAP_ROOT TARGET=$TARGET primary_bootstrap || exit 1; - fi -} - do_primary_git () { setup_make @@ -932,124 +882,6 @@ do_primary_git () git commit --no-verify -m 'Update primary bootstrap' } - -do_prepare () -{ - CT=`lookup_prog_in_path cleartool` - if [ X"$CLEARCASE_ROOT" = X"" -o X"$CT" = X"" ]; then - echo "To prepare for update of primary bootstrap, you need to run in a clearcase view." >&2 - return - fi - - if [ X"$ERL_TOP" = X"" ]; then - echo "ERL_TOP is not set." >&2 - return - fi - - $CT ls -rec -view_only $ERL_TOP/bootstrap | xargs rm -rf - - $CT find $ERL_TOP/bootstrap -cview -nxname -print | xargs $CT co -nc - echo '*****************************************************' - echo "Prepared for new bootstrap build - " - echo "directory bootstrap clean and completely checked out." - echo '*****************************************************' -} - -do_commit () -{ - CT=`lookup_prog_in_path cleartool` - if [ X"$CLEARCASE_ROOT" = X"" -o X"$CT" = X"" ]; then - echo "To prepare for update of primary bootstrap, you need to run in a clearcase view." >&2 - return - fi - - if [ X"$ERL_TOP" = X"" ]; then - echo "ERL_TOP is not set." >&2 - return - fi - - - for x in compiler kernel stdlib orber/include; do - files=`$CT lspriv -do $ERL_TOP/bootstrap/lib/$x` - for y in $files; do - echo "Creating $y" - $CT mkelem -nc $y - done - done - $CT lsco -rec -me -cview -s $ERL_TOP/bootstrap | xargs $CT ci -nc -ident - $CT lsco -d -me -cview -s $ERL_TOP/bootstrap | xargs $CT ci -nc -ident - - $CT ls -rec -view_only -nxname $ERL_TOP/bootstrap | xargs rm -rf - - - echo '*****************************************************' - echo "Checked in primary bootstrap." - echo '*****************************************************' -} - -do_cancel () -{ - CT=`lookup_prog_in_path cleartool` - if [ X"$CLEARCASE_ROOT" = X"" -o X"$CT" = X"" ]; then - echo "To prepare for update of primary bootstrap, you need to run in a clearcase view." >&2 - return - fi - - if [ X"$ERL_TOP" = X"" ]; then - echo "ERL_TOP is not set." >&2 - return - fi - NOTEMPTY=`$CT lsco -rec -me -cview -s $ERL_TOP/bootstrap` - if [ X"$NOTEMPTY" != X"" ]; then - $CT lsco -rec -me -cview -s $ERL_TOP/bootstrap | xargs $CT unco -rm - $CT unco $ERL_TOP/bootstrap - fi - $CT ls -rec -view_only $ERL_TOP/bootstrap | xargs rm -rf - echo '*****************************************************' - echo "Cancelled all checkouts for primary bootstrap." - echo '*****************************************************' - -} -do_prepare_prel () -{ - CT=`lookup_prog_in_path cleartool` - if [ X"$CLEARCASE_ROOT" = X"" -o X"$CT" = X"" ]; then - echo "To prepare for update of preloaded code, you have to run in a Clearcase view" >&2 - return - fi - - if [ X"$ERL_TOP" = X"" ]; then - echo "ERL_TOP is not set." >&2 - return - fi - - setup_make - (cd $ERL_TOP/erts/preloaded/src && $MAKE MAKE="$MAKE" BOOTSTRAP_ROOT=$BOOTSTRAP_ROOT TARGET=$TARGET prepare) || exit 1 - echo '*****************************************************' - echo "Prepared for new preloaded code build - " - echo "Directory ERL_TOP/erts/preloaded/ebin completely" - echo "checked out." - echo '*****************************************************' -} - -do_update_prel () -{ - CT=`lookup_prog_in_path cleartool` - - if [ X"$ERL_TOP" = X"" ]; then - echo "ERL_TOP is not set." >&2 - return - fi - - setup_make - (cd $ERL_TOP/erts/preloaded/src && $MAKE MAKE="$MAKE" BOOTSTRAP_ROOT=$BOOTSTRAP_ROOT TARGET=$TARGET clean) - $MAKE MAKE="$MAKE" BOOTSTRAP_ROOT=$BOOTSTRAP_ROOT TARGET=$TARGET preloaded || exit 1 - (cd $ERL_TOP/erts/preloaded/src && $MAKE MAKE="$MAKE" BOOTSTRAP_ROOT=$BOOTSTRAP_ROOT TARGET=$TARGET copy) - echo '*****************************************************' - echo "Rebuilt preloaded code." - echo '*****************************************************' -} - do_update_prel_git () { setup_make @@ -1060,48 +892,6 @@ do_update_prel_git () git commit -m 'Update preloaded modules' } -do_commit_prel () -{ - CT=`lookup_prog_in_path cleartool` - if [ X"$CLEARCASE_ROOT" = X"" -o X"$CT" = X"" ]; then - echo "To prepare for update of primary bootstrap, you need to run in a clearcase view." >&2 - return - fi - - if [ X"$ERL_TOP" = X"" ]; then - echo "ERL_TOP is not set." >&2 - return - fi - setup_make - - (cd $ERL_TOP/erts/preloaded/ebin && $CT ci -ident -nc *.beam) - (cd $ERL_TOP/erts/preloaded && $CT ci -ident -nc ebin) - - echo '*****************************************************' - echo "Checked in preloaded code." - echo '*****************************************************' -} - -do_cancel_prel () -{ - CT=`lookup_prog_in_path cleartool` - if [ X"$CLEARCASE_ROOT" = X"" -o X"$CT" = X"" ]; then - echo "To prepare for update of primary bootstrap, you need to run in a clearcase view." >&2 - return - fi - - if [ X"$ERL_TOP" = X"" ]; then - echo "ERL_TOP is not set." >&2 - return - fi - setup_make - (cd $ERL_TOP/erts/preloaded/src && $MAKE MAKE="$MAKE" BOOTSTRAP_ROOT=$BOOTSTRAP_ROOT TARGET=$TARGET cancel) || exit 1 - echo '*****************************************************' - echo "Cancelled all checkouts for preloaded code." - echo '*****************************************************' - -} - do_boot () { setup_make @@ -1376,30 +1166,16 @@ case "$1" in FLAVOR=plain fi do_boot;; - prepare_primary) - do_prepare;; update_primary) case $version_controller in git) do_primary_git ;; - clearcase) do_primary ;; - none) do_primary ;; + none) git_required ;; esac ;; - commit_primary) - do_commit;; - cancel_primary) - do_cancel;; - prepare_preloaded) - do_prepare_prel;; update_preloaded) case $version_controller in git) do_update_prel_git ;; - clearcase) do_update_prel ;; - none) do_update_prel ;; + none) git_required ;; esac ;; - commit_preloaded) - do_commit_prel;; - cancel_preloaded) - do_cancel_prel;; primary) echo "Primary bootstrap is under version control since R13"; echo "Use {prepare,update,commit}_primary if you really are"; |