bug-make
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug #64016] Simplify update_goal_chain.


From: Dmitry Goncharov
Subject: [bug #64016] Simplify update_goal_chain.
Date: Sun, 30 Apr 2023 21:57:36 -0400 (EDT)

Follow-up Comment #5, bug #64016 (project make):

This made me think, why don't we also test the opposite situation?
That's that in the sequential mode make does not advance to the next target,
until the current target is finished.


diff --git a/tests/scripts/features/double_colon
b/tests/scripts/features/double_colon
index 4631c355..5aad531f 100644
--- a/tests/scripts/features/double_colon
+++ b/tests/scripts/features/double_colon
@@ -234,6 +234,23 @@ bye.x::; @#HELPER# sleep 1 file $@
 !,
               '-j2 hello.x bye.x', "sleep 1\nfile bye.x\nhello.x");
 
+unlink('bye.x');
+
+# This test is the opposite of the prior one.
+# Test that in the sequential mode (-j1) update_goal_chain does not move to
the
+# next target until the current target is finished.
+# There is an intended deadlock here.
+# hello.x:: recipe is started and its recipe blocks until file bye.x
appears.
+# bye.x cannot appear until bye.x:: recipe runs. bye.x:: recipe cannot run
+# until hello.x:: recipe is finished.
+# The test apparatus aborts the test in 10 seconds.
+
+run_make_test(q!
+hello.x::; @#HELPER# -q wait bye.x out $@
+bye.x::; @#HELPER# sleep 1 file $@
+!,
+              'hello.x bye.x', "wait bye.x: timeout after 10 seconds\n#MAKE#:
*** [#MAKEFILE#:2: hello.x] Error 2\n", 512);
+unlink('bye.x');
 
 # This tells the test driver that the perl test script executed properly.
 1;




    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/bugs/?64016>

_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]