xorg-server: fix memory mapped IO for lemote
[openadk.git] / toolchain / Makefile
blobd2f59f8ba65e19f267a9c405be8396adada80947
1 # This file is part of the OpenADK project. OpenADK is copyrighted
2 # material, please see the LICENCE file in the top-level directory.
4 # Steps to build toolchains
5 # 1) build and install binutils
6 # 2) build and install mpfr and gmp
7 # 3) build and install gcc c compiler
8 # 4) install kernel-headers
9 # 5) install libc headers
10 # 6) build and install full gcc
11 # 7) build and install full libc
12 # 8) build and install gdb debugger
14 include $(TOPDIR)/rules.mk
16 TARGETS:=binutils gmp mpfr gcc
17 ifeq ($(ADK_TARGET_LIB_GLIBC),y)
18 TARGETS+=glibc-ports glibc
19 LIBC:=glibc
20 endif
21 ifeq ($(ADK_TARGET_LIB_EGLIBC),y)
22 TARGETS+=eglibc
23 LIBC:=eglibc
24 endif
25 ifeq ($(ADK_TARGET_LIB_UCLIBC),y)
26 TARGETS+=uClibc
27 LIBC:=uClibc
28 endif
29 TARGETS+=gdb
31 DOWNLOAD:=kernel-headers-download $(patsubst %,%-download,$(TARGETS))
32 TARGETS_INSTALL:=$(patsubst %,%-install,$(TARGETS))
33 TARGETS_CLEAN:=$(patsubst %,%-clean,$(TARGETS))
35 all: install
36 install: $(TARGETS_INSTALL)
37 clean: $(TARGETS_CLEAN)
38 download: $(DOWNLOAD)
40 gcc-prepare: binutils-install gmp-install mpfr-install
41 ifeq ($(ADK_TARGET_LIB_GLIBC),y)
42 $(LIBC)-prepare: gcc-prepare kernel-headers-prepare glibc-ports-prepare
43 else
44 $(LIBC)-prepare: gcc-prepare kernel-headers-prepare
45 endif
46 gcc-configure: $(LIBC)-prepare
47 $(LIBC)-compile: gcc-configure
48 gcc-compile: $(LIBC)-install
50 $(STAGING_TOOLS):
51 @mkdir -p $(STAGING_TOOLS)/lib
52 @mkdir -p $(STAGING_TOOLS)/include
53 @mkdir -p $(STAGING_TOOLS)/$(REAL_GNU_TARGET_NAME)
54 @ln -sf ../lib $(STAGING_TOOLS)/$(REAL_GNU_TARGET_NAME)/lib
56 $(TOOLCHAIN_BUILD_DIR):
57 @mkdir -p $(TOOLCHAIN_BUILD_DIR)
59 %-download:
60 $(TRACE) toolchain/$(patsubst %-download,%,$@)/download
61 $(MAKE) -C $(patsubst %-download,%,$@) fetch
63 %-prepare: $(STAGING_TOOLS) $(TOOLCHAIN_BUILD_DIR)
64 $(TRACE) toolchain/$(patsubst %-prepare,%,$@)/prepare
65 @if test x"$(patsubst %-prepare,%,$@)" = x"$(LIBC)"; then \
66 $(MAKE) -C $(patsubst %-prepare,%,$@) prepare \
67 $(MAKE_TRACE); \
68 else \
69 $(MAKE) -C $(patsubst %-prepare,%,$@) prepare \
70 CC='$(HOSTCC)' CFLAGS='$(HOSTCFLAGS)' \
71 $(MAKE_TRACE); \
74 %-configure: %-prepare
75 $(TRACE) toolchain/$(patsubst %-configure,%,$@)/configure
76 @if test x"$(patsubst %-configure,%,$@)" = x"$(LIBC)"; then \
77 $(MAKE) -C $(patsubst %-configure,%,$@) configure \
78 $(MAKE_TRACE); \
79 else \
80 $(MAKE) -C $(patsubst %-configure,%,$@) configure \
81 CC='$(HOSTCC)' CFLAGS='$(HOSTCFLAGS)' \
82 $(MAKE_TRACE); \
85 %-compile: %-configure
86 $(TRACE) toolchain/$(patsubst %-compile,%,$@)/compile
87 @if test x"$(patsubst %-compile,%,$@)" = x"$(LIBC)"; then \
88 $(MAKE) -C $(patsubst %-compile,%,$@) compile \
89 $(MAKE_TRACE); \
90 else \
91 $(MAKE) -C $(patsubst %-compile,%,$@) compile \
92 CC='$(HOSTCC)' CFLAGS='$(HOSTCFLAGS)' \
93 $(MAKE_TRACE); \
96 %-install: %-compile
97 $(TRACE) toolchain/$(patsubst %-install,%,$@)/install
98 @if test x"$(patsubst %-install,%,$@)" = x"$(LIBC)"; then \
99 $(MAKE) -C $(patsubst %-install,%,$@) install \
100 $(MAKE_TRACE); \
101 else \
102 $(MAKE) -C $(patsubst %-install,%,$@) install \
103 CC='$(HOSTCC)' CFLAGS='$(HOSTCFLAGS)' \
104 $(MAKE_TRACE); \
107 %-clean:
108 $(TRACE) toolchain/$(patsubst %-clean,%,$@)/clean
109 @$(MAKE) -C $(patsubst %-clean,%,$@) clean $(MAKE_TRACE)