Fix missing targets for m dist, add fetchers for Jenkins

- We didn't have actual targets for the versions of LK and BL2 that are
DRAM-size specific, so m dist would fail to be able to create them.
- Convert the previous bl2 and lk rules to phony targets called
extract-{bl2/lk}, and create targets for the 1G and 2G versions that
depend on those.
- Add checks for if we're in Jenkins, and fetch the bootloader packages
from the apt pool -- like we do on Enterprise

Change-Id: I94257e8549c7865423696b963f200eefd83b96e5
diff --git a/bootloader.mk b/bootloader.mk
index 7b5b24e..8fe9897 100644
--- a/bootloader.mk
+++ b/bootloader.mk
@@ -18,38 +18,67 @@
 
 include $(ROOTDIR)/build/preamble.mk
 
-bootloader: $(PRODUCT_OUT)/lk.bin $(PRODUCT_OUT)/bl2.img $(PRODUCT_OUT)/fip.bin $(PRODUCT_OUT)/u-boot-env.bin
-lk-bin: $(PRODUCT_OUT)/lk.bin
+fetch-bootloader:
+	$(LOG) bootloader fetch
+	wget -P $(PRODUCT_OUT)/packages \
+		-e robots=off -nv -A deb -r -np -nd \
+		https://mendel-linux.org/apt/$(RELEASE_NAME)-bsp-excelsior/pool/main/l/lk-bootloader/
+	wget -P $(PRODUCT_OUT)/packages \
+		-e robots=off -nv -A deb -r -np -nd \
+		https://mendel-linux.org/apt/$(RELEASE_NAME)-bsp-excelsior/pool/main/e/excelsior-bootloader/
+	$(LOG) bootloader fetch finished
+
+bootloader: $(PRODUCT_OUT)/lk_2G.bin $(PRODUCT_OUT)/bl2_2G.img $(PRODUCT_OUT)/fip.bin $(PRODUCT_OUT)/u-boot-env.bin
 fip-bin: $(PRODUCT_OUT)/fip.bin
-bl2-img: $(PRODUCT_OUT)/bl2.img
 u-boot-env-bin: $(PRODUCT_OUT)/u-boot-env.bin
 
-$(PRODUCT_OUT)/lk.bin: lk-bootloader | out-dirs
+
+$(PRODUCT_OUT)/lk_2G.bin: extract-lk
+$(PRODUCT_OUT)/lk_1G.bin: extract-lk
+ifeq ($(IS_JENKINS),)
+extract-lk: lk-bootloader | out-dirs
+else
+extract-lk: fetch-bootloader | out-dirs
+endif
 	$(LOG) lk.bin extract
 	find $(PRODUCT_OUT)/packages -name 'lk-bootloader*$(USERSPACE_ARCH)*.deb' | xargs \
 	dpkg --fsys-tarfile | \
 	tar --strip-components 2 -C $(PRODUCT_OUT) -xf - --wildcards ./boot/lk_*.bin
 	$(LOG) lk.bin finished
 
+ifeq ($(IS_JENKINS),)
 $(PRODUCT_OUT)/fip.bin: excelsior-bootloader | out-dirs
+else
+$(PRODUCT_OUT)/fip.bin: fetch-bootloader | out-dirs
+endif
 	$(LOG) fip.bin extract
 	find $(PRODUCT_OUT)/packages -name 'excelsior-bootloader*$(USERSPACE_ARCH)*.deb' | xargs \
 	dpkg --fsys-tarfile | \
 	tar --strip-components 2 -C $(PRODUCT_OUT) -xf - ./boot/fip.bin
 	$(LOG) fip.bin finished
 
-$(PRODUCT_OUT)/bl2.img: excelsior-bootloader | out-dirs
+$(PRODUCT_OUT)/bl2_2G.img: extract-bl2
+$(PRODUCT_OUT)/bl2_1G.img: extract-bl2
+ifeq ($(IS_JENKINS),)
+extract-bl2: excelsior-bootloader | out-dirs
+else
+extract-bl2: fetch-bootloader | out-dirs
+endif
 	$(LOG) bl2.img extract
 	find $(PRODUCT_OUT)/packages -name 'excelsior-bootloader*$(USERSPACE_ARCH)*.deb' | xargs \
 	dpkg --fsys-tarfile | \
 	tar --strip-components 2 -C $(PRODUCT_OUT) -xf - --wildcards ./boot/bl2_*.img
 	$(LOG) bl2.img finished
 
+ifeq ($(IS_JENKINS),)
 $(PRODUCT_OUT)/u-boot-env.bin: excelsior-bootloader | out-dirs
+else
+$(PRODUCT_OUT)/u-boot-env.bin: fetch-bootloader | out-dirs
+endif
 	$(LOG) u-boot-env.bin extract
 	find $(PRODUCT_OUT)/packages -name 'excelsior-bootloader*$(USERSPACE_ARCH)*.deb' | xargs \
 	dpkg --fsys-tarfile | \
 	tar --strip-components 2 -C $(PRODUCT_OUT) -xf - ./boot/u-boot-env.bin
 	$(LOG) u-boot-env.bin finished
 
-.PHONY:: bootloader lk-bin fip-bin bl2-img u-boot-env-bin
+.PHONY:: bootloader fip-bin u-boot-env-bin fetch-bootloader extract-bl2 extract-lk