summaryrefslogtreecommitdiff
path: root/build.mk
blob: 8a185715189970f9a5cea118be0dd03644a96a24 (plain)
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
# Rules to fetch, build and install external source packages.
#
# TODO:
# - default commands
# - rules for pre-req dependencies
# - rules to build and maintain patches
# 
ARC ?= $(notdir $(URL)) 
DIR ?= $(basename $(basename $(ARC)))

clean:
	rm -rf .install .build .configure .fetch .extract $(DIR)

debug:
	@echo arc: $(ARC)
	@echo dir: $(DIR)

install: .install
build: .build
configure: .configure
extract: .extract
fetch: .fetch

uninstall: .install
	cd $(DIR) && sudo make uninstall
	rm .install

.install: .build
	cd $(DIR) && sudo make install
	touch $@

.build: .configure
	cd $(DIR) && make
	touch $@

.configure: .extract
	cd $(DIR) && ./configure $(CONFIGURE_FLAGS)
	@touch $@

.extract: .fetch
	gunzip < $(ARC) | tar xf -
	@touch $@

.fetch:
	curl -L $(URL) -o $(ARC)
	@touch $@