From 86744087a4c7094f4a19310fff246fcea442916d Mon Sep 17 00:00:00 2001 From: Geoffrey Merck F4FXL - KC3FRA Date: Sun, 11 Nov 2018 17:12:05 +0100 Subject: [PATCH] Force crawling of sub-makes for changed dependencies Inspired by https://stackoverflow.com/questions/31293557/how-to-tell-make-to-watch-dependencies-of-a-sub-make-target Also make install, clean and all PHONY targets --- Makefile | 31 +++++++++++++++++++------------ MakefileGUI | 31 +++++++++++++++++++------------ 2 files changed, 38 insertions(+), 24 deletions(-) diff --git a/Makefile b/Makefile index 7ebc1e6..7db19e6 100644 --- a/Makefile +++ b/Makefile @@ -12,45 +12,47 @@ export GUILIBS := $(shell wx-config --libs adv,core,base) export LIBS := $(shell wx-config --libs base) export LDFLAGS := +.PHONY: all all: ircDDBGateway/ircddbgatewayd ircDDBGatewayConfig/ircddbgatewayconfig APRSTransmit/aprstransmitd RemoteControl/remotecontrold \ StarNetServer/starnetserverd TextTransmit/texttransmitd TimerControl/timercontrold TimeServer/timeserverd VoiceTransmit/voicetransmitd -ircDDBGateway/ircddbgatewayd: Common/Common.a ircDDB/IRCDDB.a +ircDDBGateway/ircddbgatewayd: Common/Common.a ircDDB/IRCDDB.a force $(MAKE) -C ircDDBGateway -ircDDBGatewayConfig/ircddbgatewayconfig: GUICommon/GUICommon.a Common/Common.a +ircDDBGatewayConfig/ircddbgatewayconfig: GUICommon/GUICommon.a Common/Common.a force $(MAKE) -C ircDDBGatewayConfig -APRSTransmit/aprstransmitd: Common/Common.a +APRSTransmit/aprstransmitd: Common/Common.a force $(MAKE) -C APRSTransmit -RemoteControl/remotecontrold: Common/Common.a +RemoteControl/remotecontrold: Common/Common.a force $(MAKE) -C RemoteControl -StarNetServer/starnetserverd: Common/Common.a ircDDB/IRCDDB.a +StarNetServer/starnetserverd: Common/Common.a ircDDB/IRCDDB.a force $(MAKE) -C StarNetServer -TextTransmit/texttransmitd: Common/Common.a +TextTransmit/texttransmitd: Common/Common.a force $(MAKE) -C TextTransmit -TimerControl/timercontrold: Common/Common.a GUICommon/GUICommon.a +TimerControl/timercontrold: Common/Common.a GUICommon/GUICommon.a force $(MAKE) -C TimerControl -TimeServer/timeserverd: Common/Common.a GUICommon/GUICommon.a +TimeServer/timeserverd: Common/Common.a GUICommon/GUICommon.a force $(MAKE) -C TimeServer -VoiceTransmit/voicetransmitd: Common/Common.a +VoiceTransmit/voicetransmitd: Common/Common.a force $(MAKE) -C VoiceTransmit -GUICommon/GUICommon.a: +GUICommon/GUICommon.a: force $(MAKE) -C GUICommon -Common/Common.a: +Common/Common.a: force $(MAKE) -C Common -ircDDB/IRCDDB.a: +ircDDB/IRCDDB.a: force $(MAKE) -C ircDDB +.PHONY: install install: all $(MAKE) -C Data install $(MAKE) -C APRSTransmit install @@ -63,6 +65,7 @@ install: all $(MAKE) -C VoiceTransmit install $(MAKE) -C ircDDBGatewayConfig install +.PHONY: clean clean: $(MAKE) -C Common clean $(MAKE) -C ircDDB clean @@ -77,3 +80,7 @@ clean: $(MAKE) -C VoiceTransmit clean $(MAKE) -C ircDDBGatewayConfig clean +.PHONY: force +force : + true + diff --git a/MakefileGUI b/MakefileGUI index af13d02..e3ee47d 100644 --- a/MakefileGUI +++ b/MakefileGUI @@ -12,45 +12,47 @@ export GUILIBS := $(shell wx-config --libs adv,core,base) export LIBS := $(shell wx-config --libs base) export LDFLAGS := +.PHONY: all all: ircDDBGateway/ircddbgateway ircDDBGatewayConfig/ircddbgatewayconfig APRSTransmit/aprstransmitd RemoteControl/remotecontrol \ StarNetServer/starnetserver TextTransmit/texttransmitd TimerControl/timercontrol TimeServer/timeserver VoiceTransmit/voicetransmitd -ircDDBGateway/ircddbgateway: GUICommon/GUICommon.a Common/Common.a ircDDB/IRCDDB.a +ircDDBGateway/ircddbgateway: GUICommon/GUICommon.a Common/Common.a ircDDB/IRCDDB.a force $(MAKE) -C ircDDBGateway -f MakefileGUI -ircDDBGatewayConfig/ircddbgatewayconfig: GUICommon/GUICommon.a Common/Common.a +ircDDBGatewayConfig/ircddbgatewayconfig: GUICommon/GUICommon.a Common/Common.a force $(MAKE) -C ircDDBGatewayConfig -APRSTransmit/aprstransmitd: Common/Common.a +APRSTransmit/aprstransmitd: Common/Common.a force $(MAKE) -C APRSTransmit -RemoteControl/remotecontrol: Common/Common.a +RemoteControl/remotecontrol: Common/Common.a force $(MAKE) -C RemoteControl -f MakefileGUI -StarNetServer/starnetserver: Common/Common.a ircDDB/IRCDDB.a +StarNetServer/starnetserver: Common/Common.a ircDDB/IRCDDB.a force $(MAKE) -C StarNetServer -f MakefileGUI -TextTransmit/texttransmitd: Common/Common.a +TextTransmit/texttransmitd: Common/Common.a force $(MAKE) -C TextTransmit -TimerControl/timercontrol: Common/Common.a GUICommon/GUICommon.a +TimerControl/timercontrol: Common/Common.a GUICommon/GUICommon.a force $(MAKE) -C TimerControl -f MakefileGUI -TimeServer/timeserver: Common/Common.a GUICommon/GUICommon.a +TimeServer/timeserver: Common/Common.a GUICommon/GUICommon.a force $(MAKE) -C TimeServer -f MakefileGUI -VoiceTransmit/voicetransmitd: Common/Common.a +VoiceTransmit/voicetransmitd: Common/Common.a force $(MAKE) -C VoiceTransmit -GUICommon/GUICommon.a: +GUICommon/GUICommon.a: force $(MAKE) -C GUICommon -Common/Common.a: +Common/Common.a: force $(MAKE) -C Common -ircDDB/IRCDDB.a: +ircDDB/IRCDDB.a: force $(MAKE) -C ircDDB +.PHONY: install install: all $(MAKE) -C Data install $(MAKE) -C APRSTransmit install @@ -63,6 +65,7 @@ install: all $(MAKE) -C VoiceTransmit install $(MAKE) -C ircDDBGatewayConfig install +.PHONY: clean clean: $(MAKE) -C Common clean $(MAKE) -C ircDDB clean @@ -76,3 +79,7 @@ clean: $(MAKE) -C TimeServer -f MakefileGUI clean $(MAKE) -C VoiceTransmit clean $(MAKE) -C ircDDBGatewayConfig clean + +.PHONY: force +force: + true;