.SILENT: help VERSION = 1.0.0 APP = testmodbus-server -include Makefile.rules OBJECTS = gui.oo main.oo mbsconfig.oo modbus.oo guimodbusdata.oo guivalues.oo json.oo tcp.oo DISTNAME=testmodbus-server-$(VERSION) ifeq ($(TARGET),) noconfig: help endif all: Makefile.rules $(TARGET) help: echo "set up configuration" echo " make configwindows to generate the windows build" echo " make configcross to generate the windows cross build" echo " make configlinux to generate the linix build" echo " make buildwindows to generate the build for windows (uses cross compiler)" configlinux: clean cp -f Makefile.rules.linux Makefile.rules make config configwindows: clean cp -f Makefile.rules.windows Makefile.rules make config configcross: clean cp -f Makefile.rules.crosswindows Makefile.rules make config config: Makefile.rules echo "#ifndef _CONFIG_H_" > config.h echo "#define _CONFIG_H_" >> config.h echo "" >> config.h echo "#define VERSION \"$(VERSION)\"" >> config.h echo "" >> config.h echo "#endif" >> config.h $(TARGET): $(OBJECTS) $(CPP) -o $(TARGET) $(OBJECTS) $(LDFLAGS) $(LIBS) .SUFFIXES: .SUFFIXES: .c .cc .C .cpp .oo .cc.oo : $(INCLUDES) $(CPP) -o $@ -c $(CPPFLAGS) $< clean: rm -f *.o *.oo *.c~ *.h~ *.cc~ *.ui~ $(APP) Makefile~ rm -rf *.dll rm -rf *.exe rm -rf Makefile.rules rm -rf test-fc16 rm -rf test-fc15 dist: clean rm -rf $(DISTNAME) mkdir $(DISTNAME) cp Makefile* $(DISTNAME) cp README.md $(DISTNAME) cp LICENSE $(DISTNAME) cp Changelog $(DISTNAME) cp *.ui $(DISTNAME) cp -rf *.h $(DISTNAME) cp -rf *.cc $(DISTNAME) tar cvzf $(DISTNAME).tgz $(DISTNAME) rm -rf $(DISTNAME) dep: $(CXX) -MM `ls *.cc` $(CXXFLAGS) > $(DEPENDFILE) test-fc16: test-fc16.cc $(CPP) -o test-fc16 test-fc16.cc $(LDFLAGS) -I/usr/include -I/usr/local/include -L/usr/local/lib -L/usr/lib test-fc15: test-fc15.cc $(CPP) -o test-fc15 test-fc15.cc $(LDFLAGS) -I/usr/include -I/usr/local/include -L/usr/local/lib -L/usr/lib copydll: $(TARGET) echo "delete all librarys" rm -rf *.dll echo "copy linked dll first level" cp -vf `ldd testmodbus-server.exe | grep .dll | grep /mingw64/bin | cut -d' ' -f3 ` ./ echo "copy network dll" cp /usr/lib/*UDPTCPNetwork.dll ./ echo "copy linked dll second level" cp -vf `ldd testmodbus-server.exe | grep .dll | grep /mingw64/bin | cut -d' ' -f3 ` ./ buildwindows: rm -rf TestModbus-Server-$(VERSION) mkdir TestModbus-Server-$(VERSION) make clean make configcross make $(TARGET) cp testmodbus-server.exe TestModbus-Server-$(VERSION)/ cp testmodbus-server.ui TestModbus-Server-$(VERSION)/ cp testmodbus-server.png TestModbus-Server-$(VERSION)/ cp README.md TestModbus-Server-$(VERSION)/ cp Changelog TestModbus-Server-$(VERSION)/ cp LICENSE TestModbus-Server-$(VERSION)/ tar xvzf $(CROSSENV)/files/winbuild-dll.tgz -C TestModbus-Server-$(VERSION)/ tar xvzf $(CROSSENV)/files/winbuild-share.tgz -C TestModbus-Server-$(VERSION)/ -include $(DEPENDFILE) .PHONY: all .PHONY: count .PHONY: clean