File: Makefile

package info (click to toggle)
acl2 8.3dfsg-2
  • links: PTS
  • area: main
  • in suites: bullseye
  • size: 309,408 kB
  • sloc: lisp: 3,311,842; javascript: 22,569; cpp: 9,029; ansic: 7,872; perl: 6,501; xml: 3,838; java: 3,738; makefile: 3,383; ruby: 2,633; sh: 2,489; ml: 763; python: 741; yacc: 721; awk: 260; csh: 186; php: 171; lex: 154; tcl: 49; asm: 23; haskell: 17
file content (50 lines) | stat: -rw-r--r-- 1,351 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
# Target "all" is the top target of Makefile-generic.  We avoid
# including Makefile-subdirs or Makefile-psubdirs because we want to
# be sure to control the order: first this directory, then
# subdirectories.

# At one time we had something like this:

# top: all
# 	$(MAKE) all-subdirs
# all-subdirs: ex1 ex2

# However, I (Matt K.) started seeing surprising (to me) dependency
# errors, perhaps due to some change in GNU Make around version 4.1.
# So now I take care to ensure that all books in the current directory
# are certified before certification is attempted in the
# subdirectories and, moreover, those subdirectories are done
# sequentially (to avoid the parallel recertification of
# e.g. apply-prim.lisp in the present directory on behalf of ex1/ and
# ex2/).

ACL2 ?= ../../../saved_acl2
ACL2_SYSTEM_BOOKS ?= ../..

.PHONY: top ex1 ex2 clean-subdirs clean-Makefile-tmp

top: Makefile-tmp
	$(MAKE) -f Makefile-tmp all ACL2_BOOKS_MAKEFILE=Makefile-tmp
	$(MAKE) ex1
	$(MAKE) ex2

Makefile-tmp : Makefile Makefile-deps
	@echo "Making $(PWD)/Makefile-tmp"
	cat Makefile Makefile-deps > Makefile-tmp

include $(ACL2_SYSTEM_BOOKS)/Makefile-generic

ex1:
	cd ex1 ; $(MAKE)

ex2:
	cd ex2 ; $(MAKE)

clean: clean-subdirs clean-Makefile-tmp

clean-Makefile-tmp:
	rm -f Makefile-tmp

clean-subdirs:
	cd ex1 ; $(MAKE) clean
	cd ex2 ; $(MAKE) clean