source: freewrt/toolchain/Makefile@ 0ea1f3f

freewrt_1_0 freewrt_2_0
Last change on this file since 0ea1f3f was 0ea1f3f, checked in by Waldemar Brodkorb <wbx@…>, 19 years ago
  • add hardware profiles, you can choose between different hardware models
  • add some alsa patches
  • remove default stuff

git-svn-id: svn://www.freewrt.org/trunk/freewrt@157 afb5a338-a214-0410-bd46-81f09a774fd1

  • Property mode set to 100644
File size: 2.4 KB
Line 
1# $Id$
2
3include $(TOPDIR)/rules.mk
4
5BUILD_SED:=sed
6BUILD_SED_DEP:=sed-install
7
8TARGETS:=$(BUILD_SED) binutils gcc uClibc ipkg-utils gdb libnotimpl utils lzma
9
10TARGETS_INSTALL:=$(patsubst %,%-install,$(TARGETS))
11TARGETS_CLEAN:=$(patsubst %,%-clean,$(TARGETS))
12
13all: install
14install: $(TARGETS_INSTALL)
15clean: $(TARGETS_CLEAN)
16
17uClibc-prepare: kernel-headers-prepare $(BUILD_SED_DEP)
18binutils-prepare: uClibc-prepare
19gcc-prepare: binutils-install
20uClibc-compile: gcc-prepare
21gcc-compile: uClibc-install
22
23$(STAGING_DIR):
24 @mkdir -p $(STAGING_DIR)/lib
25 @mkdir -p $(STAGING_DIR)/include
26 @mkdir -p $(STAGING_DIR)/$(REAL_GNU_TARGET_NAME)
27 @ln -sf ../lib $(STAGING_DIR)/$(REAL_GNU_TARGET_NAME)/lib
28
29$(TOOLCHAIN_STAMP_DIR):
30 @mkdir -p $(TOOLCHAIN_STAMP_DIR)
31
32$(TOOLCHAIN_BUILD_DIR):
33 @mkdir -p $(TOOLCHAIN_BUILD_DIR)
34
35%-prepare: $(TOOLCHAIN_STAMP_DIR) $(STAGING_DIR) $(TOOLCHAIN_BUILD_DIR)
36 @[ -f $(TOOLCHAIN_STAMP_DIR)/.toolchain_$@ ] || { \
37 $(TRACE) toolchain/$(patsubst %-prepare,%,$@)/prepare; \
38 ${SET_DASHX}; \
39 if test x"$(patsubst %-prepare,%,$@)" = x"uClibc"; then \
40 $(MAKE) -C $(patsubst %-prepare,%,$@) prepare \
41 $(MAKE_TRACE); \
42 else \
43 $(MAKE) -C $(patsubst %-prepare,%,$@) prepare \
44 CC='$(HOSTCC)' CFLAGS='$(HOSTCFLAGS)' \
45 $(MAKE_TRACE); \
46 fi; \
47 }
48 @touch $(TOOLCHAIN_STAMP_DIR)/.toolchain_$@
49
50%-compile: %-prepare
51 @[ -f $(TOOLCHAIN_STAMP_DIR)/.toolchain_$@ ] || { \
52 $(TRACE) toolchain/$(patsubst %-compile,%,$@)/compile; \
53 ${SET_DASHX}; \
54 if test x"$(patsubst %-compile,%,$@)" = x"uClibc"; then \
55 $(MAKE) -C $(patsubst %-compile,%,$@) compile \
56 $(MAKE_TRACE); \
57 else \
58 $(MAKE) -C $(patsubst %-compile,%,$@) compile \
59 CC='$(HOSTCC)' CFLAGS='$(HOSTCFLAGS)' \
60 $(MAKE_TRACE); \
61 fi; \
62 }
63 @touch $(TOOLCHAIN_STAMP_DIR)/.toolchain_$@
64
65%-install: %-compile
66 @[ -f $(TOOLCHAIN_STAMP_DIR)/.toolchain_$@ ] || { \
67 $(TRACE) toolchain/$(patsubst %-install,%,$@)/install; \
68 ${SET_DASHX}; \
69 if test x"$(patsubst %-install,%,$@)" = x"uClibc"; then \
70 $(MAKE) -C $(patsubst %-install,%,$@) install \
71 $(MAKE_TRACE); \
72 else \
73 $(MAKE) -C $(patsubst %-install,%,$@) install \
74 CC='$(HOSTCC)' CFLAGS='$(HOSTCFLAGS)' \
75 $(MAKE_TRACE); \
76 fi; \
77 }
78 @touch $(TOOLCHAIN_STAMP_DIR)/.toolchain_$@
79
80%-clean:
81 $(TRACE) toolchain/$(patsubst %-clean,%,$@)/clean
82 @$(MAKE) -C $(patsubst %-clean,%,$@) clean $(MAKE_TRACE)
83 @rm -f $(TOOLCHAIN_STAMP_DIR)/.toolchain_$(patsubst %-clean,%,$@)-*
84
Note: See TracBrowser for help on using the repository browser.