a4350564ebb373b9bb1a95c25e414b00e986828f
[openwrt.git] / target / sdk / Makefile
1
2 # Copyright (C) 2006-2008 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7 # $Id$
8
9 include $(TOPDIR)/rules.mk
10 include $(INCLUDE_DIR)/kernel.mk
11 include $(INCLUDE_DIR)/host.mk
12
13 override MAKEFLAGS=
14
15 PKG_OS:=$(shell uname -s)
16 PKG_CPU:=$(shell uname -m)
17
18 SDK_NAME:=OpenWrt-SDK-$(BOARD)-for-$(PKG_OS)-$(PKG_CPU)
19 SDK_BUILD_DIR:=$(BUILD_DIR)/$(SDK_NAME)
20 EXCLUDE_DIRS:=*/ccache */stamp */man */share */stampfiles */info
21
22 all: compile
23
24 $(BIN_DIR)/$(SDK_NAME).tar.bz2: clean
25         mkdir -p $(SDK_BUILD_DIR)/dl $(SDK_BUILD_DIR)/package
26         $(CP) $(INCLUDE_DIR) $(SCRIPT_DIR) $(TOPDIR)/docs $(SDK_BUILD_DIR)/
27         $(TAR) -cf - -C $(TOPDIR) $(foreach exclude,$(EXCLUDE_DIRS),--exclude="$(exclude)") --exclude="staging_dir/$(ARCH)" staging_dir | \
28                 $(TAR) -xf - -C $(SDK_BUILD_DIR)
29         mkdir -p $(SDK_BUILD_DIR)/target/linux
30         $(CP) $(GENERIC_PLATFORM_DIR) $(PLATFORM_DIR) $(SDK_BUILD_DIR)/target/linux/
31         rm -rf \
32                 $(SDK_BUILD_DIR)/target/linux/*/files \
33                 $(SDK_BUILD_DIR)/target/linux/*/patches
34         $(CP) \
35                 $(TOPDIR)/feeds.conf.default \
36                 $(TOPDIR)/rules.mk \
37                 $(TOPDIR)/.config \
38                 ./files/Makefile \
39                 ./files/README.SDK \
40                 $(SDK_BUILD_DIR)/
41         $(CP) \
42                 ./files/package/rules.mk \
43                 $(TOPDIR)/package/Makefile \
44                 $(SDK_BUILD_DIR)/package/
45         echo REVISION:="$(REVISION)" > $(SDK_BUILD_DIR)/include/version.mk
46         find $(SDK_BUILD_DIR) -name .git | $(XARGS) rm -rf
47         find $(SDK_BUILD_DIR) -name .svn | $(XARGS) rm -rf
48         find $(SDK_BUILD_DIR) -name CVS | $(XARGS) rm -rf
49         (cd $(BUILD_DIR); \
50                 tar cfj $@ $(SDK_NAME); \
51         )
52
53 download:
54 prepare:
55 compile: $(BIN_DIR)/$(SDK_NAME).tar.bz2
56 install: compile
57
58 clean:
59         rm -rf $(SDK_BUILD_DIR) $(BIN_DIR)/$(SDK_NAME).tar.bz2