summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMartin Whitaker <mageia@martin-whitaker.me.uk>2018-03-02 23:30:01 +0000
committerMartin Whitaker <mageia@martin-whitaker.me.uk>2018-03-02 23:30:01 +0000
commitdaeb5cc5842cf1b9fb85e8c7972f2923350c5cc7 (patch)
tree4d47eb73c57f5e6882c758fdc7b960c7f0f9a3d3
parentc6f1fbe1557b473ff287f24813fd160ade04964f (diff)
downloaddraklive-config-daeb5cc5842cf1b9fb85e8c7972f2923350c5cc7.tar
draklive-config-daeb5cc5842cf1b9fb85e8c7972f2923350c5cc7.tar.gz
draklive-config-daeb5cc5842cf1b9fb85e8c7972f2923350c5cc7.tar.bz2
draklive-config-daeb5cc5842cf1b9fb85e8c7972f2923350c5cc7.tar.xz
draklive-config-daeb5cc5842cf1b9fb85e8c7972f2923350c5cc7.zip
Add support for 32-bit EFI.
-rwxr-xr-xbuild_all.sh2
-rwxr-xr-xbuild_one.sh9
-rw-r--r--config/build.cfg7
-rwxr-xr-xupdate_bootloader_files.sh15
4 files changed, 24 insertions, 9 deletions
diff --git a/build_all.sh b/build_all.sh
index 2d3d222..078cd04 100755
--- a/build_all.sh
+++ b/build_all.sh
@@ -10,8 +10,8 @@ desktops[i586]="Xfce"
desktops[x86_64]="GNOME Plasma Xfce"
-./update_bootloader_files.sh
for arch in $archs; do
+ ./update_bootloader_files.sh $arch
for desktop in ${desktops[$arch]}; do
sudo -u draklive sudo /usr/sbin/draklive --clean --all --define arch=$arch --define desktop=$desktop
sudo -u bcd mkdir -p /home/bcd/public_html/isos/trial-builds/Mageia-${release}-LiveDVD-${desktop}-${arch}-DVD
diff --git a/build_one.sh b/build_one.sh
index f71e1c1..be6bac9 100755
--- a/build_one.sh
+++ b/build_one.sh
@@ -1,5 +1,12 @@
#!/bin/sh
-./update_bootloader_files.sh
+arch=$(grep arch config/settings.cfg | sed s/arch=//)
+for arg in $*; do
+ value=${arg#arch=}
+ if [ $value != $arg ]; then
+ arch=$value
+ fi
+done
+./update_bootloader_files.sh $arch
draklive='perl -I ../drakiso/lib ../drakiso/draklive'
if [ $# -gt 0 ] ; then
$draklive $*
diff --git a/config/build.cfg b/config/build.cfg
index c0c9cc2..97373b2 100644
--- a/config/build.cfg
+++ b/config/build.cfg
@@ -433,7 +433,12 @@ my $_l = {
],
mbr_boot_img => 'bootloader/images/boot_hybrid.img',
eltorito_img => 'bootloader/images/eltorito.img',
- bootx64_efi => 'bootloader/images/bootx64.efi',
+ if_($arch eq 'i586',
+ boot_efi => 'bootloader/images/bootia32.efi'
+ ),
+ if_($arch eq 'x86_64',
+ boot_efi => 'bootloader/images/bootx64.efi'
+ ),
},
mount => MGA::DrakISO::Mounts::volatile_squash_union($use_modules),
};
diff --git a/update_bootloader_files.sh b/update_bootloader_files.sh
index 6cfdd8b..fb66e7b 100755
--- a/update_bootloader_files.sh
+++ b/update_bootloader_files.sh
@@ -1,18 +1,21 @@
#!/bin/sh
repository=$(grep repository config/settings.cfg | sed s/repository=//)
-echo "Fetching bootloader files from $repository"
+if [ $# -eq 0 ]; then
+ arch=$(grep arch config/settings.cfg | sed s/arch=//)
+else
+ arch=$1
+fi
+echo "Fetching $arch bootloader files from $repository"
# Remove old files
rm -rf bootloader
-# The 64-bit packge contains everything we need. The non-UEFI grub2 images
-# are built for i386, and everything else should be architecture-independent
-path=`ls -1v $repository/x86_64/media/core/{release,updates}/drakiso-bootloader-files*.rpm 2> /dev/null | tail -1`
+path=`ls -1v $repository/$arch/media/core/{release,updates}/drakiso-bootloader-files*.rpm 2> /dev/null | tail -1`
if [ -z $path ] ; then
- echo "ERROR: couldn't find drakiso-bootloader-files RPM in $repository."
+ echo "ERROR: couldn't find $arch drakiso-bootloader-files RPM in $repository."
exit 1
else
- echo "Extracting bootloader files from repository."
+ echo "Extracting $arch bootloader files from repository."
rpm2cpio $path | cpio -idm --quiet
if [ $? -ne 0 ] ; then
echo "ERROR: failed to extract files from archive."