mirror of
				https://github.com/davidgiven/fluxengine.git
				synced 2025-10-31 11:17:01 -07:00 
			
		
		
		
	Let's try an actual vanilla Makefile.
This commit is contained in:
		
							
								
								
									
										129
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										129
									
								
								Makefile
									
									
									
									
									
								
							| @@ -48,31 +48,120 @@ LDFLAGS ?= | ||||
| PLATFORM ?= UNIX | ||||
| TESTS ?= yes | ||||
|  | ||||
| all:: $(OBJDIR)/build.ninja | ||||
| 	@ninja -f $< -t compdb > compile_commands.json | ||||
| 	@ninja -f $< | ||||
| CFLAGS += \ | ||||
| 	-Iarch \ | ||||
| 	-Ilib \ | ||||
| 	-I. \ | ||||
| 	-I$(OBJDIR)/arch \ | ||||
| 	-I$(OBJDIR)/lib \ | ||||
| 	-I$(OBJDIR) \ | ||||
|  | ||||
| $(OBJDIR)/build.ninja: Makefile $(shell find . -name '*.lua') | ||||
| 	@mkdir -p $(OBJDIR) | ||||
| 	@$(LUA) build/ackbuilder.lua build/build.lua build.lua \ | ||||
| 		--ninja \ | ||||
| 		AR="$(AR)" \ | ||||
| 		CC="$(CC)" \ | ||||
| 		CFLAGS="$(CFLAGS)" \ | ||||
| 		CXX="$(CXX)" \ | ||||
| 		CXXFLAGS="$(CXXFLAGS)" \ | ||||
| 		LDFLAGS="$(LDFLAGS)" \ | ||||
| 		OBJDIR="$(OBJDIR)" \ | ||||
| 		PKG_CONFIG="$(PKG_CONFIG)" \ | ||||
| 		PLATFORM="$(PLATFORM)" \ | ||||
| 		PROTOC="$(PROTOC)" \ | ||||
| 		TESTS="$(TESTS)" \ | ||||
| 		WX_CONFIG="$(WX_CONFIG)" \ | ||||
| 		> $@ | ||||
| LDFLAGS += \ | ||||
| 	-lz \ | ||||
| 	-lfmt | ||||
|  | ||||
| .SUFFIXES: | ||||
|  | ||||
| use-library = $(eval $(use-library-impl)) | ||||
| define use-library-impl | ||||
| $(1): | $(call $(3)_LIB) | ||||
| $(1): private LDFLAGS += $(call $(3)_LDFLAGS) | ||||
| $(2): private CFLAGS += $(call $(3)_CFLAGS) | ||||
| endef | ||||
|  | ||||
| all: $(OBJDIR) fluxengine.exe | ||||
|  | ||||
| PROTOS = \ | ||||
| 	arch/aeslanier/aeslanier.proto \ | ||||
| 	arch/amiga/amiga.proto \ | ||||
| 	arch/apple2/apple2.proto \ | ||||
| 	arch/brother/brother.proto \ | ||||
| 	arch/c64/c64.proto \ | ||||
| 	arch/f85/f85.proto \ | ||||
| 	arch/fb100/fb100.proto \ | ||||
| 	arch/ibm/ibm.proto \ | ||||
| 	arch/macintosh/macintosh.proto \ | ||||
| 	arch/mx/mx.proto \ | ||||
| 	arch/victor9k/victor9k.proto \ | ||||
| 	arch/zilogmcz/zilogmcz.proto \ | ||||
| 	arch/tids990/tids990.proto \ | ||||
| 	arch/micropolis/micropolis.proto \ | ||||
| 	arch/northstar/northstar.proto \ | ||||
| 	arch/agat/agat.proto \ | ||||
| 	lib/decoders/decoders.proto \ | ||||
| 	lib/encoders/encoders.proto \ | ||||
| 	lib/fluxsink/fluxsink.proto \ | ||||
| 	lib/fluxsource/fluxsource.proto \ | ||||
| 	lib/imagereader/imagereader.proto \ | ||||
| 	lib/imagewriter/imagewriter.proto \ | ||||
| 	lib/usb/usb.proto \ | ||||
| 	lib/common.proto \ | ||||
| 	lib/fl2.proto \ | ||||
| 	lib/config.proto \ | ||||
| 	lib/mapper.proto \ | ||||
| 	lib/drive.proto \ | ||||
| 	tests/testproto.proto \ | ||||
|  | ||||
| PROTO_HDRS = $(patsubst %.proto, $(OBJDIR)/%.pb.h, $(PROTOS)) | ||||
| PROTO_SRCS = $(patsubst %.proto, $(OBJDIR)/%.pb.cc, $(PROTOS)) | ||||
| PROTO_OBJS = $(patsubst %.cc, %.o, $(PROTO_SRCS)) | ||||
| PROTO_CFLAGS = $(shell pkg-config --cflags protobuf) | ||||
| $(PROTO_SRCS): | $(PROTO_HDRS) | ||||
| $(PROTO_OBJS): CFLAGS += $(PROTO_CFLAGS) | ||||
| PROTO_LIB = $(OBJDIR)/libproto.a | ||||
| $(PROTO_LIB): $(PROTO_OBJS) | ||||
| PROTO_LDFLAGS = $(shell pkg-config --libs protobuf) -pthread $(PROTO_LIB) | ||||
| .PRECIOUS: $(PROTO_HDRS) $(PROTO_SRCS) | ||||
|  | ||||
| include dep/agg/build.mk | ||||
| include dep/libusbp/build.mk | ||||
| include dep/stb/build.mk | ||||
| include dep/fmt/build.mk | ||||
|  | ||||
| include lib/build.mk | ||||
| include arch/build.mk | ||||
| include src/build.mk | ||||
|  | ||||
| $(OBJDIR)/%.a: | ||||
| 	@mkdir -p $(dir $@) | ||||
| 	@echo AR $@ | ||||
| 	@$(AR) rc $@ $^ | ||||
|  | ||||
| %.exe: | ||||
| 	@mkdir -p $(dir $@) | ||||
| 	@echo LINK $@ | ||||
| 	@$(CXX) -o $@ $^ -Wl,--start-group $(LDFLAGS) -Wl,--end-group | ||||
|  | ||||
| $(OBJDIR)/%.o: %.cpp | ||||
| 	@mkdir -p $(dir $@) | ||||
| 	@echo CXX $< | ||||
| 	@$(CXX) $(CFLAGS) $(CXXFLAGS) -MMD -MP -MF $(@:.o=.d) -c -o $@ $< | ||||
|  | ||||
| $(OBJDIR)/%.o: %.cc | ||||
| 	@mkdir -p $(dir $@) | ||||
| 	@echo CXX $< | ||||
| 	@$(CXX) $(CFLAGS) $(CXXFLAGS) -MMD -MP -MF $(@:.o=.d) -c -o $@ $< | ||||
|  | ||||
| $(OBJDIR)/%.o: $(OBJDIR)/%.cc | ||||
| 	@mkdir -p $(dir $@) | ||||
| 	@echo CXX $< | ||||
| 	@$(CXX) $(CFLAGS) $(CXXFLAGS) -MMD -MP -MF $(@:.o=.d) -c -o $@ $< | ||||
|  | ||||
| $(OBJDIR)/%.o: %.c | ||||
| 	@mkdir -p $(dir $@) | ||||
| 	@echo CC $< | ||||
| 	@$(CC) $(CFLAGS) $(CFLAGS) -MMD -MP -MF $(@:.o=.d) -c -o $@ $< | ||||
|  | ||||
| $(OBJDIR)/%.pb.h: %.proto | ||||
| 	@mkdir -p $(dir $@) | ||||
| 	@echo PROTOC $@ | ||||
| 	@$(PROTOC) -I. --cpp_out=$(OBJDIR) $< | ||||
|  | ||||
| clean: | ||||
| 	rm -rf $(OBJDIR) | ||||
|  | ||||
| -include $(LIB_OBJS:%.o=%.d) | ||||
|  | ||||
| #PACKAGES = zlib sqlite3 protobuf | ||||
| # | ||||
| #export CFLAGS = \ | ||||
|   | ||||
							
								
								
									
										39
									
								
								arch/build.mk
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										39
									
								
								arch/build.mk
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,39 @@ | ||||
| LIBARCH_SRCS = \ | ||||
| 	arch/aeslanier/decoder.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/mx/decoder.cc \ | ||||
| 	arch/victor9k/decoder.cc \ | ||||
| 	arch/victor9k/encoder.cc \ | ||||
| 	arch/zilogmcz/decoder.cc \ | ||||
| 	arch/tids990/decoder.cc \ | ||||
| 	arch/tids990/encoder.cc \ | ||||
| 	arch/micropolis/decoder.cc \ | ||||
| 	arch/micropolis/encoder.cc \ | ||||
| 	arch/northstar/decoder.cc \ | ||||
| 	arch/northstar/encoder.cc \ | ||||
| 	arch/agat/agat.cc \ | ||||
| 	arch/agat/decoder.cc \ | ||||
|  | ||||
| LIBARCH_OBJS = $(patsubst %.cc, $(OBJDIR)/%.o, $(LIBARCH_SRCS)) | ||||
| $(LIBARCH_SRCS): | $(PROTO_HDRS) | ||||
| $(LIBARCH_SRCS): CFLAGS += $(PROTO_CFLAGS) | ||||
| LIBARCH_LIB = $(OBJDIR)/libarch.a | ||||
| $(LIBARCH_LIB): $(LIBARCH_OBJS) | ||||
|  | ||||
| LIBARCH_LDFLAGS = $(LIBARCH_LIB) | ||||
|  | ||||
							
								
								
									
										37
									
								
								dep/agg/build.mk
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										37
									
								
								dep/agg/build.mk
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,37 @@ | ||||
| AGG_SRCS = \ | ||||
| 	dep/agg/src/agg_arrowhead.cpp \ | ||||
| 	dep/agg/src/agg_line_aa_basics.cpp \ | ||||
| 	dep/agg/src/agg_vcgen_bspline.cpp \ | ||||
| 	dep/agg/src/agg_vpgen_segmentator.cpp \ | ||||
| 	dep/agg/src/agg_color_rgba.cpp \ | ||||
| 	dep/agg/src/agg_sqrt_tables.cpp \ | ||||
| 	dep/agg/src/agg_bspline.cpp \ | ||||
| 	dep/agg/src/agg_curves.cpp \ | ||||
| 	dep/agg/src/agg_rounded_rect.cpp \ | ||||
| 	dep/agg/src/agg_vcgen_markers_term.cpp \ | ||||
| 	dep/agg/src/agg_vcgen_dash.cpp \ | ||||
| 	dep/agg/src/agg2d.cpp \ | ||||
| 	dep/agg/src/agg_trans_affine.cpp \ | ||||
| 	dep/agg/src/agg_gsv_text.cpp \ | ||||
| 	dep/agg/src/agg_vcgen_smooth_poly1.cpp \ | ||||
| 	dep/agg/src/agg_trans_single_path.cpp \ | ||||
| 	dep/agg/src/agg_vpgen_clip_polygon.cpp \ | ||||
| 	dep/agg/src/agg_embedded_raster_fonts.cpp \ | ||||
| 	dep/agg/src/agg_trans_double_path.cpp \ | ||||
| 	dep/agg/src/agg_vcgen_stroke.cpp \ | ||||
| 	dep/agg/src/agg_arc.cpp \ | ||||
| 	dep/agg/src/agg_image_filters.cpp \ | ||||
| 	dep/agg/src/agg_trans_warp_magnifier.cpp \ | ||||
| 	dep/agg/src/agg_vpgen_clip_polyline.cpp \ | ||||
| 	dep/agg/src/agg_bezier_arc.cpp \ | ||||
| 	dep/agg/src/agg_line_profile_aa.cpp \ | ||||
| 	dep/agg/src/agg_vcgen_contour.cpp \ | ||||
| 	 | ||||
| AGG_OBJS = $(patsubst %.cpp, $(OBJDIR)/%.o, $(AGG_SRCS)) | ||||
| AGG_LIB = $(OBJDIR)/libagg.a | ||||
| $(AGG_LIB): $(AGG_OBJS) | ||||
| AGG_LDFLAGS = $(AGG_LIB) | ||||
| AGG_CFLAGS = -Idep/agg/include | ||||
|  | ||||
| $(AGG_OBJS): CFLAGS += $(AGG_CFLAGS) | ||||
|  | ||||
							
								
								
									
										12
									
								
								dep/fmt/build.mk
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								dep/fmt/build.mk
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,12 @@ | ||||
| ifeq ($(shell $(PKG_CONFIG) fmt; echo $$?), 0) | ||||
|  | ||||
| LIBFMT_LIB = | ||||
| LIBFMT_CFLAGS := $(shell $(PKG_CONFIG) --cflags fmt) | ||||
| LIBFMT_LDFLAGS := $(shell $(PKG_CONFIG) --libs fmt) | ||||
|  | ||||
| else | ||||
|  | ||||
| $(error required dependency 'fmt' missing) | ||||
|  | ||||
| endif | ||||
|  | ||||
							
								
								
									
										26
									
								
								dep/libusbp/build.mk
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										26
									
								
								dep/libusbp/build.mk
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,26 @@ | ||||
| LIBUSBP_SRCS = \ | ||||
| 	dep/libusbp/src/async_in_pipe.c \ | ||||
| 	dep/libusbp/src/error.c \ | ||||
| 	dep/libusbp/src/error_hresult.c \ | ||||
| 	dep/libusbp/src/find_device.c \ | ||||
| 	dep/libusbp/src/linux/async_in_transfer_linux.c \ | ||||
| 	dep/libusbp/src/linux/device_linux.c \ | ||||
| 	dep/libusbp/src/linux/error_linux.c \ | ||||
| 	dep/libusbp/src/linux/generic_handle_linux.c \ | ||||
| 	dep/libusbp/src/linux/generic_interface_linux.c \ | ||||
| 	dep/libusbp/src/linux/list_linux.c \ | ||||
| 	dep/libusbp/src/linux/serial_port_linux.c \ | ||||
| 	dep/libusbp/src/linux/udev_linux.c \ | ||||
| 	dep/libusbp/src/linux/usbfd_linux.c \ | ||||
| 	dep/libusbp/src/list.c \ | ||||
| 	dep/libusbp/src/pipe_id.c \ | ||||
| 	dep/libusbp/src/string.c \ | ||||
| 	 | ||||
| LIBUSBP_OBJS = $(patsubst %.c, $(OBJDIR)/%.o, $(LIBUSBP_SRCS)) | ||||
| $(LIBUSBP_OBJS): CFLAGS += -Idep/libusbp/src -Idep/libusbp/include | ||||
| LIBUSBP_LIB = $(OBJDIR)/libusbp.a | ||||
| LIBUSBP_CFLAGS = -Idep/libusbp/include $(shell pkg-config --cflags libudev) | ||||
| LIBUSBP_LDFLAGS = $(LIBUSBP_LIB) $(shell pkg-config --libs libudev) | ||||
| $(LIBUSBP_LIB): $(LIBUSBP_OBJS) | ||||
|  | ||||
|  | ||||
							
								
								
									
										37
									
								
								dep/stb/build.mk
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										37
									
								
								dep/stb/build.mk
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,37 @@ | ||||
| ifeq ($(shell $(PKG_CONFIG) stb; echo $$?), 0) | ||||
|  | ||||
| # System libstb present. | ||||
|  | ||||
| STB_LIB = | ||||
| STB_CFLAGS := $(shell $(PKG_CONFIG) --cflags stb) | ||||
| STB_LDFLAGS := $(shell $(PKG_CONFIG) --libs stb) | ||||
|  | ||||
| else | ||||
|  | ||||
| STB_SRCS = \ | ||||
| 	dep/libusbp/src/async_in_pipe.c \ | ||||
| 	dep/libusbp/src/error.c \ | ||||
| 	dep/libusbp/src/error_hresult.c \ | ||||
| 	dep/libusbp/src/find_device.c \ | ||||
| 	dep/libusbp/src/linux/async_in_transfer_linux.c \ | ||||
| 	dep/libusbp/src/linux/device_linux.c \ | ||||
| 	dep/libusbp/src/linux/error_linux.c \ | ||||
| 	dep/libusbp/src/linux/generic_handle_linux.c \ | ||||
| 	dep/libusbp/src/linux/generic_interface_linux.c \ | ||||
| 	dep/libusbp/src/linux/list_linux.c \ | ||||
| 	dep/libusbp/src/linux/serial_port_linux.c \ | ||||
| 	dep/libusbp/src/linux/udev_linux.c \ | ||||
| 	dep/libusbp/src/linux/usbfd_linux.c \ | ||||
| 	dep/libusbp/src/list.c \ | ||||
| 	dep/libusbp/src/pipe_id.c \ | ||||
| 	dep/libusbp/src/string.c \ | ||||
| 	 | ||||
| STB_OBJS = $(patsubst %.c, $(OBJDIR)/%.o, $(STB_SRCS)) | ||||
| $(STB_OBJS): CFLAGS += -Idep/libusbp/src | ||||
| STB_LIB = $(OBJDIR)/libubsp.a | ||||
| $(STB_LIB): $(STB_OBJS) | ||||
| STB_CFLAGS = | ||||
| STB_LDFLAGS = $(STB_LIB) | ||||
|  | ||||
| endif | ||||
|  | ||||
							
								
								
									
										78
									
								
								lib/build.mk
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										78
									
								
								lib/build.mk
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,78 @@ | ||||
| LIBFLUXENGINE_SRCS = \ | ||||
| 	lib/decoders/fluxdecoder.cc \ | ||||
| 	lib/decoders/fluxmapreader.cc \ | ||||
| 	lib/decoders/fmmfm.cc \ | ||||
| 	lib/decoders/decoders.cc \ | ||||
| 	lib/encoders/encoders.cc \ | ||||
| 	lib/fluxsink/aufluxsink.cc \ | ||||
| 	lib/fluxsink/fl2fluxsink.cc \ | ||||
| 	lib/fluxsink/fluxsink.cc \ | ||||
| 	lib/fluxsink/hardwarefluxsink.cc \ | ||||
| 	lib/fluxsink/scpfluxsink.cc \ | ||||
| 	lib/fluxsink/vcdfluxsink.cc \ | ||||
| 	lib/fluxsource/cwffluxsource.cc \ | ||||
| 	lib/fluxsource/erasefluxsource.cc \ | ||||
| 	lib/fluxsource/fl2fluxsource.cc \ | ||||
| 	lib/fluxsource/fluxsource.cc \ | ||||
| 	lib/fluxsource/hardwarefluxsource.cc \ | ||||
| 	lib/fluxsource/kryoflux.cc \ | ||||
| 	lib/fluxsource/kryofluxfluxsource.cc \ | ||||
| 	lib/fluxsource/scpfluxsource.cc \ | ||||
| 	lib/fluxsource/testpatternfluxsource.cc \ | ||||
| 	lib/imagereader/d64imagereader.cc \ | ||||
| 	lib/imagereader/d88imagereader.cc \ | ||||
| 	lib/imagereader/dimimagereader.cc \ | ||||
| 	lib/imagereader/diskcopyimagereader.cc \ | ||||
| 	lib/imagereader/fdiimagereader.cc \ | ||||
| 	lib/imagereader/imagereader.cc \ | ||||
| 	lib/imagereader/imdimagereader.cc \ | ||||
| 	lib/imagereader/imgimagereader.cc \ | ||||
| 	lib/imagereader/jv3imagereader.cc \ | ||||
| 	lib/imagereader/nfdimagereader.cc \ | ||||
| 	lib/imagereader/nsiimagereader.cc \ | ||||
| 	lib/imagereader/td0imagereader.cc \ | ||||
| 	lib/imagewriter/d64imagewriter.cc \ | ||||
| 	lib/imagewriter/diskcopyimagewriter.cc \ | ||||
| 	lib/imagewriter/imagewriter.cc \ | ||||
| 	lib/imagewriter/imgimagewriter.cc \ | ||||
| 	lib/imagewriter/ldbsimagewriter.cc \ | ||||
| 	lib/imagewriter/nsiimagewriter.cc \ | ||||
| 	lib/imagewriter/rawimagewriter.cc \ | ||||
| 	lib/imagewriter/d88imagewriter.cc \ | ||||
| 	lib/usb/fluxengineusb.cc \ | ||||
| 	lib/usb/greaseweazle.cc \ | ||||
| 	lib/usb/greaseweazleusb.cc \ | ||||
| 	lib/usb/serial.cc \ | ||||
| 	lib/usb/usb.cc \ | ||||
| 	lib/usb/usbfinder.cc \ | ||||
| 	lib/ldbs.cc \ | ||||
| 	lib/logger.cc \ | ||||
| 	lib/proto.cc \ | ||||
| 	lib/bitmap.cc \ | ||||
| 	lib/bytes.cc \ | ||||
| 	lib/crc.cc \ | ||||
| 	lib/fluxmap.cc \ | ||||
| 	lib/readerwriter.cc \ | ||||
| 	lib/sector.cc \ | ||||
| 	lib/csvreader.cc \ | ||||
| 	lib/globals.cc \ | ||||
| 	lib/utils.cc \ | ||||
| 	lib/flags.cc \ | ||||
| 	lib/hexdump.cc \ | ||||
| 	lib/mapper.cc \ | ||||
| 	lib/image.cc \ | ||||
| 	lib/imginputoutpututils.cc \ | ||||
|  | ||||
| LIBFLUXENGINE_OBJS = $(patsubst %.cc, $(OBJDIR)/%.o, $(LIBFLUXENGINE_SRCS)) | ||||
| $(LIBFLUXENGINE_SRCS): | $(PROTO_HDRS) | ||||
| LIBFLUXENGINE_LIB = $(OBJDIR)/libfluxengine.a | ||||
| LIBFLUXENGINE_CFLAGS =  | ||||
| LIBFLUXENGINE_LDFLAGS = $(LIBFLUXENGINE_LIB) | ||||
|  | ||||
| $(LIBFLUXENGINE_LIB): $(LIBFLUXENGINE_OBJS) | ||||
|  | ||||
| $(LIBFLUXENGINE_OBJS): CFLAGS += $(FMT_CFLAGS) | ||||
| $(LIBFLUXENGINE_OBJS): CFLAGS += $(LIBARCH_CFLAGS) | ||||
| $(LIBFLUXENGINE_OBJS): CFLAGS += $(LIBUSBP_CFLAGS) | ||||
| $(LIBFLUXENGINE_OBJS): CFLAGS += $(PROTO_CFLAGS) | ||||
|  | ||||
							
								
								
									
										29
									
								
								src/build.mk
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										29
									
								
								src/build.mk
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,29 @@ | ||||
| include src/formats/build.mk | ||||
|  | ||||
| FLUXENGINE_SRCS = \ | ||||
| 	src/fe-analysedriveresponse.cc \ | ||||
| 	src/fe-analyselayout.cc \ | ||||
| 	src/fe-inspect.cc \ | ||||
| 	src/fe-rawread.cc \ | ||||
| 	src/fe-rawwrite.cc \ | ||||
| 	src/fe-read.cc \ | ||||
| 	src/fe-rpm.cc \ | ||||
| 	src/fe-seek.cc \ | ||||
| 	src/fe-testbandwidth.cc \ | ||||
| 	src/fe-testvoltages.cc \ | ||||
| 	src/fe-write.cc \ | ||||
| 	src/fluxengine.cc \ | ||||
|   | ||||
| FLUXENGINE_OBJS = $(patsubst %.cc, $(OBJDIR)/%.o, $(FLUXENGINE_SRCS)) | ||||
| $(FLUXENGINE_SRCS): | $(PROTO_HDRS) | ||||
| fluxengine.exe: $(FLUXENGINE_OBJS) | ||||
|  | ||||
| $(call use-library, fluxengine.exe, $(FLUXENGINE_OBJS), AGG) | ||||
| $(call use-library, fluxengine.exe, $(FLUXENGINE_OBJS), FMT) | ||||
| $(call use-library, fluxengine.exe, $(FLUXENGINE_OBJS), LIBARCH) | ||||
| $(call use-library, fluxengine.exe, $(FLUXENGINE_OBJS), LIBFLUXENGINE) | ||||
| $(call use-library, fluxengine.exe, $(FLUXENGINE_OBJS), LIBFORMATS) | ||||
| $(call use-library, fluxengine.exe, $(FLUXENGINE_OBJS), LIBUSBP) | ||||
| $(call use-library, fluxengine.exe, $(FLUXENGINE_OBJS), PROTO) | ||||
| $(call use-library, fluxengine.exe, $(FLUXENGINE_OBJS), STB) | ||||
|  | ||||
							
								
								
									
										80
									
								
								src/formats/build.mk
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										80
									
								
								src/formats/build.mk
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,80 @@ | ||||
| FORMATS = \ | ||||
| 	40track_drive \ | ||||
| 	acornadfs \ | ||||
| 	acorndfs \ | ||||
| 	aeslanier \ | ||||
| 	agat840 \ | ||||
| 	amiga \ | ||||
| 	ampro \ | ||||
| 	apple2_drive \ | ||||
| 	apple2 \ | ||||
| 	appledos \ | ||||
| 	atarist360 \ | ||||
| 	atarist370 \ | ||||
| 	atarist400 \ | ||||
| 	atarist410 \ | ||||
| 	atarist720 \ | ||||
| 	atarist740 \ | ||||
| 	atarist800 \ | ||||
| 	atarist820 \ | ||||
| 	bk800 \ | ||||
| 	brother120 \ | ||||
| 	brother240 \ | ||||
| 	commodore1541 \ | ||||
| 	commodore1581 \ | ||||
| 	eco1 \ | ||||
| 	f85 \ | ||||
| 	fb100 \ | ||||
| 	hp9121 \ | ||||
| 	hplif770 \ | ||||
| 	ibm1200 \ | ||||
| 	ibm1232 \ | ||||
| 	ibm1440 \ | ||||
| 	ibm180 \ | ||||
| 	ibm360 \ | ||||
| 	ibm720 \ | ||||
| 	ibm \ | ||||
| 	mac400 \ | ||||
| 	mac800 \ | ||||
| 	micropolis143 \ | ||||
| 	micropolis287 \ | ||||
| 	micropolis315 \ | ||||
| 	micropolis630 \ | ||||
| 	mx \ | ||||
| 	n88basic \ | ||||
| 	northstar175 \ | ||||
| 	northstar350 \ | ||||
| 	northstar87 \ | ||||
| 	prodos \ | ||||
| 	rx50 \ | ||||
| 	shugart_drive \ | ||||
| 	tids990 \ | ||||
| 	vgi \ | ||||
| 	victor9k_ds \ | ||||
| 	victor9k_ss \ | ||||
| 	zilogmcz \ | ||||
|  | ||||
| $(OBJDIR)/protoencode.exe: $(OBJDIR)/scripts/protoencode.o | ||||
| $(call use-library, $(OBJDIR)/protoencode.exe, $(OBJDIR)/scripts/protoencode.o, PROTO) | ||||
|  | ||||
| $(OBJDIR)/src/formats/format_%.o: $(OBJDIR)/src/formats/format_%.cc | ||||
| $(OBJDIR)/src/formats/format_%.cc: $(OBJDIR)/protoencode.exe src/formats/%.textpb | ||||
| 	@mkdir -p $(dir $@) | ||||
| 	@echo PROTOENCODE $* | ||||
| 	@$^ $@ formats_$*_pb | ||||
|  | ||||
| $(OBJDIR)/src/formats/table.cc: scripts/mktable.sh | ||||
| 	@mkdir -p $(dir $@) | ||||
| 	@echo MKTABLE $@ | ||||
| 	@scripts/mktable.sh formats $(FORMATS) > $@ | ||||
|  | ||||
| LIBFORMATS_SRCS = \ | ||||
| 	$(patsubst %, $(OBJDIR)/src/formats/format_%.cc, $(FORMATS)) \ | ||||
| 	$(OBJDIR)/src/formats/table.cc | ||||
| LIBFORMATS_OBJS = $(patsubst %.cc, %.o, $(LIBFORMATS_SRCS)) | ||||
| .PRECIOUS: $(LIBFORMATS_SRCS) | ||||
|  | ||||
| LIBFORMATS_LIB = $(OBJDIR)/libformats.a | ||||
| LIBFORMATS_LDFLAGS = $(LIBFORMATS_LIB) | ||||
| $(LIBFORMATS_LIB): $(LIBFORMATS_OBJS) | ||||
|  | ||||
		Reference in New Issue
	
	Block a user