fix building when host and target systems are same arch
[openwrt.git] / obsolete-buildroot / make / iproute2.mk
index 7a33034..94bed41 100644 (file)
@@ -3,7 +3,10 @@
 # iproute2
 #
 #############################################################
 # iproute2
 #
 #############################################################
+
 IPROUTE2_DIR=$(BUILD_DIR)/iproute2
 IPROUTE2_DIR=$(BUILD_DIR)/iproute2
+IP_IPK_DIR=$(BUILD_DIR)/ip-2.0-ipk
+TC_IPK_DIR=$(BUILD_DIR)/tc-2.0-ipk
 
 #IPROUTE2_SOURCE_URL=ftp://ftp.inr.ac.ru/ip-routing/
 #IPROUTE2_SOURCE=iproute2-2.4.7-now-ss020116-try.tar.gz
 
 #IPROUTE2_SOURCE_URL=ftp://ftp.inr.ac.ru/ip-routing/
 #IPROUTE2_SOURCE=iproute2-2.4.7-now-ss020116-try.tar.gz
@@ -12,6 +15,7 @@ IPROUTE2_DIR=$(BUILD_DIR)/iproute2
 IPROUTE2_SOURCE_URL=http://ftp.debian.org/debian/pool/main/i/iproute/
 IPROUTE2_SOURCE=iproute_20010824.orig.tar.gz
 IPROUTE2_PATCH:=iproute_20010824-8.diff.gz
 IPROUTE2_SOURCE_URL=http://ftp.debian.org/debian/pool/main/i/iproute/
 IPROUTE2_SOURCE=iproute_20010824.orig.tar.gz
 IPROUTE2_PATCH:=iproute_20010824-8.diff.gz
+IPROUTE2_PATCH_2:=iproute2-*.patch
 
 
 $(DL_DIR)/$(IPROUTE2_SOURCE):
 
 
 $(DL_DIR)/$(IPROUTE2_SOURCE):
@@ -20,12 +24,20 @@ $(DL_DIR)/$(IPROUTE2_SOURCE):
 $(DL_DIR)/$(IPROUTE2_PATCH):
        $(WGET) -P $(DL_DIR) $(IPROUTE2_SOURCE_URL)/$(IPROUTE2_PATCH)
 
 $(DL_DIR)/$(IPROUTE2_PATCH):
        $(WGET) -P $(DL_DIR) $(IPROUTE2_SOURCE_URL)/$(IPROUTE2_PATCH)
 
+
 iproute2-source: $(DL_DIR)/$(IPROUTE2_SOURCE) #$(DL_DIR)/$(IPROUTE2_PATCH)
 
 $(IPROUTE2_DIR)/.unpacked: $(DL_DIR)/$(IPROUTE2_SOURCE) #$(DL_DIR)/$(IPROUTE2_PATCH)
        rm -rf $(IPROUTE2_DIR).orig $(IPROUTE2_DIR)
        zcat $(DL_DIR)/$(IPROUTE2_SOURCE) | tar -C $(BUILD_DIR) -xvf -
        #zcat $(DL_DIR)/$(IPROUTE2_PATCH) | patch -p1 -d $(IPROUTE2_DIR)
 iproute2-source: $(DL_DIR)/$(IPROUTE2_SOURCE) #$(DL_DIR)/$(IPROUTE2_PATCH)
 
 $(IPROUTE2_DIR)/.unpacked: $(DL_DIR)/$(IPROUTE2_SOURCE) #$(DL_DIR)/$(IPROUTE2_PATCH)
        rm -rf $(IPROUTE2_DIR).orig $(IPROUTE2_DIR)
        zcat $(DL_DIR)/$(IPROUTE2_SOURCE) | tar -C $(BUILD_DIR) -xvf -
        #zcat $(DL_DIR)/$(IPROUTE2_PATCH) | patch -p1 -d $(IPROUTE2_DIR)
