|
Home About Us A-Z Index Search * Contact Us Register Login Press ShopThe Open Brand -- Problem Reporting and Interpretations System |
Problem Report 2737 Details
Show help | Quick Search | Submit a Test Suite Support Request | Click here to view your privileges
This page provides all information on Problem Report 2737.
Report 2737 Actions
Problem Report Number 2737 Submitter's Classification Test Suite problem State Resolved Resolution Test Suite Deficiency (TSD) Problem Resolution ID TSD.X.1429 Raised 2022-05-20 14:58 Updated 2022-05-20 14:11 Published 2022-05-20 14:11 Product Standard Commands and Utilities V2 (UNIX 95) Certification Program The Open Brand certification program Test Suite VSC version 5.3.21 Test Identification VSC /tset/POSIX.sdo/make/make.ex 162 Specification Commands and Utilities Issue 4 Version 2 Location in Spec Page 479 Problem Summary /tset/POSIX.sdo/make/make.ex 162 failure Problem Text For reviewers please checkout Request #1231 for more details.
Here is a short summary:
The test script is as follows for your reference:
########################################################################
###
#
# Strategy:
#
# Create a POSIX makefile with a FORCE target that has no prerequisites
# and no commands.
# Ensure target files do not exist.
# Invoke make.
# Verify expected output.
# Invoke make.
# Verify expected output.
#
########################################################################
###
tp162() {
$TST_TRACE
CT_STDOUT=out.stdout
CT_STDERR=out.stderr
OpenTP make 162 C "When a target has no prerequisites and no commands,
and the target of the rule is a nonexistent file"
...
...
.POSIX:
one: two
touch one
two: three
[ -f two ] || touch two
three: FORCE
touch three
FORCE:
...
...
I believe that this test is testing the scenario, as the GNU make
(version 3.81 and version 3.82 specify the same) document file
?make.info-1? part 4.7 specifies "4.7 Rules without Commands or
Prerequisites".
When executing two make commands consecutively and they finish within
one second, this test is failed, since the second make does not "FORCE"
to update the target file (i.e. TARGET is up to date).
However, if we add ?sleep 1? (or longer) between two make commands, it
behaves properly and the test can pass.
The reason is that the time precision, or the smallest fragment of time
we currently support is second. In this test case, when executing the
second make, comparing the timestamp of prerequisite files, the
numerical values of the time are the same (since two make commands
execute and terminate within one second). If we sleep at least one
second after executing the first make, then when executing second make
the timestamp would definitely change so that all the files are forced
to update.Test Output 10|0 /tset/POSIX.sdo/make/make.ex 06:37:06|TC Start, scenario ref 1-0,
ICs: {162}
15|0 3.8 1|TCM Start
400|0 162 1 06:37:10|IC Start
200|0 146 06:37:10|TP Start
520|0 146 66646 1 1|Assertion #162 (C): When a target has no
prerequisites and no commands, and the target of the rule is a
nonexistent file
520|0 146 66646 4 1|'touch three' wasn't found in standard output
220|0 146 1 06:37:12|FAIL
410|0 162 1 06:37:12|IC End
80|0 0 06:37:13|TC End, scenario ref 1-0
900|06:37:13|TCC EndReview Information
Review Type TSMA Review Start Date 2022-05-20 14:58 Last Updated 2022-05-20 09:35 Completed 2022-05-20 09:35 Status Complete Review Recommendation Test Suite Deficiency (TSD) Review Response This is accepted as a fault in the test suite.
Note that this TSD must not be reissued for UNIX V7, as SUSv4 contains a
new requirement that makes the current code valid: "If the target does
not exist after the target has been successfully made up-to-date, the
target shall be treated as being newer than any target for which it is a
prerequisite." A sleep will be added to the test code, but only for test
modes earlier than POSIX08/UNIX10.
Review Type SA Review Start Date 2022-05-20 17:35 Last Updated 2022-05-20 14:10 Completed 2022-05-20 14:10 Status Complete Review Resolution Test Suite Deficiency (TSD) Review Conclusion A test suite deficiency is granted.
Problem Reporting System Options:
- View Report 2737
- List All PRs
- Search Reports
- Email the System Administrator
- View the The Open Brand Interpretations Database User Manual
Contact the Certification Authority