move package/linux into target/linux, use wbx' new kernel code. support building...
[10.03/openwrt.git] / package / sdk / Makefile
1 # $Id$
2
3 include $(TOPDIR)/rules.mk
4
5 PKG_OS:=$(shell uname -s)
6 PKG_CPU:=$(shell uname -m)
7
8 PKG_RELEASE:=1
9 SDK_NAME:=OpenWrt-SDK-$(PKG_OS)-$(PKG_CPU)-$(PKG_RELEASE)
10 IB_NAME:=OpenWrt-ImageBuilder-$(PKG_OS)-$(PKG_CPU)-$(PKG_RELEASE)
11
12 SDK_BUILD_DIR:=$(BUILD_DIR)/$(SDK_NAME)
13 IB_BUILD_DIR:=$(BUILD_DIR)/$(IB_NAME)
14
15 all: compile
16
17 $(BIN_DIR)/$(SDK_NAME).tar.bz2:
18         (cd $(STAGING_DIR); \
19                 rm -rf info man share; \
20                 cd usr; \
21                 rm -rf doc info man share; \
22         )
23         rm -rf $(SDK_BUILD_DIR)
24         mkdir -p $(SDK_BUILD_DIR)/dl $(SDK_BUILD_DIR)/examples $(SDK_BUILD_DIR)/package
25         cp -a $(STAGING_DIR) $(SCRIPT_DIR) $(TOPDIR)/docs $(SDK_BUILD_DIR)/
26         cp -a $(TOPDIR)/package/strace $(TOPDIR)/package/iproute2 $(SDK_BUILD_DIR)/examples
27         cp $(TOPDIR)/rules.mk $(SDK_BUILD_DIR)/
28         cp ./files/Makefile.sdk $(SDK_BUILD_DIR)/Makefile
29         cp ./files/README.SDK $(SDK_BUILD_DIR)/
30         cp ./files/depend.mk $(SDK_BUILD_DIR)/package/
31         egrep '^BR2_(ARCH|WGET|STAGING|JLEVEL|LARGEFILE|TARGET_OPT)' $(TOPDIR)/.config > $(SDK_BUILD_DIR)/.config
32         find $(SDK_BUILD_DIR) -name CVS | xargs rm -rf 
33         (cd $(BUILD_DIR); \
34                 tar cfj $@ $(SDK_NAME); \
35         )
36
37 $(BIN_DIR)/$(IB_NAME).tar.bz2:
38         rm -rf $(IB_BUILD_DIR)
39         mkdir -p $(IB_BUILD_DIR)/build
40         (cd $(BUILD_DIR); \
41                 cp buildroot-kernel-image loader.gz $(IB_BUILD_DIR)/build; \
42         )
43         mkdir -p $(IB_BUILD_DIR)/utils
44         (cd $(STAGING_DIR)/bin; \
45                 cp addpattern trx motorola-bin sed mkfs.jffs2 mksquashfs-lzma $(IB_BUILD_DIR)/utils; \
46         )
47         mkdir -p $(IB_BUILD_DIR)/include
48         mkdir -p $(IB_BUILD_DIR)/packages
49         (cd $(PACKAGE_DIR); \
50                 cp ipkg_* busybox_* kmod-brcm-* kmod-wlcompat* dnsmasq_* iptables_* dropbear_* kmod-diag_* \
51                    wireless-tools_* zlib* bridge_* ppp_* ppp*pppoe* kmod-ppp* openwrt-utils* $(IB_BUILD_DIR)/packages/; \
52         )
53         egrep '^[^(include|prepare|compile|install)]' < $(TOPDIR)/target/jffs2/Makefile > $(IB_BUILD_DIR)/include/jffs2.mk
54         egrep '^[^(include|prepare|compile|install)]' < $(TOPDIR)/target/squashfs-lzma/Makefile > $(IB_BUILD_DIR)/include/squashfs-lzma.mk
55         cp ./files/README.ImageBuilder $(IB_BUILD_DIR)/
56         cp ./files/Makefile.ib $(IB_BUILD_DIR)/Makefile
57         cp -a $(TOPDIR)/target/default/target_skeleton $(IB_BUILD_DIR)/
58         for target_dir in etc jffs dev proc tmp lib usr/lib usr/sbin; do \
59                 mkdir -p $(IB_BUILD_DIR)/target_skeleton/$$target_dir; \
60         done
61         cp -a ./files/sysconf $(IB_BUILD_DIR)/target_skeleton/etc/
62         cp -a $(TARGET_DIR)/lib/*.so* $(IB_BUILD_DIR)/target_skeleton/lib/
63         cp -a $(BUILD_DIR)/libshared/libshared.so $(IB_BUILD_DIR)/target_skeleton/usr/lib/
64         cp -a $(BUILD_DIR)/libnvram/libnvram.so $(IB_BUILD_DIR)/target_skeleton/usr/lib/
65         cp -a $(BUILD_DIR)/libnvram/nvram $(IB_BUILD_DIR)/target_skeleton/usr/sbin/
66         cp -a $(BUILD_DIR)/linksys-wlconf/wlconf $(IB_BUILD_DIR)/target_skeleton/usr/sbin/
67         -$(STRIP) $(IB_BUILD_DIR)/target_skeleton/usr/lib/* $(IB_BUILD_DIR)/target_skeleton/usr/sbin/*
68         ln -sf /tmp/resolv.conf $(IB_BUILD_DIR)/target_skeleton/etc/resolv.conf
69         ln -sf /tmp $(IB_BUILD_DIR)/target_skeleton/var
70         find $(IB_BUILD_DIR) -name CVS | xargs rm -rf 
71         (cd $(BUILD_DIR); \
72                 tar cfj $@ $(IB_NAME); \
73         )
74
75 source:
76 prepare:
77 compile: $(BIN_DIR)/$(SDK_NAME).tar.bz2
78 # FIXME: image builder disabled for now. need to find a way to make it work cleanly with the new kernel structure
79 # $(BIN_DIR)/$(IB_NAME).tar.bz2
80 install:
81
82 clean:
83         rm -rf $(SDK_BUILD_DIR) $(BIN_DIR)/$(SDK_NAME).tar.bz2 $(BIN_DIR)/$(IB_NAME).tar.bz2