Modularise arch.

This commit is contained in:
David Given
2024-10-16 21:17:59 +02:00
parent 4bcbf2b089
commit 4c140b1b90
7 changed files with 81 additions and 67 deletions

View File

@@ -28,3 +28,75 @@ proto(
)
protocc(name="proto_lib", srcs=[".+proto"], deps=["lib+common_proto_lib"])
cxxlibrary(
name="arch",
srcs=[
"./arch.cc",
"./aeslanier/decoder.cc",
"./agat/agat.cc",
"./agat/decoder.cc",
"./agat/encoder.cc",
"./amiga/amiga.cc",
"./amiga/decoder.cc",
"./amiga/encoder.cc",
"./apple2/decoder.cc",
"./apple2/encoder.cc",
"./brother/decoder.cc",
"./brother/encoder.cc",
"./c64/c64.cc",
"./c64/decoder.cc",
"./c64/encoder.cc",
"./f85/decoder.cc",
"./fb100/decoder.cc",
"./ibm/decoder.cc",
"./ibm/encoder.cc",
"./macintosh/decoder.cc",
"./macintosh/encoder.cc",
"./micropolis/decoder.cc",
"./micropolis/encoder.cc",
"./mx/decoder.cc",
"./northstar/decoder.cc",
"./northstar/encoder.cc",
"./rolandd20/decoder.cc",
"./smaky6/decoder.cc",
"./tartu/decoder.cc",
"./tartu/encoder.cc",
"./tids990/decoder.cc",
"./tids990/encoder.cc",
"./victor9k/decoder.cc",
"./victor9k/encoder.cc",
"./zilogmcz/decoder.cc",
],
hdrs={
"arch/ibm/ibm.h": "./ibm/ibm.h",
"arch/apple2/data_gcr.h": "./apple2/data_gcr.h",
"arch/apple2/apple2.h": "./apple2/apple2.h",
"arch/amiga/amiga.h": "./amiga/amiga.h",
"arch/smaky6/smaky6.h": "./smaky6/smaky6.h",
"arch/tids990/tids990.h": "./tids990/tids990.h",
"arch/zilogmcz/zilogmcz.h": "./zilogmcz/zilogmcz.h",
"arch/amiga/amiga.h": "./amiga/amiga.h",
"arch/f85/data_gcr.h": "./f85/data_gcr.h",
"arch/f85/f85.h": "./f85/f85.h",
"arch/mx/mx.h": "./mx/mx.h",
"arch/aeslanier/aeslanier.h": "./aeslanier/aeslanier.h",
"arch/northstar/northstar.h": "./northstar/northstar.h",
"arch/brother/data_gcr.h": "./brother/data_gcr.h",
"arch/brother/brother.h": "./brother/brother.h",
"arch/brother/header_gcr.h": "./brother/header_gcr.h",
"arch/macintosh/data_gcr.h": "./macintosh/data_gcr.h",
"arch/macintosh/macintosh.h": "./macintosh/macintosh.h",
"arch/agat/agat.h": "./agat/agat.h",
"arch/fb100/fb100.h": "./fb100/fb100.h",
"arch/victor9k/data_gcr.h": "./victor9k/data_gcr.h",
"arch/victor9k/victor9k.h": "./victor9k/victor9k.h",
"arch/rolandd20/rolandd20.h": "./rolandd20/rolandd20.h",
"arch/micropolis/micropolis.h": "./micropolis/micropolis.h",
"arch/c64/data_gcr.h": "./c64/data_gcr.h",
"arch/c64/c64.h": "./c64/c64.h",
"arch/tartu/tartu.h": "./tartu/tartu.h",
"arch/arch.h": "./arch.h",
},
deps=["+lib"],
)

View File

