commit | d1cd8c50ae776c4e81d5a607e6d6a40488ba2312 | [log] [tgz] |
---|---|---|
author | Klaus Heinrich Kiwi <klaus@linux.vnet.ibm.com> | Thu Feb 27 12:43:47 2020 -0300 |
committer | Klaus Heinrich Kiwi <klaus@linux.vnet.ibm.com> | Mon Mar 02 00:35:19 2020 -0300 |
tree | 58badb538b86633e0874dd04b11cc9fd12312e0c | |
parent | 6363bfe52b27ecc404d79185b84e1cd9bf00ed29 [diff] |
Petitboot: Carry build-time fixes from upstream Some upstream fixes are still not available as a release after 1.10.4, add them as build-time patches. In support of that, force gettext and autoreconf on petitboot.mk since we're touching Makefile.am files (so that we can build fine) Summary of changes for post 1.10.4 patches: Jeremy Kerr (15): discover/grub2: 'search' set-variable defaults to root discover/grub2: Use getopt for `search` argument parsing discover/grub2: test for (ignored) --no-floppy argument discover/grub2: Add support for UUID and label for 'search' command discover/grub2: expose a struct for grub2 file references discover/grub2: Add parsing code for grub2 file specifiers discover/grub2: add support for grub2-style path specifiers in resources discover/grub2: Allow (device)/path references in general script usage discover/grub2: Add a reference from script to parser discover/grub2: expose internal parse function discover/grub2: make statements_execute non-static discover/grub2: implement 'source' command test/parser: Add test for recent RHCOS grub2 config test/parser: Add RHEL8 grub config test lib/pb-protocol: fix ordering of system info length calculation Maxim Polyakov (3): discover/platform-powerpc: add missing mbox block selector discover/platform-powerpc: limit mailbox response size discover/platform-powerpc: return the actual mailbox size Signed-off-by: Klaus Heinrich Kiwi <klaus@linux.vnet.ibm.com>
The OpenPOWER firmware build process uses Buildroot to create a toolchain and build the various components of the PNOR firmware, including Hostboot, Skiboot, OCC, Petitboot etc.
https://open-power.github.io/op-build/
See the doc/ directory for documentation source. Contributions are VERY welcome!
Issues, Milestones, pull requests and code hosting is on GitHub: https://github.com/open-power/op-build
See CONTRIBUTING.md for howto contribute code.
To build an image for a Palmetto system:
git clone --recursive git@github.com:open-power/op-build.git cd op-build ./op-build palmetto_defconfig && ./op-build
There are also default configurations for other platforms in openpower/configs/
. Current POWER8 platforms include Habanero, Firestone, and Garrison. Current POWER9 platforms include Witherspoon, Boston (p9dsu), Romulus, and Zaius.
Buildroot/op-build supports both native and cross-compilation - it will automatically download and build an appropriate toolchain as part of the build process, so you don't need to worry about setting up a cross-compiler. Cross-compiling from a x86-64 host is officially supported.
The machine your building on will need Python 2.7, GCC 6.2 (or later), and a handful of other packages (see below).
Install Ubuntu (>= 18.04) or Debian (>= 9) 64-bit.
Enable Universe (Ubuntu only):
sudo apt-get install software-properties-common sudo add-apt-repository universe
Install the packages necessary for the build:
sudo apt-get install cscope ctags libz-dev libexpat-dev \ python language-pack-en texinfo \ build-essential g++ git bison flex unzip \ libssl-dev libxml-simple-perl libxml-sax-perl libxml-parser-perl libxml2-dev libxml2-utils xsltproc \ wget bc rsync
Install Fedora (>= 25) 64-bit.
Install the packages necessary for the build:
sudo dnf install gcc-c++ flex bison git ctags cscope expat-devel patch \ zlib-devel zlib-static texinfo perl-bignum "perl(XML::Simple)" \ "perl(YAML)" "perl(XML::SAX)" "perl(Fatal)" "perl(Thread::Queue)" \ "perl(Env)" "perl(XML::LibXML)" "perl(Digest::SHA1)" libxml2-devel \ which wget unzip tar cpio python bzip2 bc findutils ncurses-devel