diff options
author | Shinichiro Hamaji <hamaji@google.com> | 2016-01-05 07:44:49 +0000 |
---|---|---|
committer | Shinichiro Hamaji <hamaji@google.com> | 2016-01-05 07:44:49 +0000 |
commit | 70f882d297edc5156e8d709d81a19361de13fcd9 (patch) | |
tree | b7c0bf7cc72e67f7c0c3a9dc662dd6821ea27f67 | |
parent | 07c44e0ab88177cbc9192886d306903075b1d38a (diff) | |
download | android_build_kati-70f882d297edc5156e8d709d81a19361de13fcd9.tar.gz android_build_kati-70f882d297edc5156e8d709d81a19361de13fcd9.tar.bz2 android_build_kati-70f882d297edc5156e8d709d81a19361de13fcd9.zip |
Revert "Merge remote-tracking branch 'aosp/upstream'"
This reverts commit 07c44e0ab88177cbc9192886d306903075b1d38a.
Change-Id: Ie46c46cfb44857034036679ea1620ebb75df3104
-rw-r--r-- | command.cc | 10 | ||||
-rw-r--r-- | eval.cc | 5 | ||||
-rw-r--r-- | func.cc | 7 | ||||
-rw-r--r-- | ninja.cc | 34 | ||||
-rw-r--r-- | testcase/err_semicolon.mk | 1 | ||||
-rw-r--r-- | testcase/err_semicolon2.mk | 2 | ||||
-rw-r--r-- | testcase/err_semicolon3.mk | 3 | ||||
-rw-r--r-- | testcase/err_semicolon4.mk | 1 | ||||
-rw-r--r-- | testcase/expanded_nl.mk | 8 | ||||
-rwxr-xr-x | testcase/ninja_regen.sh | 21 | ||||
-rwxr-xr-x | testcase/ninja_regen_find_link.sh | 7 |
11 files changed, 22 insertions, 77 deletions
@@ -70,7 +70,6 @@ DECLARE_AUTO_VAR_CLASS(AutoLessVar); DECLARE_AUTO_VAR_CLASS(AutoHatVar); DECLARE_AUTO_VAR_CLASS(AutoPlusVar); DECLARE_AUTO_VAR_CLASS(AutoStarVar); -DECLARE_AUTO_VAR_CLASS(AutoNotImplementedVar); class AutoSuffixDVar : public AutoVar { public: @@ -129,11 +128,6 @@ void AutoStarVar::Eval(Evaluator*, string* s) const { pat.Stem(n->output.str()).AppendToString(s); } -void AutoNotImplementedVar::Eval(Evaluator* ev, string*) const { - ev->Error(StringPrintf( - "Automatic variable `$%s' isn't supported yet", sym_)); -} - void AutoSuffixDVar::Eval(Evaluator* ev, string* s) const { string buf; wrapped_->Eval(ev, &buf); @@ -183,10 +177,6 @@ CommandEvaluator::CommandEvaluator(Evaluator* ev) INSERT_AUTO_VAR(AutoHatVar, "^"); INSERT_AUTO_VAR(AutoPlusVar, "+"); INSERT_AUTO_VAR(AutoStarVar, "*"); - // TODO: Implement them. - INSERT_AUTO_VAR(AutoNotImplementedVar, "%"); - INSERT_AUTO_VAR(AutoNotImplementedVar, "?"); - INSERT_AUTO_VAR(AutoNotImplementedVar, "|"); } void CommandEvaluator::Eval(DepNode* n, vector<Command*>* commands) { @@ -115,11 +115,8 @@ void Evaluator::EvalRule(const RuleStmt* stmt) { const string&& expr = stmt->expr->Eval(this); // See semicolon.mk. - if (expr.find_first_not_of(" \t;") == string::npos) { - if (stmt->term == ';') - Error("*** missing rule before commands."); + if (expr.find_first_not_of(" \t\n;") == string::npos) return; - } Rule* rule; RuleVarAssignment rule_var; @@ -547,9 +547,10 @@ void ShellFunc(const vector<Value*>& args, Evaluator* ev, string* s) { string cmd = args[0]->Eval(ev); if (ev->avoid_io() && !HasNoIoInShellScript(cmd)) { if (ev->eval_depth() > 1) { - ERROR("%s:%d: kati doesn't support passing results of $(shell) " - "to other make constructs: %s", - LOCF(ev->loc()), cmd.c_str()); + // TODO: Make this an error. + WARN("%s:%d: kati doesn't support passing results of $(shell) " + "to other make constructs: %s", + LOCF(ev->loc()), cmd.c_str()); } StripShellComment(&cmd); *s += "$("; @@ -191,14 +191,6 @@ class NinjaGenerator { GenerateStamp(orig_args); } - static string GetNinjaFilename() { - return GetFilename("build%s.ninja"); - } - - static string GetShellScriptFilename() { - return GetFilename("ninja%s.sh"); - } - static string GetStampFilename() { return GetFilename(".kati_stamp%s"); } @@ -562,7 +554,15 @@ class NinjaGenerator { fprintf(fp_, "\n\n"); } - static string GetEnvScriptFilename() { + string GetNinjaFilename() const { + return GetFilename("build%s.ninja"); + } + + string GetShellScriptFilename() const { + return GetFilename("ninja%s.sh"); + } + + string GetEnvScriptFilename() const { return GetFilename("env%s.sh"); } @@ -605,10 +605,7 @@ class NinjaGenerator { EmitNode(node); } - unordered_set<Symbol> used_env_vars(Vars::used_env_vars()); - // PATH changes $(shell). - used_env_vars.insert(Intern("PATH")); - for (Symbol e : used_env_vars) { + for (Symbol e : Vars::used_env_vars()) { StringPiece val(getenv(e.c_str())); used_envs_.emplace(e.str(), val.as_string()); } @@ -808,17 +805,6 @@ bool NeedsRegen(double start_time, const string& orig_args) { } \ }) - if (!Exists(NinjaGenerator::GetNinjaFilename())) { - fprintf(stderr, "%s is missing, regenerating...\n", - NinjaGenerator::GetNinjaFilename().c_str()); - return true; - } - if (!Exists(NinjaGenerator::GetShellScriptFilename())) { - fprintf(stderr, "%s is missing, regenerating...\n", - NinjaGenerator::GetShellScriptFilename().c_str()); - return true; - } - const string& stamp_filename = NinjaGenerator::GetStampFilename(); FILE* fp = fopen(stamp_filename.c_str(), "rb+"); if (!fp) { diff --git a/testcase/err_semicolon.mk b/testcase/err_semicolon.mk index f85826a..2e244ce 100644 --- a/testcase/err_semicolon.mk +++ b/testcase/err_semicolon.mk @@ -1,2 +1,3 @@ +# TODO(c): fix error message # This is an error. See also semicolon.mk ; diff --git a/testcase/err_semicolon2.mk b/testcase/err_semicolon2.mk deleted file mode 100644 index 9b3bde1..0000000 --- a/testcase/err_semicolon2.mk +++ /dev/null @@ -1,2 +0,0 @@ -a; - diff --git a/testcase/err_semicolon3.mk b/testcase/err_semicolon3.mk deleted file mode 100644 index ba3f501..0000000 --- a/testcase/err_semicolon3.mk +++ /dev/null @@ -1,3 +0,0 @@ -# TODO(go): Fix - - ; diff --git a/testcase/err_semicolon4.mk b/testcase/err_semicolon4.mk deleted file mode 100644 index 2dd21f2..0000000 --- a/testcase/err_semicolon4.mk +++ /dev/null @@ -1 +0,0 @@ -; diff --git a/testcase/expanded_nl.mk b/testcase/expanded_nl.mk deleted file mode 100644 index b5ff7c4..0000000 --- a/testcase/expanded_nl.mk +++ /dev/null @@ -1,8 +0,0 @@ -# TODO(go): Fix - -define nl - - -endef - -$(nl) diff --git a/testcase/ninja_regen.sh b/testcase/ninja_regen.sh index 7f9b35e..1755eb2 100755 --- a/testcase/ninja_regen.sh +++ b/testcase/ninja_regen.sh @@ -20,7 +20,7 @@ log=/tmp/log mk="$@" sleep_if_necessary() { - if [ x$(uname) != x"Linux" -o x"${TRAVIS}" != x"" ]; then + if [ x$(uname) != x"Linux" ]; then sleep "$@" fi } @@ -51,7 +51,7 @@ EOF ${mk} 2> ${log} if [ -e ninja.sh ]; then if ! grep regenerating ${log} > /dev/null; then - echo 'Should be regenerated (Makefile)' + echo 'Should be regenerated' fi ./ninja.sh fi @@ -60,7 +60,7 @@ export VAR=fuga ${mk} 2> ${log} if [ -e ninja.sh ]; then if ! grep regenerating ${log} > /dev/null; then - echo 'Should be regenerated (env changed)' + echo 'Should be regenerated' fi ./ninja.sh fi @@ -69,16 +69,7 @@ export VAR2=OK ${mk} 2> ${log} if [ -e ninja.sh ]; then if ! grep regenerating ${log} > /dev/null; then - echo 'Should be regenerated (env added)' - fi - ./ninja.sh -fi - -export PATH=/random_path:$PATH -${mk} 2> ${log} -if [ -e ninja.sh ]; then - if ! grep regenerating ${log} > /dev/null; then - echo 'Should be regenerated (PATH changed)' + echo 'Should be regenerated' fi ./ninja.sh fi @@ -88,7 +79,7 @@ touch PASS.mk ${mk} 2> ${log} if [ -e ninja.sh ]; then if ! grep regenerating ${log} > /dev/null; then - echo 'Should be regenerated (wildcard)' + echo 'Should be regenerated' fi ./ninja.sh fi @@ -106,7 +97,7 @@ fi ${mk} other 2> ${log} if [ -e ninja.sh ]; then if ! grep regenerating ${log} >/dev/null; then - echo 'Should be regenerated (argument)' + echo 'Should be regenerated' fi ./ninja.sh other fi diff --git a/testcase/ninja_regen_find_link.sh b/testcase/ninja_regen_find_link.sh index 657f8ae..94a6bb1 100755 --- a/testcase/ninja_regen_find_link.sh +++ b/testcase/ninja_regen_find_link.sh @@ -16,12 +16,6 @@ set -e -sleep_if_necessary() { - if [ x"${TRAVIS}" != x"" ]; then - sleep "$@" - fi -} - mk="$@" if echo "${mk}" | grep kati > /dev/null; then mk="${mk} --use_find_emulator" @@ -42,7 +36,6 @@ touch dir1/file1 dir2/file2 ln -s ../../dir1 linkdir/d/link build -sleep_if_necessary 1 touch dir1/file1_2 build |