@@ -27,70 +27,8 @@ cxxlibrary(
"./lib/decoders/fmmfm.cc",
"./lib/encoders/encoders.cc",
"./lib/readerwriter.cc",
"./arch/arch.cc",
"./arch/aeslanier/decoder.cc",
"./arch/agat/agat.cc",
"./arch/agat/decoder.cc",
"./arch/agat/encoder.cc",
"./arch/amiga/amiga.cc",
"./arch/amiga/decoder.cc",
"./arch/amiga/encoder.cc",
"./arch/apple2/decoder.cc",
"./arch/apple2/encoder.cc",
"./arch/brother/decoder.cc",
"./arch/brother/encoder.cc",
"./arch/c64/c64.cc",
"./arch/c64/decoder.cc",
"./arch/c64/encoder.cc",
"./arch/f85/decoder.cc",
"./arch/fb100/decoder.cc",
"./arch/ibm/decoder.cc",
"./arch/ibm/encoder.cc",
"./arch/macintosh/decoder.cc",
"./arch/macintosh/encoder.cc",
"./arch/micropolis/decoder.cc",
"./arch/micropolis/encoder.cc",
"./arch/mx/decoder.cc",
"./arch/northstar/decoder.cc",
"./arch/northstar/encoder.cc",
"./arch/rolandd20/decoder.cc",
"./arch/smaky6/decoder.cc",
"./arch/tartu/decoder.cc",
"./arch/tartu/encoder.cc",
"./arch/tids990/decoder.cc",
"./arch/tids990/encoder.cc",
"./arch/victor9k/decoder.cc",
"./arch/victor9k/encoder.cc",
"./arch/zilogmcz/decoder.cc",
],
hdrs={
"arch/ibm/ibm.h": "./arch/ibm/ibm.h",
"arch/apple2/data_gcr.h": "./arch/apple2/data_gcr.h",
"arch/apple2/apple2.h": "./arch/apple2/apple2.h",
"arch/smaky6/smaky6.h": "./arch/smaky6/smaky6.h",
"arch/tids990/tids990.h": "./arch/tids990/tids990.h",
"arch/zilogmcz/zilogmcz.h": "./arch/zilogmcz/zilogmcz.h",
"arch/amiga/amiga.h": "./arch/amiga/amiga.h",
"arch/f85/data_gcr.h": "./arch/f85/data_gcr.h",
"arch/f85/f85.h": "./arch/f85/f85.h",
"arch/mx/mx.h": "./arch/mx/mx.h",
"arch/aeslanier/aeslanier.h": "./arch/aeslanier/aeslanier.h",
"arch/northstar/northstar.h": "./arch/northstar/northstar.h",
"arch/brother/data_gcr.h": "./arch/brother/data_gcr.h",
"arch/brother/brother.h": "./arch/brother/brother.h",
"arch/brother/header_gcr.h": "./arch/brother/header_gcr.h",
"arch/macintosh/data_gcr.h": "./arch/macintosh/data_gcr.h",
"arch/macintosh/macintosh.h": "./arch/macintosh/macintosh.h",
"arch/agat/agat.h": "./arch/agat/agat.h",
"arch/fb100/fb100.h": "./arch/fb100/fb100.h",
"arch/victor9k/data_gcr.h": "./arch/victor9k/data_gcr.h",
"arch/victor9k/victor9k.h": "./arch/victor9k/victor9k.h",
"arch/rolandd20/rolandd20.h": "./arch/rolandd20/rolandd20.h",
"arch/micropolis/micropolis.h": "./arch/micropolis/micropolis.h",
"arch/c64/data_gcr.h": "./arch/c64/data_gcr.h",
"arch/c64/c64.h": "./arch/c64/c64.h",
"arch/tartu/tartu.h": "./arch/tartu/tartu.h",
"arch/arch.h": "./arch/arch.h",
"lib/decoders/decoders.h": "./lib/decoders/decoders.h",
"lib/decoders/fluxdecoder.h": "./lib/decoders/fluxdecoder.h",
"lib/decoders/rawbits.h": "./lib/decoders/rawbits.h",

View File

@@ -27,8 +27,8 @@ class Toolchain:
label = ""
cfile = ["$(CC) -c -o {outs[0]} {ins[0]} $(CFLAGS) {cflags}"]
cxxfile = ["$(CXX) -c -o {outs[0]} {ins[0]} $(CFLAGS) {cflags}"]
clibrary = ["$(AR) cqs {outs[0]} {ins}"]
cxxlibrary = ["$(AR) cqs {outs[0]} {ins}"]
clibrary = ["rm -f {outs[0]} && $(AR) cqs {outs[0]} {ins}"]
cxxlibrary = ["rm -f {outs[0]} && $(AR) cqs {outs[0]} {ins}"]
cprogram = [
"$(CC) -o {outs[0]} $(STARTGROUP) {ins} {ldflags} $(LDFLAGS) $(ENDGROUP)"
]
@@ -41,8 +41,8 @@ class HostToolchain:
label = "HOST "
cfile = ["$(HOSTCC) -c -o {outs[0]} {ins[0]} $(HOSTCFLAGS) {cflags}"]
cxxfile = ["$(HOSTCXX) -c -o {outs[0]} {ins[0]} $(HOSTCFLAGS) {cflags}"]
clibrary = ["$(HOSTAR) cqs {outs[0]} {ins}"]
cxxlibrary = ["$(HOSTAR) cqs {outs[0]} {ins}"]
clibrary = ["rm -f {outs[0]} && $(HOSTAR) cqs {outs[0]} {ins}"]
cxxlibrary = ["rm -f {outs[0]} && $(HOSTAR) cqs {outs[0]} {ins}"]
cprogram = [
"$(HOSTCC) -o {outs[0]} $(HOSTSTARTGROUP) {ins} {ldflags} $(HOSTLDFLAGS) $(HOSTENDGROUP)"
]

View File

@@ -48,6 +48,7 @@ cxxlibrary(
deps=[
"+lib",
"+fmt_lib",
"arch",
".+proto_lib",
],
)

View File

@@ -46,6 +46,7 @@ cxxprogram(
"lib/data",
"lib/external",
"lib/vfs",
"arch",
"src/formats",
],
)

View File

@@ -68,6 +68,7 @@ cxxprogram(
"lib/data",
"lib/vfs",
"lib/config",
"arch",
"src/formats",
"src/gui/drivetypes",
"+z_lib",

View File

@@ -103,7 +103,8 @@ export(
"src/formats",
]
+ ([".+test_proto_lib"] if n == "options" else [])
+ (["lib/vfs"] if n in {"cpmfs", "applesingle", "vfs"} else []),
+ (["lib/vfs"] if n in {"cpmfs", "applesingle", "vfs"} else [])
+ (["arch"] if n in {"amiga"} else []),
),
)
for n in tests