include Makefile.defs .PHONY: all libpf extra clean cleansrc mrproper \ testenv libpf_install extra_install install \ TAGS test local puredata dox all: libpf extra # global clean, because of the dep include clean: $(MAKE) -C tests clean $(MAKE) -C plugins clean rm -rf lib/pf/plugins/*.pfo cd tools && rm -f */*.d */*.d.* */*.o *~ pf/pf console/pf_console cd libpf && rm -f *.d *.d.* *.o *~ libpf.* cd puredata && rm -f *.d *.d.* *.o *~ *.pd_* rm -f *~ mrproper: clean cleansrc rm -f reconfigure packetforth.pc pf-test pf/config.h $(LOG) rm -rf lib/pf/script/*.pf $(SRCDIR)/bin/make-mrproper # build targets testenv: $(MAKE) -C tests clean tests boot: $(MAKE) -C boot all libpf: $(MAKE) -C libpf all puredata: libpf $(MAKE) -C puredata all extra: libpf $(OPTIONAL_EXTRA) $(MAKE) -C tools all $(MAKE) -C plugins all # install targets libpf_install: libpf install -d $(PREFIX)/lib/pkgconfig install -m 644 packetforth.pc $(PREFIX)/lib/pkgconfig 2>>$(LOG) $(MAKE) -C pf install $(MAKE) -C libpf install && ldconfig || echo 'ldconfig failed (not root?)' $(MAKE) -C script install $(MAKE) -C demo install $(MAKE) -C bin install emacs_install: $(MAKE) -C emacs install guile_install: $(MAKE) -C guile install puredata_install: libpf_install $(MAKE) -C puredata install extra_install: extra $(OPTIONAL_EXTRA_INSTALL) $(MAKE) -C tools install $(MAKE) -C plugins install install: all libpf_install extra_install emacs_install guile_install echo installed in $(PREFIX) # note: this removes all traces, so if you have your own scripts installed, too bad.. uninstall: rm -rf $(PREFIX)/lib/pf rm -f $(PREFIX)/lib/libpf.so rm -rf $(PREFIX)/include/pf rm -f $(PREFIX)/lib/pkgconfig/packetforth.pc rm -f $(PDHOME)/extra/pf.pd_* rm -f $(PDHOME)/extra/pf_console.pd_* rm -f $(PDHOME)/doc/5.reference/pf.pd rm -f $(PDHOME)/doc/5.reference/pf2dsp.pd rm -f $(PDHOME)/doc/5.reference/dsp2pf.pd stderr: rm -f build.log ln -s /dev/stderr build.log # misc targets local: all chmod +x bin/* $(SRCDIR)/bin/make-local $(SRCDIR) $(BUILDDIR) test: local ./bin/pf $(SRCDIR)/script/selftest.pf cleandep: rm -f */*.d rm -f */*/*.d DOX=$(BUILDDIR)/doc/html dox: rm -rf $(DOX) $(SRCDIR)/bin/make-doxy $(SRCDIR) $(DOX) debdep: $(SRCDIR)/bin/make-debdep