Makefile (1001B)
1 # Unison file synchronizer: Makefile 2 # See LICENSE for terms. 3 4 # IMPORTANT! 5 # 6 # This file is portable and compatible with GNU Make, BSD make, Solaris 7 # (d)make and NMAKE. Do not make any changes in this file unless you are 8 # certain that the changes do not break this portability. 9 10 default: all 11 .PHONY: default 12 13 # Sub-makefiles are perfectly fine for parallel builds. 14 # This makefile is not, due to recursive invocations of make. 15 .NOTPARALLEL: 16 17 .PHONY: all 18 all: src manpage 19 20 .PHONY: src 21 src: FRC 22 cd src && $(MAKE) 23 FRC: ; 24 # Not all make seem to work without FRC, even with .PHONY 25 26 .PHONY: tui gui macui fsmonitor manpage docs clean depend 27 tui gui macui fsmonitor manpage docs clean depend: 28 cd src && $(MAKE) $@ 29 30 .PHONY: test 31 test: 32 ocaml src/make_tools.ml run ./src/unison -ui text -selftest 33 # Note: unison binary is not built automatically for the test target, 34 # so as to avoid building it with unwanted configuration. 35 36 prefix = /usr/local 37 38 .PHONY: install 39 install: 40 ocaml src/make_tools.ml install