+       $(SOURCE_DIR)/patch-kernel.sh $(IPROUTE2_DIR) $(SOURCE_DIR) $(IPROUTE2_PATCH_2)
+       # fun sed hacks.
+       $(SED) "s:-O2:${TARGET_CFLAGS}:g" $(IPROUTE2_DIR)/Makefile
+ifeq ($(ARCH),i386)
+       @# needed on atleast i386.. however breaks on mipsel
+       $(SED) 's:-I\.\./include-glibc::g' $(IPROUTE2_DIR)/Makefile
+endif
        touch $(IPROUTE2_DIR)/.unpacked
 
 $(IPROUTE2_DIR)/.configured: $(IPROUTE2_DIR)/.unpacked
        touch $(IPROUTE2_DIR)/.unpacked
 
 $(IPROUTE2_DIR)/.configured: $(IPROUTE2_DIR)/.unpacked
@@ -40,18 +52,35 @@ $(IPROUTE2_DIR)/.configured: $(IPROUTE2_DIR)/.unpacked
        touch  $(IPROUTE2_DIR)/.configured
 
 $(IPROUTE2_DIR)/tc/tc: $(IPROUTE2_DIR)/.configured
        touch  $(IPROUTE2_DIR)/.configured
 
 $(IPROUTE2_DIR)/tc/tc: $(IPROUTE2_DIR)/.configured
-       $(MAKE) -C $(IPROUTE2_DIR) KERNEL_INCLUDE=$(LINUX_SOURCE_DIR)/include CC=$(TARGET_CC) AR=$(TARGET_AR)
+       $(MAKE) -C $(IPROUTE2_DIR) $(TARGET_CONFIGURE_OPTS) KERNEL_INCLUDE=$(LINUX_DIR)/include
 
 $(TARGET_DIR)/usr/sbin/tc: $(IPROUTE2_DIR)/tc/tc
 
 $(TARGET_DIR)/usr/sbin/tc: $(IPROUTE2_DIR)/tc/tc
-       # Copy The tc binary
-       cp -af $(IPROUTE2_DIR)/tc/tc $(TARGET_DIR)/usr/sbin/
+       @# Make sure our $(TARGET_DIR)/usr/sbin/ exists.
+       -mkdir -p $(TARGET_DIR)/usr/sbin/
+       @# Copy The tc binary
+       cp -af $(IPROUTE2_DIR)/tc/tc $(TARGET_DIR)/usr/sbin/ && \
+               $(STRIP) $(TARGET_DIR)/usr/sbin/tc
 
 
-iproute2: $(TARGET_DIR)/usr/sbin/tc 
+iproute2: $(TARGET_DIR)/usr/sbin/tc
 
 iproute2-clean:
        $(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(IPROUTE2_DIR) uninstall
        -$(MAKE) -C $(IPROUTE2_DIR) clean
 
 iproute2-dirclean:
 
 iproute2-clean:
        $(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(IPROUTE2_DIR) uninstall
        -$(MAKE) -C $(IPROUTE2_DIR) clean
 
 iproute2-dirclean:
-       rm -rf $(IPROUTE2_DIR)
+       rm -rf $(IPROUTE2_DIR) $(IP_IPK_DIR) $(TC_IPK_DIR)
+       
 
 
+iproute2-ipk:  $(IPROUTE2_DIR)/tc/tc
+       mkdir -p $(IP_IPK_DIR)
+       mkdir -p $(TC_IPK_DIR)
+       cp -a $(OPENWRT_IPK_DIR)/iproute/ip/CONTROL $(IP_IPK_DIR)/CONTROL
+       cp -a $(OPENWRT_IPK_DIR)/iproute/tc/CONTROL $(TC_IPK_DIR)/CONTROL
+       mkdir -p $(IP_IPK_DIR)/usr/sbin
+       mkdir -p $(TC_IPK_DIR)/usr/sbin
+       install -m 755 $(IPROUTE2_DIR)/ip/ip $(IP_IPK_DIR)/usr/sbin/
+       install -m 755 $(IPROUTE2_DIR)/tc/tc $(TC_IPK_DIR)/usr/sbin/
+       $(STRIP) $(IP_IPK_DIR)/usr/sbin/ip
+       $(STRIP) $(TC_IPK_DIR)/usr/sbin/tc
+       cd $(BUILD_DIR); $(IPKG_BUILD) $(IP_IPK_DIR)
+       cd $(BUILD_DIR); $(IPKG_BUILD) $(TC_IPK_DIR)
This page took 0.025613 seconds and 4 git commands to generate.