root := ../../../.. include $(root)/build/cxx/rules.make # Build. # EXTRA_CPPFLAGS += -I$(root)/libxsde ifeq ($(XSDE_LONGLONG),n) EXTRA_XSDFLAGS += --no-long-long endif ifeq ($(XSDE_SERIALIZER_VALIDATION),n) EXTRA_XSDFLAGS += --suppress-validation endif ifeq ($(XSDE_REUSE_STYLE),mixin) EXTRA_XSDFLAGS += --reuse-style-mixin endif ifeq ($(XSDE_REUSE_STYLE),mixin) impl := supermen-simpl-mixin else impl := supermen-simpl-tiein endif driver: driver.o supermen-sskel.o $(impl).o $(root)/libxsde/xsde/libxsde.a driver.o: driver.cxx $(impl).hxx supermen-sskel.hxx supermen.hxx $(impl).o: $(impl).cxx $(impl).hxx supermen-sskel.hxx supermen.hxx supermen-sskel.o: supermen-sskel.cxx supermen-sskel.hxx supermen.hxx .PRECIOUS: %-sskel.hxx %-sskel.cxx %-sskel.hxx %-sskel.cxx: %.xsd %.map $(root)/bin/xsde cxx-serializer $(XSDFLAGS) $(EXTRA_XSDFLAGS) \ --generate-polymorphic --type-map $*.map $< # Test. # .PHONY: test test: driver ./driver # Clean. # .PHONY: clean clean: rm -f supermen-sskel.?xx $(impl).o supermen-sskel.o driver.o driver