build: track strings/bytes/utf8 deps for w6a_ww/w6l_ww/ww_ww
w6a/w6l/ww transitively import strings (-> bytes, encoding.utf8) yet their _ww targets listed only os/rt/time, so `make` left their canonical binaries stale when a transitive lib source changed. w6c_ww/wwdump_ww already list the full closure; mirror it. Surfaced by 995_self_rebuild diverging on a bytes.ww edit (canonical not rebuilt, live rebuild was).
This commit is contained in:
3
Makefile
3
Makefile
@@ -169,6 +169,7 @@ $(BIN)/w6a_ww: selfhost/cmd/w6a/main.ww selfhost/cmd/w6a/opcodes.ww \
|
||||
selfhost/cmd/w6a/lex.ww selfhost/cmd/w6a/parse.ww \
|
||||
selfhost/cmd/w6a/asm.ww selfhost/cmd/w6a/obj.ww \
|
||||
lib/os/os.ww lib/rt/malloc.ww lib/time/time.ww \
|
||||
lib/strings/strings.ww lib/bytes/bytes.ww lib/encoding/utf8/utf8.ww \
|
||||
$(BIN)/ww $(BIN)/w6c $(BIN)/w6a $(BIN)/w6l \
|
||||
$(LIB)/libwwrt.a | $(BIN)
|
||||
@mkdir -p $(BIN)/w6a_ww.d
|
||||
@@ -185,6 +186,7 @@ $(BIN)/w6l_ww: selfhost/cmd/w6l/main.ww selfhost/cmd/w6l/sym.ww \
|
||||
selfhost/cmd/w6l/pass.ww selfhost/cmd/w6l/dynout.ww \
|
||||
selfhost/cmd/w6l/out.ww \
|
||||
lib/os/os.ww lib/rt/malloc.ww lib/time/time.ww \
|
||||
lib/strings/strings.ww lib/bytes/bytes.ww lib/encoding/utf8/utf8.ww \
|
||||
$(BIN)/ww $(BIN)/w6c $(BIN)/w6a $(BIN)/w6l \
|
||||
$(LIB)/libwwrt.a | $(BIN)
|
||||
@mkdir -p $(BIN)/w6l_ww.d
|
||||
@@ -198,6 +200,7 @@ $(BIN)/w6l_ww: selfhost/cmd/w6l/main.ww selfhost/cmd/w6l/sym.ww \
|
||||
# w6c/w6a/w6l like the C driver.
|
||||
$(BIN)/ww_ww: selfhost/cmd/ww/main.ww lib/os/os.ww lib/rt/malloc.ww \
|
||||
lib/time/time.ww lib/strconv/strconv.ww \
|
||||
lib/strings/strings.ww lib/bytes/bytes.ww lib/encoding/utf8/utf8.ww \
|
||||
$(BIN)/ww $(BIN)/w6c $(BIN)/w6a $(BIN)/w6l \
|
||||
$(LIB)/libwwrt.a | $(BIN)
|
||||
@mkdir -p $(BIN)/ww_ww.d
|
||||
|
||||
Reference in New Issue
Block a user