| 59 | | |
|---|
| 60 | | TARGET_CFLAGS:= $(TARGET_OPTIMIZATION) $(TARGET_DEBUGGING) |
|---|
| 61 | | OPTIMIZE_FOR_CPU= $(ARCH) |
|---|
| 62 | | |
|---|
| 63 | | BASE_DIR:= $(TOPDIR) |
|---|
| 64 | | DL_DIR:= $(BASE_DIR)/dl |
|---|
| 65 | | BUILD_DIR:= $(BASE_DIR)/build_$(ARCH)$(ARCH_FPU_SUFFIX) |
|---|
| 66 | | STAGING_DIR:= $(BASE_DIR)/staging_dir_$(ARCH)$(ARCH_FPU_SUFFIX) |
|---|
| 67 | | TOOLCHAIN_BUILD_DIR= $(BASE_DIR)/toolchain_build_$(ARCH)$(ARCH_FPU_SUFFIX) |
|---|
| 68 | | TOOLCHAIN_STAMP_DIR:= $(STAGING_DIR)/stamp |
|---|
| 69 | | TOOLS_DIR= $(BASE_DIR)/tools |
|---|
| 70 | | TOOLS_BUILD_DIR= $(BASE_DIR)/tools_build |
|---|
| 71 | | TOOLS_STAMP_DIR:= $(STAGING_DIR)/stamp |
|---|
| 72 | | SCRIPT_DIR:= $(BASE_DIR)/scripts |
|---|
| 73 | | BIN_DIR:= $(BASE_DIR)/bin |
|---|
| 74 | | LBIN_DIR:= $(BASE_DIR)/lbin |
|---|
| 75 | | PACKAGE_DIR:= $(BIN_DIR)/packages |
|---|
| 76 | | STAMP_DIR:= $(BUILD_DIR)/stamp |
|---|
| 77 | | TARGET_DIR:= $(BUILD_DIR)/root |
|---|
| 78 | | TARGET_PATH= $(LBIN_DIR):$(STAGING_DIR)/usr/bin:$(STAGING_DIR)/bin:$(_PATH) |
|---|
| 79 | | IMAGE:= $(BUILD_DIR)/root_fs_$(ARCH)$(ARCH_FPU_SUFFIX) |
|---|
| 80 | | REAL_GNU_TARGET_NAME= $(OPTIMIZE_FOR_CPU)-linux-uclibc |
|---|
| 81 | | GNU_TARGET_NAME= $(OPTIMIZE_FOR_CPU)-linux |
|---|
| 82 | | KERNEL_CROSS:= $(STAGING_DIR)/bin/$(OPTIMIZE_FOR_CPU)-linux-uclibc- |
|---|
| 83 | | TARGET_CROSS:= $(STAGING_DIR)/bin/$(OPTIMIZE_FOR_CPU)-linux-uclibc- |
|---|
| 84 | | TARGET_CC:= $(TARGET_CROSS)gcc |
|---|
| 85 | | STRIP:= $(STAGING_DIR)/bin/$(OPTIMIZE_FOR_CPU)-linux-uclibc-strip |
|---|
| 86 | | PATCH= $(SCRIPT_DIR)/patch-kernel.sh |
|---|
| 87 | | SED:= $(STAGING_DIR)/bin/sed -i -e |
|---|
| 88 | | LINUX_DIR:= $(BUILD_DIR)/linux |
|---|
| 89 | | LINUX_HEADERS_DIR:= $(TOOLCHAIN_BUILD_DIR)/linux |
|---|
| 90 | | |
|---|
| 105 | | TARGET_CONFIGURE_OPTS= PATH=$(TARGET_PATH) \ |
|---|
| 106 | | AR=$(TARGET_CROSS)ar \ |
|---|
| 107 | | AS=$(TARGET_CROSS)as \ |
|---|
| 108 | | LD=$(TARGET_CROSS)ld \ |
|---|
| 109 | | NM=$(TARGET_CROSS)nm \ |
|---|
| 110 | | CC=$(TARGET_CROSS)gcc \ |
|---|
| 111 | | GCC=$(TARGET_CROSS)gcc \ |
|---|
| 112 | | CXX=$(TARGET_CROSS)g++ \ |
|---|
| 113 | | RANLIB=$(TARGET_CROSS)ranlib |
|---|
| 114 | | |
|---|
| 115 | | # invoke ipkg-build with some default options |
|---|
| 116 | | IPKG_BUILD:= PATH="$(TARGET_PATH)" ipkg-build -c -o 0 -g 0 |
|---|
| 117 | | # where to build (and put) .ipk packages |
|---|
| 118 | | IPKG_TARGET_DIR:= $(PACKAGE_DIR) |
|---|
| 119 | | IPKG:= IPKG_TMP=$(BUILD_DIR)/tmp IPKG_INSTROOT=$(TARGET_DIR) IPKG_CONF_DIR=$(STAGING_DIR)/etc IPKG_OFFLINE_ROOT=$(BUILD_DIR)/root $(SCRIPT_DIR)/ipkg -force-defaults -force-depends |
|---|
| 120 | | IPKG_STATE_DIR:= $(TARGET_DIR)/usr/lib/ipkg |
|---|
| 121 | | |
|---|
| 122 | | RSTRIP:= STRIP="$(STRIP)" $(SCRIPT_DIR)/rstrip.sh |
|---|
| 123 | | RSTRIP_KMOD:= STRIP="$(TARGET_CROSS)strip --strip-unneeded --remove-section=.comment" $(SCRIPT_DIR)/rstrip.sh |
|---|
| 124 | | |
|---|
| 125 | | # XXX derive these from BR2_* vars |
|---|
| 126 | | UNAME_S:= Linux |
|---|
| 127 | | UNAME_R:= 2.4.32 |
|---|
| 128 | | UNAME_M:= mips |
|---|
| 129 | | |
|---|
| 130 | | export UNAME_S UNAME_R UNAME_M |
|---|
| | 66 | include $(TOPDIR)/vars.mk |
|---|
| 138 | | EXTRACT_CMD= mkdir -p ${WRKDIR}; \ |
|---|
| 139 | | cd ${WRKDIR} && \ |
|---|
| 140 | | for file in ${DISTFILES}; do case $$file in \ |
|---|
| 141 | | *.cpio | *.tar) \ |
|---|
| 142 | | tar xf $$file ;; \ |
|---|
| 143 | | *.cpio.Z | *.cpio.gz | *.cgz | *.mcz | \ |
|---|
| 144 | | *.tar.Z | *.tar.gz | *.taz | *.tgz) \ |
|---|
| 145 | | tar xzf $$file ;; \ |
|---|
| 146 | | *.cpio.bz2 | *.cbz | *.tar.bz2 | *.tbz | *.tbz2) \ |
|---|
| 147 | | bzip2 -dc $$file | cpio -mid ;; \ |
|---|
| 148 | | *.zip) \ |
|---|
| 149 | | unzip -d ${WRKDIR} $$file ;; \ |
|---|
| 150 | | *) \ |
|---|
| 151 | | echo "Cannot extract '$$file'" >&2; \ |
|---|
| 152 | | false ;; \ |
|---|
| 153 | | esac; done |
|---|
| | 74 | export BASH HOSTCC HOSTCFLAGS LC_ALL MAKE OStype PATH |
|---|
| | 75 | export UNAME_S UNAME_R UNAME_M |
|---|