[Balloon-svn] r1842 - in balloon/branches/menuconfig2: . dow…

トップ ページ
添付ファイル:
Eメールのメッセージ
+ (text/plain)
このメッセージを削除
このメッセージに返信
著者: subversion@balloonboard.org
日付:  
To: balloon-svn
題目: [Balloon-svn] r1842 - in balloon/branches/menuconfig2: . downloads package/buildroot/patches package/kernel
Author: codehelp
Date: 2012-02-23 17:39:57 +0000 (Thu, 23 Feb 2012)
New Revision: 1842

Added:
balloon/branches/menuconfig2/downloads/
Modified:
balloon/branches/menuconfig2/package/buildroot/patches/Makefile
balloon/branches/menuconfig2/package/kernel/Makefile
Log:
Add a downloads directory support so that it is possible to repeat a specific build without having to re-download tarballs, even if the previous build has been completely cleaned.


Property changes on: balloon/branches/menuconfig2/downloads
___________________________________________________________________
Added: svn:ignore
+ *


Modified: balloon/branches/menuconfig2/package/buildroot/patches/Makefile
===================================================================
--- balloon/branches/menuconfig2/package/buildroot/patches/Makefile    2012-02-23 17:27:30 UTC (rev 1841)
+++ balloon/branches/menuconfig2/package/buildroot/patches/Makefile    2012-02-23 17:39:57 UTC (rev 1842)
@@ -1,6 +1,7 @@
 # Title:    Makefile
 # Purpose:  Makes buildroot rootfs


+DOWNLOADDIR:=$(BUILDDIR)/../downloads/
DISTRODIR:=$(BUILDDIR)/../distro
RES=$(BUILDDIR)/buildroot
BUILD:=$(RES)/buildroot$(BUILDROOTVER)
@@ -66,10 +67,19 @@

 $(RES)/unpacked.stamp:
     mkdir -p $(RES)
