summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xfunctions/defaults.sh24
-rw-r--r--manpages/en/lb_config.12
-rwxr-xr-xscripts/build/chroot_linux-image2
-rwxr-xr-xscripts/build/config12
4 files changed, 28 insertions, 12 deletions
diff --git a/functions/defaults.sh b/functions/defaults.sh
index c48955104..c1ca10258 100755
--- a/functions/defaults.sh
+++ b/functions/defaults.sh
@@ -407,27 +407,27 @@ Set_defaults ()
# Setting linux flavour string
case "${LB_ARCHITECTURES}" in
arm64)
- LB_LINUX_FLAVOURS="${LB_LINUX_FLAVOURS:-arm64}"
+ LB_LINUX_FLAVOURS_WITH_ARCH="${LB_LINUX_FLAVOURS_WITH_ARCH:-arm64}"
;;
armel)
# armel will have special images: one rootfs image and many additional kernel images.
# therefore we default to all available armel flavours
- LB_LINUX_FLAVOURS="${LB_LINUX_FLAVOURS:-marvell}"
+ LB_LINUX_FLAVOURS_WITH_ARCH="${LB_LINUX_FLAVOURS_WITH_ARCH:-marvell}"
;;
armhf)
# armhf will have special images: one rootfs image and many additional kernel images.
# therefore we default to all available armhf flavours
- LB_LINUX_FLAVOURS="${LB_LINUX_FLAVOURS:-armmp armmp-lpae}"
+ LB_LINUX_FLAVOURS_WITH_ARCH="${LB_LINUX_FLAVOURS_WITH_ARCH:-armmp armmp-lpae}"
;;
amd64)
- LB_LINUX_FLAVOURS="${LB_LINUX_FLAVOURS:-amd64}"
+ LB_LINUX_FLAVOURS_WITH_ARCH="${LB_LINUX_FLAVOURS_WITH_ARCH:-amd64}"
;;
i386)
- LB_LINUX_FLAVOURS="${LB_LINUX_FLAVOURS:-686-pae}"
+ LB_LINUX_FLAVOURS_WITH_ARCH="${LB_LINUX_FLAVOURS_WITH_ARCH:-686-pae}"
;;
ia64)
@@ -438,7 +438,7 @@ Set_defaults ()
;;
*)
- LB_LINUX_FLAVOURS="${LB_LINUX_FLAVOURS:-itanium}"
+ LB_LINUX_FLAVOURS_WITH_ARCH="${LB_LINUX_FLAVOURS_WITH_ARCH:-itanium}"
;;
esac
;;
@@ -451,7 +451,7 @@ Set_defaults ()
;;
*)
- LB_LINUX_FLAVOURS="${LB_LINUX_FLAVOURS:-powerpc64 powerpc}"
+ LB_LINUX_FLAVOURS_WITH_ARCH="${LB_LINUX_FLAVOURS_WITH_ARCH:-powerpc64 powerpc}"
;;
esac
;;
@@ -464,7 +464,7 @@ Set_defaults ()
;;
*)
- LB_LINUX_FLAVOURS="${LB_LINUX_FLAVOURS:-s390x}"
+ LB_LINUX_FLAVOURS_WITH_ARCH="${LB_LINUX_FLAVOURS_WITH_ARCH:-s390x}"
;;
esac
;;
@@ -475,6 +475,14 @@ Set_defaults ()
;;
esac
+ LB_LINUX_FLAVOURS=""
+ for FLAVOUR in ${LB_LINUX_FLAVOURS_WITH_ARCH}
+ do
+ ARCH_FILTERED_FLAVOUR="$(echo ${FLAVOUR} | awk -F':' '{print $1}')"
+ LB_LINUX_FLAVOURS="${LB_LINUX_FLAVOURS} ${ARCH_FILTERED_FLAVOUR}"
+ done
+
+
# Set linux packages
LB_LINUX_PACKAGES="${LB_LINUX_PACKAGES:-linux-image}"
diff --git a/manpages/en/lb_config.1 b/manpages/en/lb_config.1
index ac562d209..e46331ec7 100644
--- a/manpages/en/lb_config.1
+++ b/manpages/en/lb_config.1
@@ -360,7 +360,7 @@ sets the eraseblock size for a JFFS2 (Second Journaling Flash File System) files
.IP "\fB\-\-keyring\-packages\fR \fIPACKAGE\fI|""\fIPACKAGES\fR""" 4
sets the keyring package or additional keyring packages. By default this is set to debian\-archive\-keyring.
.IP "\-k|\fB\-\-linux\-flavours\fR \fIFLAVOUR\fR|""\fIFLAVOURS\fR""" 4
-sets the kernel flavours to be installed. Note that in case you specify more than that the first will be configured the default kernel that gets booted.
+sets the kernel flavours to be installed. Note that in case you specify more than that the first will be configured the default kernel that gets booted. Optionally you can use an architecture qualifier, e.g. amd64:amd64. Given an i386 system you can enable amd64 foreign architecture thanks to the commands: "dpkg \-\-add\-architecture amd64 ; apt\-get update". This enables you to use "686 amd64:amd64" as a linux flavour. The amd64 kernel will be installed alongside the i386's 686 kernel.
.IP "\fB\-\-linux\-packages\fR ""\fIPACKAGES\fR""" 4
sets the internal name of the kernel packages naming scheme. If you use debian kernel packages, you will not have to adjust it. If you decide to use custom kernel packages that do not follow the debian naming scheme, remember to set this option to the stub of the packages only (for debian this is linux\-image\-2.6), so that \fISTUB\fR-\fIFLAVOUR\fR results in a valid package name (for debian e.g. linux\-image\-686\-pae). Preferably you use the meta package name, if any, for the stub, so that your configuration is ABI independent. Also don't forget that you have to include stubs of the binary modules packages for unionfs or aufs, and squashfs if you built them out-of-tree.
.IP "\fB\-\-losetup\fR losetup|losetup.orig" 4
diff --git a/scripts/build/chroot_linux-image b/scripts/build/chroot_linux-image
index a96c4e529..e34743c1c 100755
--- a/scripts/build/chroot_linux-image
+++ b/scripts/build/chroot_linux-image
@@ -48,7 +48,7 @@ Create_lockfile .lock
# ;;
#esac
-for FLAVOUR in ${LB_LINUX_FLAVOURS}
+for FLAVOUR in ${LB_LINUX_FLAVOURS_WITH_ARCH}
do
for PACKAGE in ${LB_LINUX_PACKAGES}
do
diff --git a/scripts/build/config b/scripts/build/config
index 6c2ab3b7b..cbf52d015 100755
--- a/scripts/build/config
+++ b/scripts/build/config
@@ -453,7 +453,7 @@ Local_arguments ()
;;
-k|--linux-flavours)
- LB_LINUX_FLAVOURS="${2}"
+ LB_LINUX_FLAVOURS_WITH_ARCH="${2}"
shift 2
;;
@@ -1132,8 +1132,16 @@ LB_INTERACTIVE="${LB_INTERACTIVE}"
LB_KEYRING_PACKAGES="${LB_KEYRING_PACKAGES}"
# \$LB_LINUX_FLAVOURS: set kernel flavour to use
+# This is kept for backwards compatibility
# (Default: autodetected)
-LB_LINUX_FLAVOURS="${LB_LINUX_FLAVOURS}"
+if [ -n "${LB_LINUX_FLAVOURS}" ]
+then
+ LB_LINUX_FLAVOURS_WITH_ARCH="${LB_LINUX_FLAVOURS}"
+fi
+
+# \$LB_LINUX_FLAVOURS_WITH_ARCH: set kernel flavour to use (with arch)
+# (Default: autodetected)
+LB_LINUX_FLAVOURS_WITH_ARCH="${LB_LINUX_FLAVOURS_WITH_ARCH}"
# \$LB_LINUX_PACKAGES: set kernel packages to use
# (Default: autodetected)