Anonymous | Login | 2025-01-22 18:15 UTC |
Main | My View | View Issues | Change Log | Docs |
Viewing Issue Simple Details [ Jump to Notes ] | [ Issue History ] [ Print ] | ||||||||||||
ID | Category | Severity | Type | Date Submitted | Last Update | ||||||||
0001890 | [1003.1(2024)/Issue8] Shell and Utilities | Editorial | Clarification Requested | 2024-12-11 17:36 | 2025-01-17 22:15 | ||||||||
Reporter | steffen | View Status | public | ||||||||||
Assigned To | |||||||||||||
Priority | normal | Resolution | Accepted As Marked | ||||||||||
Status | Resolved | ||||||||||||
Name | steffen | ||||||||||||
Organization | |||||||||||||
User Reference | |||||||||||||
Section | make | ||||||||||||
Page Number | ~3146 ff. | ||||||||||||
Line Number | ~106054 ff. | ||||||||||||
Interp Status | --- | ||||||||||||
Final Accepted Text | Note: 0007051 | ||||||||||||
Summary | 0001890: make: inference rules: clarify relation to relative paths | ||||||||||||
Description |
This relates a bit to c17(1)s saying <code> If the -c option is specified and the -o option is not specified, for all pathname operands of the form file.c or file.i, the files: $(basename pathname .c).o ... respectively shall be created as the result of successful compilation. </code> make says (on page 3135) <code> 105578 For each pathname so identified, in the order specified: 105579 • If the pathname does not begin with a '/', it shall be treated as relative to the current 105580 working directory of the process, not relative to the directory containing the makefile. </code> So these are relative paths which may include directory components. Yet inference rules use eg <code> 106068 .c.o: 106069 $(CC) $(CFLAGS) -c $< </code> Not all, though, unless i am mistaken: <code> 106055 .c: 106056 $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $< </code> It happened to me that a little project ran against the wall when cross-testing. It worked with GNU make, but failed with (Free/Net)BSD make (bmake) as well as Jörgs smake: <code> ... gcc -O1 -g -std=c99 -Ilibdivsufsort -I. -c -o libdivsufsort/trsort.o libdivsufsort/trsort.c gcc -O1 -g -std=c99 -Ilibdivsufsort -I. -c -o s-bspatch.o s-bspatch.c ar crs libsbsdipa.a s-bsdiff.o libdivsufsort/divsufsort.o libdivsufsort/sssort.o libdivsufsort/trsort.o s-bspatch.o versus ... gcc -O1 -g -std=c99 -Ilibdivsufsort -I. -c libdivsufsort/trsort.c gcc -O1 -g -std=c99 -Ilibdivsufsort -I. -c s-bspatch.c ar crs libsbsdipa.a s-bsdiff.o libdivsufsort/divsufsort.o libdivsufsort/sssort.o libdivsufsort/trsort.o s-bspatch.o ar: libdivsufsort/divsufsort.o: No such file or directory </code> |
||||||||||||
Desired Action |
If it were me i would clarify that paths must be kept intact. This may include adjustment of the example inference rules. I am not unrolling this now (but could give it a shot shall it be desired). |
||||||||||||
Tags | tc1-2024 | ||||||||||||
Attached Files | |||||||||||||
|
Issue History | |||
Date Modified | Username | Field | Change |
2024-12-11 17:36 | steffen | New Issue | |
2024-12-11 17:36 | steffen | Name | => steffen |
2024-12-11 17:36 | steffen | Section | => make |
2024-12-11 17:36 | steffen | Page Number | => ~3146 ff. |
2024-12-11 17:36 | steffen | Line Number | => ~106054 ff. |
2024-12-12 19:04 | steffen | Note Added: 0007004 | |
2024-12-12 19:27 | steffen | Note Added: 0007005 | |
2024-12-13 17:36 | steffen | Note Added: 0007007 | |
2024-12-14 01:55 | steffen | Note Added: 0007008 | |
2024-12-16 14:46 | psmith | Note Added: 0007009 | |
2025-01-09 17:03 | geoffclare | Note Added: 0007040 | |
2025-01-09 17:04 | geoffclare | Interp Status | => --- |
2025-01-09 17:04 | geoffclare | Final Accepted Text | => Note: 0007040 |
2025-01-09 17:04 | geoffclare | Status | New => Resolved |
2025-01-09 17:04 | geoffclare | Resolution | Open => Accepted As Marked |
2025-01-09 17:05 | geoffclare | Tag Attached: tc1-2024 | |
2025-01-09 17:45 | psmith | Note Added: 0007042 | |
2025-01-09 17:58 | steffen | Note Added: 0007043 | |
2025-01-16 16:25 | geoffclare | Note Added: 0007051 | |
2025-01-16 16:27 | geoffclare | Final Accepted Text | Note: 0007040 => Note: 0007051 |
2025-01-16 18:08 | psmith | Note Added: 0007053 | |
2025-01-17 22:15 | steffen | Note Added: 0007054 |
Mantis 1.1.6[^] Copyright © 2000 - 2008 Mantis Group |