mirror of
				https://github.com/davidgiven/fluxengine.git
				synced 2025-10-24 11:11:02 -07:00 
			
		
		
		
	Arch files are now built as one library per subdirectory, and everything
is autodetected.
This commit is contained in:
		| @@ -18,7 +18,7 @@ | ||||
| #include "arch/rolandd20/rolandd20.h" | ||||
| #include "arch/smaky6/smaky6.h" | ||||
| #include "arch/tartu/tartu.h" | ||||
| #include "arch/tids990/tids990" | ||||
| #include "arch/tids990/tids990.h" | ||||
| #include "arch/victor9k/victor9k.h" | ||||
| #include "arch/zilogmcz/zilogmcz.h" | ||||
| #include "arch/arch.h" | ||||
|   | ||||
							
								
								
									
										133
									
								
								arch/build.py
									
									
									
									
									
								
							
							
						
						
									
										133
									
								
								arch/build.py
									
									
									
									
									
								
							| @@ -1,106 +1,61 @@ | ||||
| from build.c import cxxlibrary | ||||
| from build.protobuf import proto, protocc | ||||
| from os.path import * | ||||
| from glob import glob | ||||
| import sys | ||||
|  | ||||
| archs = [f for f in glob("*", root_dir="arch") if isfile(f"arch/{f}/{f}.proto")] | ||||
|  | ||||
| ps = [] | ||||
| pls = [] | ||||
| cls = [] | ||||
| for a in archs: | ||||
|     ps += [ | ||||
|         proto( | ||||
|             name=f"proto_{a}", | ||||
|             srcs=[f"arch/{a}/{a}.proto"], | ||||
|             deps=["lib/config+common_proto"], | ||||
|         ) | ||||
|     ] | ||||
|  | ||||
|     pls += [ | ||||
|         protocc( | ||||
|             name=f"proto_lib_{a}", | ||||
|             srcs=[f".+proto_{a}"], | ||||
|             deps=["lib/config+common_proto_lib"], | ||||
|         ) | ||||
|     ] | ||||
|  | ||||
|     cls += [ | ||||
|         cxxlibrary( | ||||
|             name=f"arch_{a}", | ||||
|             srcs=glob(f"arch/{a}/*.cc") + glob(f"arch/{a}/*.h"), | ||||
|             hdrs={f"arch/{a}/{a}.h": f"arch/{a}/{a}.h"}, | ||||
|             deps=[ | ||||
|                 "lib/core", | ||||
|                 "lib/data", | ||||
|                 "lib/config", | ||||
|                 "lib/encoders", | ||||
|                 "lib/decoders", | ||||
|             ], | ||||
|         ) | ||||
|     ] | ||||
|  | ||||
| proto( | ||||
|     name="proto", | ||||
|     srcs=[ | ||||
|         "./aeslanier/aeslanier.proto", | ||||
|         "./agat/agat.proto", | ||||
|         "./amiga/amiga.proto", | ||||
|         "./apple2/apple2.proto", | ||||
|         "./brother/brother.proto", | ||||
|         "./c64/c64.proto", | ||||
|         "./f85/f85.proto", | ||||
|         "./fb100/fb100.proto", | ||||
|         "./ibm/ibm.proto", | ||||
|         "./macintosh/macintosh.proto", | ||||
|         "./micropolis/micropolis.proto", | ||||
|         "./mx/mx.proto", | ||||
|         "./northstar/northstar.proto", | ||||
|         "./rolandd20/rolandd20.proto", | ||||
|         "./smaky6/smaky6.proto", | ||||
|         "./tartu/tartu.proto", | ||||
|         "./tids990/tids990.proto", | ||||
|         "./victor9k/victor9k.proto", | ||||
|         "./zilogmcz/zilogmcz.proto", | ||||
|     ], | ||||
|     deps=["lib/config+common_proto"], | ||||
|     deps=ps + ["lib/config+common_proto"], | ||||
| ) | ||||
|  | ||||
| protocc( | ||||
|     name="proto_lib", srcs=[".+proto"], deps=["lib/config+common_proto_lib"] | ||||
| ) | ||||
| cxxlibrary(name="proto_lib", deps=pls) | ||||
|  | ||||
| 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", | ||||
|         "./brother/header_gcr.h", | ||||
|         "./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", | ||||
|         "./macintosh/data_gcr.h", | ||||
|         "./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": "./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/core", "lib/data", "lib/config", "lib/encoders", "lib/decoders"], | ||||
|     deps=cls | ||||
|     + ["lib/core", "lib/data", "lib/config", "lib/encoders", "lib/decoders"], | ||||
| ) | ||||
|   | ||||
| @@ -1,7 +1,7 @@ | ||||
| #include "lib/core/globals.h" | ||||
| #include "lib/decoders/decoders.h" | ||||
| #include "lib/encoders/encoders.h" | ||||
| #include "arch/tids990/tids990" | ||||
| #include "arch/tids990/tids990.h" | ||||
| #include "lib/core/crc.h" | ||||
| #include "lib/data/fluxmap.h" | ||||
| #include "lib/data/fluxmapreader.h" | ||||
|   | ||||
| @@ -1,7 +1,7 @@ | ||||
| #include "lib/core/globals.h" | ||||
| #include "lib/decoders/decoders.h" | ||||
| #include "lib/encoders/encoders.h" | ||||
| #include "arch/tids990/tids990" | ||||
| #include "arch/tids990/tids990.h" | ||||
| #include "lib/core/crc.h" | ||||
| #include "lib/data/image.h" | ||||
| #include "arch/tids990/tids990.pb.h" | ||||
|   | ||||
		Reference in New Issue
	
	Block a user