Diff of /trunk/wharfie/wharfie.mk [r44] .. [r45]  Maximize  Restore

Switch to side-by-side view

--- a/trunk/wharfie/wharfie.mk
+++ b/trunk/wharfie/wharfie.mk
@@ -65,6 +65,23 @@
 test:
 	echo ${FAKEROOT}
 
+#
+# Set version specific system variables for the toolchain
+#
+debian_armhf_%.tar: gcc_postfix=-arm-none-eabi
+debian_armhf_%.tar: libc_postfix=-armhf-cross
+debian_armel_%.tar: gcc_postfix=-arm-none-eabi
+debian_armel_%.tar: libc_postfix=-armhf-cross
+debian_arm64_%.tar: gcc_postfix=-aarch64-linux-gnu
+debian_arm64_%.tar: libc_postfix=-arm64-cross
+
+# stretch changed doesn't support ARM non-eabi anymore, but has more specific ones
+debian_armhf_stretch.tar: gcc_postfix=-arm-linux-gnueabihf
+debian_armel_stretch.tar: gcc_postfix=-arm-linux-gnueabi
+
+# since stretch, ARM supports g++
+debian_armhf_stretch.tar: additional_arch_packages+=g++-arm-linux-gnueabihf
+debian_armel_stretch.tar: additional_arch_packages+=g++-arm-linux-gnueabi
 
 #
 # Debian / ARM Hardfloat
@@ -78,14 +95,15 @@
 	cd $$(basename $@ .tar); ${SUDO} tar -cf "../$@" .
 	${SUDO} rm -R ./$$(basename $@ .tar)
 	echo DEBIAN_VERSION=$* > debian_version.mk
-	echo GCC_POSTFIX=-arm-none-eabi >> debian_version.mk
-	echo LIBC_POSTFIX=-armhf-cross >> debian_version.mk
+	echo GCC_POSTFIX=${gcc_postfix} >> debian_version.mk
+	echo LIBC_POSTFIX=${libc_postfix} >> debian_version.mk
+	echo ADDITIONAL_ARCH_PACKAGES=${additional_arch_packages} >> debian_version.mk
 
 #
 # Debian / ARM EABI
 #
 .PHONY: debian_armel_%.tar
-debian_armel_%.tar: 
+debian_armel_%.tar:
 	-mkdir ./$$(basename $@ .tar)
 	${SUDO} ${DBOOTSTRAP} --arch=armel --variant=minbase --include="${PACKAGES}" $* ./$$(basename $@ .tar) http://ftp.debian.org/debian/
 	(echo "deb http://ftp.debian.org/debian $* main"; \
@@ -93,14 +111,15 @@
 	cd $$(basename $@ .tar); ${SUDO} tar -cf "../$@" .
 	${SUDO} rm -R ./$$(basename $@ .tar)
 	echo DEBIAN_VERSION=$* > debian_version.mk
-	echo GCC_POSTFIX=-arm-none-eabi >> debian_version.mk
-	echo LIBC_POSTFIX=-armel-cross >> debian_version.mk
+	echo GCC_POSTFIX=${gcc_postfix} >> debian_version.mk
+	echo LIBC_POSTFIX=${libc_postfix} >> debian_version.mk
+	echo ADDITIONAL_ARCH_PACKAGES=${additional_arch_packages} >> debian_version.mk
 
 #
 # Debian / ARM64
 #
-.PHONY: debian_armel_%.tar
-debian_arm64_%.tar: 
+.PHONY: debian_arm64_%.tar
+debian_arm64_%.tar:
 	-mkdir ./$$(basename $@ .tar)
 	${SUDO} ${DBOOTSTRAP} --arch=arm64 --variant=minbase --include="${PACKAGES}" $* ./$$(basename $@ .tar) http://ftp.debian.org/debian/
 	(echo "deb http://ftp.debian.org/debian $* main"; \
@@ -108,15 +127,16 @@
 	cd $$(basename $@ .tar); ${SUDO} tar -cf "../$@" .
 	${SUDO} rm -R ./$$(basename $@ .tar)
 	echo DEBIAN_VERSION=$* > debian_version.mk
-	echo GCC_POSTFIX=-aarch64-linux-gnu >> debian_version.mk
-	echo LIBC_POSTFIX=-arm64-cross >> debian_version.mk
+	echo GCC_POSTFIX=${gcc_postfix} >> debian_version.mk
+	echo LIBC_POSTFIX=${libc_postfix} >> debian_version.mk
+	echo ADDITIONAL_ARCH_PACKAGES=${additional_arch_packages} >> debian_version.mk
 
 #
 # Debian x86/amd64...
 # extended for debian_{amd64,i386}_{deb_version}.tar
 # or old format "debian_{deb_version}.tar"
 .PHONY: debian_%.tar
-debian_%.tar: 
+debian_%.tar:
 	$(eval ARCH:=$(if $(word 3,$(subst _, ,$@)),$(word 2,$(subst _, ,$@)),"i386"))
 	$(eval VERSION:=$(if $(word 3,$(subst _, ,$@)),$(basename $(word 3,$(subst _, ,$@))),$(basename $(word 2,$(subst _, ,$@)))))
 	-mkdir ./$$(basename $@ .tar)
@@ -126,8 +146,9 @@
 	cd $$(basename $@ .tar); ${SUDO} tar -cf "../$@" .
 	${SUDO} rm -R ./$$(basename $@ .tar)
 	echo DEBIAN_VERSION=${VERSION} > debian_version.mk
-	echo GCC_POSTFIX= >> debian_version.mk
-	echo LIBC_POSTFIX= >> debian_version.mk
+	echo GCC_POSTFIX=${gcc_postfix} >> debian_version.mk
+	echo LIBC_POSTFIX=${libc_postfix} >> debian_version.mk
+	echo ADDITIONAL_ARCH_PACKAGES=${additional_arch_packages} >> debian_version.mk
 
 -include debian_version.mk
 
@@ -141,7 +162,7 @@
 .PHONY: make_toolchain
 make_toolchain:
 	-mkdir ./debian_toolchain
-	${SUDO} ${DBOOTSTRAP} --arch=amd64 --variant=minbase --include="${ADDITIONAL_TOOLCHAIN_PACKAGES} gcc${GCC_POSTFIX} libc6-dev${LIBC_POSTFIX}" ${DEBIAN_VERSION} ./debian_toolchain http://ftp.debian.org/debian/
+	${SUDO} ${DBOOTSTRAP} --arch=amd64 --variant=minbase --include="${ADDITIONAL_TOOLCHAIN_PACKAGES} gcc${GCC_POSTFIX} libc6-dev${LIBC_POSTFIX} ${ADDITIONAL_ARCH_PACKAGES}" ${DEBIAN_VERSION} ./debian_toolchain http://ftp.debian.org/debian/
 	${SUDO} chroot ./debian_toolchain ldconfig
 	cd debian_toolchain && ${SUDO} tar -cf "../debian_toolchain.tar" .
 	${SUDO} rm -R ./debian_toolchain
@@ -212,6 +233,8 @@
 	 printf "IP: %s (if target is running)\n" $$(ping -c 1 "$${targethostname}" 2>&1 | sed -n '/bytes from/ s,.*(\([^)]*\)).*,\1, p');
 
 clean:
+	rm -f debian_version.mk
+	rm -f debian_*.tar
 	rm -f *.piling.tar *.piling.tar.snar
 	for i in ???????.piling/; do sudo rm -Rf "./$$i"; done
 	for i in ????????.piling/; do sudo rm -Rf "./$$i"; done