.PHONY: \ all c clean purge help \ libowlps \ libowlps-client \ owlps-client \ owlps-listener \ owlps-aggregator \ owlps-positioning \ install \ install-owlps-client \ install-owlps-listener \ install-owlps-aggregator \ install-owlps-positioning \ uninstall \ uninstall-owlps-client \ uninstall-owlps-listener \ uninstall-owlps-aggregator \ uninstall-owlps-positioning ## Compilation ## all: \ c \ owlps-positioning c: \ libowlps \ libowlps-client \ owlps-client \ owlps-listener \ owlps-aggregator libowlps: @make -C $@ libowlps-client: libowlps @make -C $@ owlps-client: libowlps libowlps-client @make -C $@ owlps-listener: libowlps libowlps-client @make -C $@ owlps-aggregator: libowlps @make -C $@ owlps-positioning: libowlps @make -C $@ ## Installation ## install : \ install-libowlps \ install-owlps-client \ install-owlps-listener \ install-owlps-aggregator \ install-owlps-positioning install-libowlps: @make -C $(subst install-,,$@) install install-owlps-client: install-libowlps @make -C $(subst install-,,$@) install install-owlps-listener: install-libowlps @make -C $(subst install-,,$@) install install-owlps-aggregator: install-libowlps @make -C $(subst install-,,$@) install install-owlps-positioning: install-libowlps @make -C $(subst install-,,$@) install ## Uninstallation ## uninstall : \ uninstall-libowlps \ uninstall-owlps-client \ uninstall-owlps-listener \ uninstall-owlps-aggregator \ uninstall-owlps-positioning uninstall-libowlps: @make -C $(subst uninstall-,,$@) uninstall uninstall-owlps-client: @make -C $(subst uninstall-,,$@) uninstall uninstall-owlps-listener: @make -C $(subst uninstall-,,$@) uninstall uninstall-owlps-aggregator: @make -C $(subst uninstall-,,$@) uninstall uninstall-owlps-positioning: @make -C $(subst uninstall-,,$@) uninstall ## Cleaning ## clean : @make -C libowlps clean @make -C libowlps-client clean @make -C owlps-client clean @make -C owlps-listener clean @make -C owlps-aggregator clean @make -C owlps-positioning clean purge : @make -C libowlps purge @make -C libowlps-client purge @make -C owlps-client purge @make -C owlps-listener purge @make -C owlps-aggregator purge @make -C owlps-positioning purge ## Help ## help : @echo "Needed libraries:" @echo " libiw-dev" @echo " libpcap0.8-dev" @echo " libconfuse-dev" @echo " libboost-dev" @echo " libboost-program-options-dev" @echo @echo "Targets:" @echo " all (default target): Compile all the modules." @echo " : Compile only the given module (and its \ dependencies)." @echo @echo " install: Install all the modules." @echo " install-: Install only the given module (and its \ dependencies)." @echo @echo " uninstall: Remove all the modules." @echo " uninstall-: Remove only the given module (and its \ dependencies)." @echo @echo " clean: Remove temporary files." @echo " purge: Remove compiled programs as well as temporary files." @echo @echo "Note: Files are installed under /usr/local. Tune the PREFIX \ variable in the Makefile to change that."