Переглянути джерело

- avoid spurious rebuilds. Thanks to janlana, closes #1191
- provide a syslinux-source target while at it

Bernhard Reutner-Fischer 18 роки тому
батько
коміт
3c1f00b21a

+ 7 - 7
package/lzma/lzma.mk

@@ -12,8 +12,8 @@ LZMA_TARGET_DIR:=$(BUILD_DIR)/lzma-$(LZMA_VER)
 LZMA_CFLAGS:=$(TARGET_CFLAGS)
 ifeq ($(BR2_LARGEFILE),y)
 LZMA_CFLAGS+=-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64
-else
 endif
+LZMA_TARGET_BINARY:=bin/lzma
 
 $(DL_DIR)/$(LZMA_SOURCE):
 	$(WGET) -P $(DL_DIR) $(LZMA_SITE)/$(LZMA_SOURCE)
@@ -81,14 +81,14 @@ $(LZMA_TARGET_DIR)/src/lzma/lzma: $(LZMA_TARGET_DIR)/.configured
 	$(MAKE) -C $(LZMA_TARGET_DIR) all
 	touch -c $@
 
-$(TARGET_DIR)/usr/bin/lzma: $(LZMA_TARGET_DIR)/src/lzma/lzma
-	-cp -dpf $(LZMA_TARGET_DIR)/src/lzma/lzma $(TARGET_DIR)/bin/;
-	-$(STRIP) --strip-unneeded $(TARGET_DIR)/bin/lzma
-	touch -c $(TARGET_DIR)/bin/lzma
+$(TARGET_DIR)/$(LZMA_TARGET_BINARY): $(LZMA_TARGET_DIR)/src/lzma/lzma
+	cp -dpf $(LZMA_TARGET_DIR)/src/lzma/lzma $@
+	-$(STRIP) --strip-unneeded $@
+	touch -c $@
 
-#lzma-headers: $(TARGET_DIR)/bin/lzma
+#lzma-headers: $(TARGET_DIR)/$(LZMA_TARGET_BINARY)
 
-lzma-target: uclibc $(TARGET_DIR)/usr/bin/lzma
+lzma-target: uclibc $(TARGET_DIR)/$(LZMA_TARGET_BINARY)
 
 lzma-source: $(DL_DIR)/$(LZMA_SOURCE)
 

+ 6 - 5
target/x86/grub/grub.mk

@@ -27,7 +27,7 @@ GRUB_PATCH_SITE:=http://ftp.debian.org/debian/pool/main/g/grub
 GRUB_CAT:=$(ZCAT)
 GRUB_DIR:=$(BUILD_DIR)/grub-0.97
 GRUB_BINARY:=grub/grub
-GRUB_TARGET_BINARY:=bin/grub
+GRUB_TARGET_BINARY:=sbin/grub
 GRUB_SPLASHIMAGE=$(TOPDIR)/target/x86/grub/splash.xpm.gz
 
 
@@ -93,21 +93,22 @@ $(GRUB_DIR)/.configured: $(GRUB_DIR)/.unpacked
 		--disable-auto-linux-mem-opt \
 		$(GRUB_CONFIG-y) \
 	);
-	touch  $@
+	touch $@
 
 $(GRUB_DIR)/$(GRUB_BINARY): $(GRUB_DIR)/.configured
 	$(MAKE) CC=$(TARGET_CC) -C $(GRUB_DIR)
 
-grub-target_binary: $(GRUB_DIR)/$(GRUB_BINARY)
-	cp $(GRUB_DIR)/$(GRUB_BINARY) $(TARGET_DIR)/sbin/
+$(GRUB_DIR)/.installed: $(GRUB_DIR)/$(GRUB_BINARY)
+	cp $(GRUB_DIR)/$(GRUB_BINARY) $(TARGET_DIR)/$(GRUB_TARGET_BINARY)
 	test -d $(TARGET_DIR)/boot/grub || mkdir -p $(TARGET_DIR)/boot/grub
 	cp $(GRUB_DIR)/stage1/stage1 $(GRUB_DIR)/stage2/*1_5 $(GRUB_DIR)/stage2/stage2 $(TARGET_DIR)/boot/grub/
 ifeq ($(BR2_TARGET_GRUB_SPLASH),y)
 	test -f $(TARGET_DIR)/boot/grub/$(GRUB_SPLASHIMAGE) || \
 		cp $(GRUB_SPLASHIMAGE) $(TARGET_DIR)/boot/grub/
 endif
+	touch $@
 
-grub: grub-target_binary
+grub: uclibc $(GRUB_DIR)/.installed
 
 grub-clean:
 	$(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(GRUB_DIR) uninstall

+ 4 - 2
target/x86/syslinux/syslinux.mk

@@ -34,14 +34,16 @@ SYSLINUX_BIN=$(SYSLINUX_DIR2)/mtools/syslinux
 $(DL_DIR)/$(SYSLINUX_SOURCE):
 	 $(WGET) -P $(DL_DIR) $(SYSLINUX_SITE)/$(SYSLINUX_SOURCE)
 
+syslinux-source: $(DL_DIR)/$(SYSLINUX_SOURCE)
+
 $(SYSLINUX_DIR)/Makefile: $(DL_DIR)/$(SYSLINUX_SOURCE) $(SYSLINUX_PATCH)
 	$(SYSLINUX_CAT) $(DL_DIR)/$(SYSLINUX_SOURCE) | tar -C $(BUILD_DIR) -xvf -
 	toolchain/patch-kernel.sh $(SYSLINUX_DIR) target/x86/syslinux/ \*.patch
-	touch -c $(SYSLINUX_DIR)/Makefile
+	touch -c $@
 
 $(SYSLINUX_DIR)/isolinux.bin: $(SYSLINUX_DIR)/Makefile
 	$(MAKE) -C $(SYSLINUX_DIR)
-	touch -c $(SYSLINUX_DIR)/isolinux.bin
+	touch -c $@
 
 syslinux: $(SYSLINUX_DIR)/isolinux.bin
 

+ 3 - 2
toolchain/gcc/gcc-uclibc-3.x.mk

@@ -292,7 +292,7 @@ endif
 	#
 	touch $@
 
-gcc-target-libs: $(GCC_BUILD_DIR2)/.installed
+$(GCC_BUILD_DIR2)/.libs_installed: $(GCC_BUILD_DIR2)/.installed
 ifeq ($(BR2_GCC_SHARED_LIBGCC),y)
 	# These are in /lib, so...
 	rm -rf $(TARGET_DIR)/usr/lib/libgcc_s*.so*
@@ -311,7 +311,8 @@ ifeq ($(BR2_INSTALL_LIBGCJ),y)
 endif
 
 gcc: uclibc-configured binutils gcc_initial $(LIBFLOAT_TARGET) uclibc \
-	$(GCC_BUILD_DIR2)/.installed gcc-target-libs $(GCC_TARGETS)
+	$(GCC_BUILD_DIR2)/.installed $(GCC_BUILD_DIR2)/.libs_installed \
+	$(GCC_TARGETS)
 
 gcc-source: $(DL_DIR)/$(GCC_SOURCE)