summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile59
-rw-r--r--common/openembedded.mk7
2 files changed, 65 insertions, 1 deletions
diff --git a/Makefile b/Makefile
index 5236c28f12..f13a93373b 100644
--- a/Makefile
+++ b/Makefile
@@ -21,6 +21,9 @@ HOST_FIRMWARE:=$(shell uname -m | sed \
.PHONY: all
all: update build
+.PHONY: prefetch
+prefetch: prefetch-unslung prefetch-openslug prefetch-ucslugc prefetch-optware
+
.PHONY: build
build: build-unslung build-openslug build-ucslugc build-optware
@@ -59,6 +62,62 @@ clobber: clobber-unslung clobber-openslug clobber-ucslugc clobber-optware
distclean: distclean-master distclean-bitbake distclean-openembedded \
distclean-unslung distclean-openslug distclean-ucslugc distclean-optware distclean-releases
+.PHONY: prefetch-unslung
+ifneq ($(HOST_MACHINE),armeb)
+prefetch-unslung: unslung/.configured bitbake/.configured openembedded/.configured
+ ( cd unslung ; ${MAKE} prefetch )
+else
+prefetch-unslung:
+endif
+
+.PHONY: prefetch-openslug
+ifneq ($(HOST_MACHINE),armeb)
+prefetch-openslug: openslug/.configured bitbake/.configured openembedded/.configured
+ ( cd openslug ; ${MAKE} prefetch )
+else
+ifeq ($(HOST_FIRMWARE),OpenSlug)
+prefetch-openslug: openslug/.configured bitbake/.configured openembedded/.configured
+ ( cd openslug ; ${MAKE} prefetch )
+else
+prefetch-openslug:
+endif
+endif
+
+.PHONY: prefetch-ucslugc
+ifneq ($(HOST_MACHINE),armeb)
+prefetch-ucslugc: ucslugc/.configured bitbake/.configured openembedded/.configured
+ ( cd ucslugc ; ${MAKE} prefetch )
+else
+prefetch-ucslugc:
+endif
+
+.PHONY: prefetch-optware
+prefetch-optware: prefetch-optware-nslu2 prefetch-optware-wl500g
+
+.PHONY: prefetch-optware-nslu2
+ifneq ($(HOST_MACHINE),armeb)
+prefetch-optware-nslu2: optware/nslu2/.configured
+ ( cd optware/nslu2 ; ${MAKE} source )
+else
+ifeq ($(HOST_FIRMWARE),Unslung)
+prefetch-optware-nslu2: optware/nslu2/.configured
+ ( cd optware/nslu2 ; ${MAKE} source )
+else
+prefetch-optware-nslu2:
+endif
+endif
+
+.PHONY: prefetch-optware-wl500g
+ifneq ($(HOST_MACHINE),armeb)
+prefetch-optware-wl500g: optware/wl500g/.configured
+ ( cd optware/wl500g ; ${MAKE} source )
+else
+prefetch-optware-wl500g:
+endif
+
+prefetch-openslug-%-beta: releases/OpenSlug-%-beta/.configured
+ ( cd releases/OpenSlug-$*-beta ; ${MAKE} prefetch )
+
.PHONY: unslung build-unslung
ifneq ($(HOST_MACHINE),armeb)
unslung build-unslung: unslung/.configured bitbake/.configured openembedded/.configured
diff --git a/common/openembedded.mk b/common/openembedded.mk
index c23f206122..c4b5d564fe 100644
--- a/common/openembedded.mk
+++ b/common/openembedded.mk
@@ -15,16 +15,21 @@ include conf/auto.conf
BUILD_DIRS = downloads
REQUIRED_DIRS = bitbake openembedded
FIRMWARE_DEPS = create-topdir $(BUILD_DIRS) $(REQUIRED_DIRS)
+BITBAKE = bitbake
# The default rule is to build the firmware in an unprotected environment.
firmware: $(FIRMWARE_DEPS)
- . ./setup-env; exec bitbake $(DISTRO)-packages
+ . ./setup-env; exec ${BITBAKE} $(DISTRO)-packages
# This rule clobbers the environment (note that ccache uses '$HOME' by
# default, so the cache will end up there).
firmware-safe:
env -i HOME="$${HOME}" PATH="$${PATH}" $(MAKE) firmware
+# The default rule is to build the firmware in an unprotected environment.
+prefetch: $(FIRMWARE_DEPS)
+ . ./setup-env; exec ${BITBAKE} -cfetch $(DISTRO)-packages
+
# topdir.conf is re-created automatically if the directory is
# moved - this will cause a full bitbake reparse
.PHONY: create-topdir