From c6086c75dfb76a3194a9fc14d7323de3263ddf8f Mon Sep 17 00:00:00 2001 From: EuAndreh Date: Mon, 10 Jan 2022 16:00:10 -0300 Subject: TODOs.md: Add #td-ca621da2-2e94-ae6f-0e3d-db744c00a656 --- TODOs.md | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/TODOs.md b/TODOs.md index c3780b7..a190745 100644 --- a/TODOs.md +++ b/TODOs.md @@ -1,5 +1,46 @@ # Tasks +## TODO Send patch to upstream `bmake` for bug on `$*` macro {#td-ca621da2-2e94-ae6f-0e3d-db744c00a656} +- TODO in 2021-11-21 + +--- + +From the standard: + +```txt +$* The $* macro shall evaluate to the current target name with its suf‐ + fix deleted. It shall be evaluated at least for inference rules. + + For example, in the .c.a inference rule, $*.o represents the out-of- + date .o file that corresponds to the prerequisite .c file. +``` + +Given the Makefile: + +```makefile +.POSIX: + +.SUFFIXES: .x .y + +.x.y: + cp $< $*.y + +all: a/b.y +``` + +`bmake` works correctly without flags, but behaves incorrectly with `-j1`: + +```shell +$ mkdir a && touch a/b.x +$ make -j1 +cp a/b.x b.y +$ make +cp a/b.x a/b.y +``` + +This impacts the upcoming `lilypond -o $name` command in the Makefile. + + ## TODO Move content into `src/content/`, `bin/` into `src/bin/` {#td-f9b510c0-c2c5-638e-e00f-3bbd35de31d9} - TODO in 2022-01-10 -- cgit v1.2.3