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
This commit is contained in:
Geoffrey Merck F4FXL - KC3FRA 2018-11-11 17:12:05 +01:00
parent baeee75cfd
commit 86744087a4
2 changed files with 38 additions and 24 deletions

View file

@ -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

View file

@ -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;