1 | # |
---|
2 | # top level directory for RTEMS build tree |
---|
3 | # |
---|
4 | # Modified by Jiri to implement autoconf and cygnus one-tree build |
---|
5 | # |
---|
6 | |
---|
7 | @SET_MAKE@ |
---|
8 | srcdir = @srcdir@ |
---|
9 | prefix = @prefix@ |
---|
10 | exec_prefix = @exec_prefix@ |
---|
11 | bindir = @bindir@ |
---|
12 | libdir = @libdir@ |
---|
13 | includedir = @includedir@ |
---|
14 | target = @target@ |
---|
15 | manext = 1 |
---|
16 | mandir = @mandir@/man$(manext) |
---|
17 | program_prefix = @program_prefix@ |
---|
18 | |
---|
19 | |
---|
20 | VPATH=@srcdir@ |
---|
21 | |
---|
22 | CFLAGS = @CFLAGS@ |
---|
23 | CPPFLAGS = @CPPFLAGS@ |
---|
24 | DEFS = @DEFS@ |
---|
25 | LDFLAGS = |
---|
26 | LIBS = @LIBS@ |
---|
27 | CC_FOR_BUILD = gcc |
---|
28 | |
---|
29 | |
---|
30 | CC_FOR_TARGET = $(program_prefix)gcc |
---|
31 | AS_FOR_TARGET = $(program_prefix)as |
---|
32 | AR_FOR_TARGET = $(program_prefix)ar |
---|
33 | NM_FOR_TARGET = $(program_prefix)nm |
---|
34 | LD_FOR_TARGET = $(program_prefix)ld |
---|
35 | OBJCOPY_FOR_TARGET = $(program_prefix)objcopy |
---|
36 | SIZE_FOR_TARGET = $(program_prefix)size |
---|
37 | |
---|
38 | AWK = @AWK@ |
---|
39 | |
---|
40 | RTEMS_ROOT = @RTEMS_ROOT@ |
---|
41 | RTEMS_HOST = @RTEMS_HOST@ |
---|
42 | PROJECT_ROOT = @PROJECT_ROOT@ |
---|
43 | RTEMS_HAS_POSIX_API = @RTEMS_HAS_POSIX_API@ |
---|
44 | RTEMS_HAS_KA9Q = @RTEMS_HAS_KA9Q@ |
---|
45 | RTEMS_USE_MACROS = @RTEMS_USE_MACROS@ |
---|
46 | RTEMS_USE_GCC272 = @RTEMS_USE_GCC272@ |
---|
47 | RTEMS_LIBC_DIR = @RTEMS_LIBC_DIR@ |
---|
48 | |
---|
49 | ifeq ($(RTEMSBSP),) |
---|
50 | RTEMS_BSP = @RTEMS_BSP@ |
---|
51 | else |
---|
52 | RTEMS_BSP = $(RTEMSBSP) |
---|
53 | endif |
---|
54 | |
---|
55 | include $(RTEMS_ROOT)/make/main.cfg |
---|
56 | |
---|
57 | MTARGETS = all $(TARGET_VARIANTS:%=%_install) $(TARGET_VARIANTS:%=%_all) \ |
---|
58 | clean_wrapup distclean clean_dirs clean_tools install tests clean |
---|
59 | |
---|
60 | .PHONY: clean_modules mlink |
---|
61 | |
---|
62 | EXIT_CMD = exit 1 |
---|
63 | |
---|
64 | # Don't pass flags from previous make - especially NOT CFLAGS |
---|
65 | override MAKEFLAGS= |
---|
66 | |
---|
67 | $(MTARGETS): mlink |
---|
68 | BASEDIR=`pwd`; \ |
---|
69 | for bsp in $(RTEMS_BSP) xxx; \ |
---|
70 | do if [ $$bsp != xxx ] ; then \ |
---|
71 | cd $$BASEDIR; \ |
---|
72 | cmd="cd c; $(MAKE) RTEMS_BSP=$$bsp $(FLAGS_TO_PASS) \ |
---|
73 | RTEMS_CUSTOM=$(RTEMS_ROOT)/make/custom/$$bsp.cfg \ |
---|
74 | INSTALL=$(PROJECT_ROOT)/$$bsp/build-tools/install-if-change \ |
---|
75 | \"CC=$(CC_FOR_TARGET)\" \ |
---|
76 | \"XCFLAGS=$(CFLAGS_FOR_TARGET)\" \ |
---|
77 | \"CC_FOR_BUILD=$(CC_FOR_BUILD)\" \ |
---|
78 | \"AS=$(AS_FOR_TARGET)\" \ |
---|
79 | \"LD=$(LD_FOR_TARGET)\" \ |
---|
80 | \"NM=$(NM_FOR_TARGET)\" \ |
---|
81 | \"AR=$(AR_FOR_TARGET)\" \ |
---|
82 | \"SIZE=$(SIZE_FOR_TARGET)\" \ |
---|
83 | \"OBJCOPY=$(OBJCOPY_FOR_TARGET)\" \ |
---|
84 | \"RTEMS_ROOT=$(RTEMS_ROOT)\" \ |
---|
85 | \"RTEMS_HOST=$(RTEMS_HOST)\" \ |
---|
86 | \"PROJECT_HOME=$(PROJECT_ROOT)/$$bsp\" \ |
---|
87 | \"PROJECT_ROOT=$(PROJECT_ROOT)\" \ |
---|
88 | \"RTEMS_HAS_POSIX_API=$(RTEMS_HAS_POSIX_API)\" \ |
---|
89 | \"RTEMS_HAS_KA9Q=$(RTEMS_HAS_KA9Q)\" \ |
---|
90 | \"RTEMS_USE_MACROS=$(RTEMS_USE_MACROS)\" \ |
---|
91 | \"RTEMS_USE_GCC272=$(RTEMS_USE_GCC272)\" \ |
---|
92 | \"RTEMS_LIBC_DIR=$(RTEMS_LIBC_DIR)\" \ |
---|
93 | \"AWK=$(AWK)\" $@" ; \ |
---|
94 | eval $$cmd || $(EXIT_CMD); \ |
---|
95 | fi; done; |
---|
96 | |
---|
97 | clean_modules: |
---|
98 | rm -f src/Modules/rtems/.moduleavailcache |
---|
99 | rm -f src/Modules/rtems/.moduleavailcachedir |
---|
100 | |
---|
101 | mlink: |
---|
102 | test -d make || ln -s $(RTEMS_ROOT)/make make |
---|
103 | |
---|