summary refs log tree commit diff
path: root/externals/Makefile.am
blob: 61122f4ab0f9d5d963cfa29d05031f19db3c18a1 (plain) (blame)
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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
# Berkeley DB

DB = db-4.1.25

$(DB).tar.gz:
	@echo "Nix requires Berkeley DB to build."
	@echo "Please download version 4.1.25 from"
	@echo "  http://www.sleepycat.com/update/snapshot/db-4.1.25.tar.gz"
	@echo "and place it in the externals/ directory."
	false

$(DB): $(DB).tar.gz
	gunzip < $(DB).tar.gz | tar xvf -

have-db:
	$(MAKE) $(DB)
	touch have-db

build-db: have-db
	(pfx=`pwd` && \
	cd $(DB)/build_unix && \
	CC="$(CC)" CXX="$(CXX)" CFLAGS="$(CFLAGS)" CXXFLAGS="$(CXXFLAGS)" \
     ../dist/configure --prefix=$$pfx/inst \
	 --enable-cxx --disable-shared && \
	make && \
	make install)
	touch build-db


# CWI ATerm

ATERM = aterm-2.0.5

$(ATERM).tar.gz:
	@echo "Nix requires the CWI ATerm library to build."
	@echo "Please download version 2.0.5 from"
	@echo "  http://www.cwi.nl/projects/MetaEnv/aterm/aterm-2.0.5.tar.gz"
	@echo "and place it in the externals/ directory."
	false

$(ATERM): $(ATERM).tar.gz
	gunzip < $(ATERM).tar.gz | tar xvf -

have-aterm:
	$(MAKE) $(ATERM)
	touch have-aterm

build-aterm: have-aterm
	(pfx=`pwd` && \
	cd $(ATERM) && \
	CC="$(CC)" ./configure --prefix=$$pfx/inst \
     --with-cflags="-DNDEBUG -DXGC_VERBOSE -DXHASHPEM -DWITH_STATS $(CFLAGS)" && \
	make && \
	make install)
	touch build-aterm


# SDF bundle

SDF2 = sdf2-bundle-1.6

$(SDF2).tar.gz:
	@echo "Nix requires the SDF2 bundle to build."
	@echo "Please download version 1.6 from"
	@echo "  ftp://ftp.stratego-language.org/pub/stratego/sdf2/sdf2-bundle-1.6.tar.gz"
	@echo "and place it in the externals/ directory."
	false

$(SDF2): $(SDF2).tar.gz
	gunzip < $(SDF2).tar.gz | tar xvf -

have-sdf2:
	$(MAKE) $(SDF2)
	touch have-sdf2

build-sdf2: have-sdf2
	(pfx=`pwd` && \
	cd $(SDF2) && \
	CC="$(CC) -pg" ./configure --prefix=$$pfx/inst --with-cflags="$(CFLAGS)" && \
	make && \
	make install)
	touch build-sdf2


all: build-db build-aterm build-sdf2

EXTRA_DIST = $(DB).tar.gz $(ATERM).tar.gz $(SDF2).tar.gz

ext-clean:
	$(RM) -f have-db build-db have-aterm build-aterm have-sdf2 build-sdf2
	$(RM) -rf $(DB) $(ATERM) $(SDF2)