Changeset 343

Show
Ignore:
Timestamp:
07/22/06 04:28:26 (2 years ago)
Author:
tg
Message:

move off everything which can be done by both BSD and GNU make into vars.mk
and shuffle rules.mk appropriately

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/freewrt/rules.mk

    r341 r343  
    22 
    33include $(TOPDIR)/lbin/prereq.mk 
    4 export BASH HOSTCC HOSTCFLAGS LC_ALL MAKE OStype PATH 
    54include $(TOPDIR)/.config 
    65 
     
    87V=                      5 
    98endif 
    10  
    119 
    1210ifneq ($(V),0) 
     
    4745endif 
    4846 
    49 CP=                     cp -fpR 
    50 INSTALL_DIR=            install -d -m0755 
    51 INSTALL_DATA=           install -m0644 
    52 INSTALL_BIN=            install -m0755 
    53 MAKEFLAGS=              -j$(BR2_JLEVEL) V=$(V) $(EXTRA_MAKEFLAGS) 
    5447# Strip off the annoying quoting 
    5548ARCH:=                  $(strip $(subst ",, $(BR2_ARCH))) 
     
    5750TARGET_OPTIMIZATION:=   $(strip $(subst ",, $(BR2_TARGET_OPTIMIZATION))) 
    5851#"))"))"))"))")) # for vim's broken syntax highlighting :) 
    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  
    9152 
    9253HOST_ARCH:=             $(shell $(HOSTCC) -dumpmachine | sed -e s'/-.*//' \ 
     
    10364                        ) 
    10465 
    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 
     66include $(TOPDIR)/vars.mk 
    13167 
    13268ifeq (${OStype},Linux) 
     
    13672endif 
    13773 
    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 
     74export BASH HOSTCC HOSTCFLAGS LC_ALL MAKE OStype PATH 
     75export UNAME_S UNAME_R UNAME_M 
    15476 
    15577_show: