summaryrefslogtreecommitdiffstats
path: root/make/main.cfg
blob: 0e7e2317f2ea000516f2c594cbff497b636f4217 (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
#
#  $Id$
#
# make/main.cfg
#
#   Make(1) configuration file include'd by all Makefile's
#

#
# Initial target for make(1)
#  Once this is established we can safely include other targets
#  within this make-include file.
#

default_target: all

#
# where things are relative to PROJECT_ROOT; shouldn't need to change,
# but could be overridden in custom files.
#

PROJECT_RELEASE=$(exec_prefix)/$(RTEMS_BSP)
PROJECT_BIN=$(PROJECT_ROOT)/bin
PROJECT_INCLUDE=$(PROJECT_RELEASE)/lib/include
PROJECT_TOOLS = $(PROJECT_RELEASE)/build-tools

## translate VARIANT into VARIANT_V
ifeq ($(VARIANT),)
VARIANT = OPTIMIZE
endif

VARIANT_OPTIMIZE_V = OPTIMIZE
VARIANT_DEBUG_V = DEBUG
VARIANT_optimize_V = OPTIMIZE
VARIANT_debug_V = DEBUG

VARIANT_V = $(VARIANT_$(VARIANT)_V)

## Setup the variant build subdirectory
ARCH_OPTIMIZE_V = o-optimize
ARCH_DEBUG_V = o-debug

ARCH__V = $(ARCH_OPTIMIZE_V)
ARCH = $(ARCH_$(VARIANT_V)_V)

$(ARCH):
	test -d ${ARCH} || mkdir $(ARCH)
#
# Default makefile name
# May be overridden by command line macro assignment
#

MAKEFILE=Makefile

#
# Target variant names
#
TARGET_VARIANTS = optimize debug

#
# Generate list of object directories: o-optimize, o-debug
#
VARIANTS=${TARGET_VARIANTS:%=o-%}

#
# List of "recursion-able" targets for directory Makefiles
#

RECURSE_TARGETS=all depend install \
preinstall-recursive \
$(TARGET_VARIANTS)

ifndef AUTOMAKE
distclean-generic:
	-$(RM) .#* $(CONFIG_CLEAN_FILES)
	-$(RM) -r $(CLOBBER_ADDITIONS)

clean-generic:
	-$(RM) a.out core mon.out gmon.out
	-$(RM) -r $(CLEAN_ADDITIONS)
endif

.PHONY:	$(RECURSE_TARGETS) 
.PHONY: clean-generic
.PHONY: distclean-generic