diff --git a/lorax.spec b/lorax.spec index 2d22205b..6ff8f4e3 100644 --- a/lorax.spec +++ b/lorax.spec @@ -52,7 +52,7 @@ Requires: redhat-upgrade-dracut-plymouth Requires: syslinux >= 4.02-5 %endif -%ifarch ppc ppc64 +%ifarch ppc ppc64 ppc64le Requires: kernel-bootwrapper Requires: grub2 Requires: grub2-tools diff --git a/share/live/ppc.tmpl b/share/live/ppc.tmpl index 790817af..80c0383d 100644 --- a/share/live/ppc.tmpl +++ b/share/live/ppc.tmpl @@ -51,12 +51,12 @@ install ${configdir}/mapping ${BOOTDIR} install ${configdir}/magic ${BOOTDIR} ## NOTE: PPC is kind of funky. There's three possible "arch" setups here: -## ppc, ppc64, and 'hybrid' (ppc userspace, both ppc & ppc64 kernels). +## ppc, ppc64, ppc64le and 'hybrid' (ppc userspace, both ppc & ppc64 kernels). ## Install kernel and bootloader config (in separate places for each arch) %for kernel in kernels: <% - bits = 64 if kernel.arch == "ppc64" else 32 + bits = 64 if kernel.arch in ("ppc64", "ppc64le") else 32 ## separate dirs/images for each arch KERNELDIR=BOOTDIR+"/ppc%s" % bits NETIMG=NETBOOTDIR+"/ppc%s.img" % bits diff --git a/share/ppc.tmpl b/share/ppc.tmpl index 025f1dff..23f4b082 100644 --- a/share/ppc.tmpl +++ b/share/ppc.tmpl @@ -54,12 +54,12 @@ install ${configdir}/mapping ${BOOTDIR} install ${configdir}/magic ${BOOTDIR} ## NOTE: PPC is kind of funky. There's three possible "arch" setups here: -## ppc, ppc64, and 'hybrid' (ppc userspace, both ppc & ppc64 kernels). +## ppc, ppc64, ppc64le, and 'hybrid' (ppc userspace, both ppc & ppc64 kernels). ## Install kernel and bootloader config (in separate places for each arch) %for kernel in kernels: <% - bits = 64 if kernel.arch == "ppc64" else 32 + bits = 64 if kernel.arch in ("ppc64", "ppc64le") else 32 ## separate dirs/images for each arch KERNELDIR=BOOTDIR+"/ppc%s" % bits NETIMG=NETBOOTDIR+"/ppc%s.img" % bits diff --git a/share/runtime-install.tmpl b/share/runtime-install.tmpl index 86667ab8..0050124d 100644 --- a/share/runtime-install.tmpl +++ b/share/runtime-install.tmpl @@ -32,7 +32,7 @@ installpkg kernel installpkg grub2 grub2-tools biosdevname memtest86+ syslinux installpkg efibootmgr grub2-efi shim shim-unsigned %endif -%if basearch in ("ppc", "ppc64"): +%if basearch in ("ppc", "ppc64", "ppc64le"): installpkg grub2 grub2-tools fbset hfsutils kernel-bootwrapper ppc64-utils %endif %if basearch == "s390x": diff --git a/src/pylorax/__init__.py b/src/pylorax/__init__.py index 0c3f2632..ea517180 100644 --- a/src/pylorax/__init__.py +++ b/src/pylorax/__init__.py @@ -54,9 +54,9 @@ REMOVE_PPC64_DRIVERS = "floppy scsi_debug nouveau radeon cirrus mgag200" REMOVE_PPC64_MODULES = "drm plymouth" class ArchData(DataHolder): - lib64_arches = ("x86_64", "ppc64", "s390x", "ia64", "aarch64") + lib64_arches = ("x86_64", "ppc64", "ppc64le", "s390x", "ia64", "aarch64") bcj_arch = dict(i386="x86", x86_64="x86", - ppc="powerpc", ppc64="powerpc", + ppc="powerpc", ppc64="powerpc", ppc64le="powerpc", arm="arm", armhfp="arm") def __init__(self, buildarch): @@ -299,7 +299,7 @@ class Lorax(BaseLoraxClass): dracut_args = ["--xz", "--install", "/.buildstamp"] # ppc64 cannot boot an initrd > 32MiB so remove some drivers - if self.arch.basearch == "ppc64": + if self.arch.basearch in ("ppc64", "ppc64le"): dracut_args.extend(["--omit-drivers", REMOVE_PPC64_DRIVERS]) dracut_args.extend(["--omit", REMOVE_PPC64_MODULES]) diff --git a/src/pylorax/treebuilder.py b/src/pylorax/treebuilder.py index 0ae1bc36..7924803f 100644 --- a/src/pylorax/treebuilder.py +++ b/src/pylorax/treebuilder.py @@ -35,6 +35,7 @@ templatemap = { 'x86_64': 'x86.tmpl', 'ppc': 'ppc.tmpl', 'ppc64': 'ppc.tmpl', + 'ppc64le': 'ppc.tmpl', 's390': 's390.tmpl', 's390x': 's390.tmpl', 'aarch64': 'aarch64.tmpl', @@ -216,7 +217,7 @@ class TreeBuilder(object): runcmd(cmd, root=self.vars.inroot) # ppc64 cannot boot images > 32MiB, check size and warn - if self.vars.arch.basearch == "ppc64" and os.path.exists(outfile): + if self.vars.arch.basearch in ("ppc64", "ppc64le") and os.path.exists(outfile): st = os.stat(outfile) if st.st_size > 32 * 1024 * 1024: logging.warning("ppc64 initrd %s is > 32MiB", outfile)