+    if [ ! -f $(DOWNLOADDIR)/buildroot$(BUILDROOTVER).tar.bz2 ]; then \
     (cd $(RES) && \
         (wget -N $(RELEASESITE)/sources/buildroot/buildroot$(BUILDROOTVER).tar.bz2 && tar -xjf buildroot$(BUILDROOTVER).tar.bz2) || \
         (wget -N http://buildroot.uclibc.org/downloads/buildroot$(BUILDROOTVER).tar.bz2 && tar -xjf buildroot$(BUILDROOTVER).tar.bz2) \
-    )
+    ) \
+    else \
+        (cd $(RES) && \
+            cp -f $(DOWNLOADDIR)buildroot$(BUILDROOTVER).tar.bz2 . && \
+            tar -xjf buildroot$(BUILDROOTVER).tar.bz2 && \
+            mkdir -p ./buildroot$(BUILDROOTVER)/dl/ && \
+            cp -f $(DOWNLOADDIR)dl/* ./buildroot$(BUILDROOTVER)/dl/ \
+        ) \
+    fi;
     ln -sf `pwd` $(BUILD)/patches
 #    (cd $(BUILD) && rm -rf target/generic/target_skeleton_balloon3_installer \
 #        && ((cp -ar target/generic/target_skeleton target/generic/target_skeleton_balloon3_installer) || true ))
@@ -110,7 +120,7 @@
     (cd $(RES); rm -rf * )
     -(cd $(DISTRODIR)/binaries && rm -rf buildroot)
     -(cd $(DISTRODIR)/sources && rm -rf buildroot)
-    
+
 dist: rootfs source
     install -D  $(RES)/rootfs.* $(DISTRODIR)/binaries/buildroot/



Modified: balloon/branches/menuconfig2/package/kernel/Makefile
===================================================================
--- balloon/branches/menuconfig2/package/kernel/Makefile    2012-02-23 17:27:30 UTC (rev 1841)
+++ balloon/branches/menuconfig2/package/kernel/Makefile    2012-02-23 17:39:57 UTC (rev 1842)
@@ -10,6 +10,8 @@


#TOPLEVELMAKEFILES=$(shell ls $(CHECKOUT)/Makefile.inc $(CHECKOUT)/Makefile.local)

+# directory of pre-downloaded tarballs
+DOWNLOADDIR:=$(BUILDDIR)/../downloads/
 #directory containing source tarballs and final built binaries
 RES:=$(BUILDDIR)/kernel
 #Actual kernel source dir in which build commands are run
@@ -162,7 +164,7 @@
     cp $(BUILD)/vmlinux $(RES)/vmlinuxInitrd
     cp $(BUILD)/arch/arm/boot/zImage $(RES)/zImageInitrd


-# we could make another tarball as below, but currently direct copy of list in initrd build.
+# we could make another tarball as below, but currently direct copy of list in initrd build.
# tar --create --gzip --files-from initrdmodules.list --file initrdmodules.tgz lib)

 #    ( export INSTALL_MOD_PATH=../$(RES)/modules && \
@@ -177,7 +179,7 @@
     tar --create --gzip --file modules.tgz lib )
     mv $(RES)/modules/modules.tgz $(RES)/


-$(RES)/unpacked-$(KERNVER).stamp: 
+$(RES)/unpacked-$(KERNVER).stamp:
     mkdir -p $(RES) $(BUILD)
 # get source from upstream rather than balloonboard.org
 #    (cd $(RES) && wget -N http://kernel.org/pub/linux/kernel/v2.6/linux-$(KERNVER).tar.bz2 \
@@ -198,9 +200,12 @@
 #    (cd $(RES) && \
 #    wget --output-file=android-linux.tar.gz http://android.git.kernel.org/?p=kernel/common.git;a=snapshot;h=762476fa24df17914e1a8fab42e12d59da87539a;sf=tgz \
 #    && tar --extract --gzip --file android-linux.tar.gz) && \
-#    touch $(RES)/unpacked-$(KERNVER).stamp 
+#    touch $(RES)/unpacked-$(KERNVER).stamp


 else
+    if [ -f $(DOWNLOADDIR)/linux-$(KERNVER).tar.bz2 ]; then \
+    cp -f $(DOWNLOADDIR)/linux-$(KERNVER).tar.bz2 $(RES); \
+    fi;
     (cd $(RES) && \
     (test -f linux-$(KERNVER).tar.bz2 || \
     (wget -N $(RELEASESITE)-bad/sources/kernel/linux-$(KERNVER).tar.bz2 || \
@@ -226,6 +231,9 @@


 $(RES)/yaffs-source-$(YAFFSCHECKOUT).stamp: $(RES)/unpacked-$(KERNVER).stamp
 ifeq ($(NEEDS_YAFFS),y)
+    if [ -f $(DOWNLOADDIR)/yaffs-$(YAFFSCHECKOUT).tar.bz2 ]; then \
+    cp -f $(DOWNLOADDIR)/yaffs-$(YAFFSCHECKOUT).tar.bz2 $(RES); \
+    fi;
     ( cd $(RES) && rm -rf yaffs2 && \
     (( test -f $(RES)/yaffs-$(YAFFSCHECKOUT).tar.bz2  && tar --extract --bzip2 --file yaffs-$(YAFFSCHECKOUT).tar.bz2 ) || \
     ( wget -N $(RELEASESITE)/sources/kernel/yaffs-$(YAFFSCHECKOUT).tar.bz2 && \
@@ -237,12 +245,12 @@
         (( [ -e yaffs_vfs_multi.c ] && ./patch-ker.sh c m ../linux-$(KERNVER)) || \
         ./patch-ker.sh c ../linux-$(KERNVER) ) && \
     cd .. && tar -cjf $(RES)/yaffs-$(YAFFSCHECKOUT).tar.bz2 yaffs2 && rm -rf yaffs2) && \
-    touch $(RES)/yaffs-source-$(YAFFSCHECKOUT).stamp 
+    touch $(RES)/yaffs-source-$(YAFFSCHECKOUT).stamp
 else
-    touch $(RES)/yaffs-source-$(YAFFSCHECKOUT).stamp 
+    touch $(RES)/yaffs-source-$(YAFFSCHECKOUT).stamp
 endif


-#this logic needs to change so that quilt.stamp is time of last quilting 
+#this logic needs to change so that quilt.stamp is time of last quilting
 # - if patches/* (or better `quilt series`) has changed then re-quilt
 # need thought - this brute-force will do for now
 #quilt push -a returns 2 if it has done it all already - this is not an error
@@ -274,7 +282,7 @@
     fi
     touch $(RES)/series.stamp


-menuconfig: $(BUILD)/.config 
+menuconfig: $(BUILD)/.config
     $(CROSSOPTS) $(MAKE) -C $(BUILD) menuconfig


 clean:
@@ -301,7 +309,7 @@
     install -D $(BUILD)/.config $(DISTRODIR)/binaries/kernel/config


 $(RES)/yaffs-$(YAFFSCHECKOUT).tar.bz2: $(RES)/yaffs-source-$(YAFFSCHECKOUT).stamp
-    tar --directory $(RES) --create --file $@ yaffs2 
+    tar --directory $(RES) --create --file $@ yaffs2


 source: $(RES)/unpacked-$(KERNVER).stamp $(RES)/yaffs-$(YAFFSCHECKOUT).tar.bz2
     mkdir -p $(DISTRODIR)/sources/kernel/