summaryrefslogtreecommitdiffstats
path: root/make/include/main.rules
blob: b389022f38d7d1c10ca847b3e6066d62dc523c1b (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
## only included using special report targets
ifneq (,$(REPORT))
    include $(PROJECT/)make/include/report.defs
endif

###############################################################################

.PHONY: clean xclean doc report

clean:
xclean: contrib.xclean clean
doc:
report:: report.main report.modules

## legacy
mrproper: xclean

###############################################################################

include $(MODULES:%=$(PROJECT/)%/module.rules)
-include $(PROJECT/)make/variant/$(HOST.system).rules
-include $(PROJECT/)make/variant/$(HOST.system).$(BUILD.machine).rules

###############################################################################

## target which causes re-configure if project-root is svn update'd
$(BUILD/)GNUmakefile: $(wildcard $(PROJECT/).svn/entries)
	$(PROJECT/)configure $(CONF.args)

## target useful to force reconfigure; only helpful for build-system development
.PHONY: reconfigure
reconfigure:
	$(PROJECT/)configure $(CONF.args)

###############################################################################

## target to build all dependency dirs
$(sort $(dir $(BUILD.out))):
	$(MKDIR.exe) -p $@