https://github.com/open-power/op-build
Buildroot overlay for Open Power
https://github.com/open-power/op-build
firmware makefile openpower
Last synced: 4 months ago
JSON representation
Buildroot overlay for Open Power
- Host: GitHub
- URL: https://github.com/open-power/op-build
- Owner: open-power
- License: gpl-2.0
- Created: 2014-07-03T01:01:49.000Z (almost 12 years ago)
- Default Branch: master
- Last Pushed: 2026-01-22T13:17:27.000Z (4 months ago)
- Last Synced: 2026-01-23T05:41:08.218Z (4 months ago)
- Topics: firmware, makefile, openpower
- Language: Makefile
- Size: 11.4 MB
- Stars: 109
- Watchers: 42
- Forks: 179
- Open Issues: 71
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Notice: NOTICE
Awesome Lists containing this project
README
# OpenPOWER Firmware Build Environment
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.
## Documentation
https://open-power.github.io/op-build/
See the doc/ directory for documentation source. Contributions
are *VERY* welcome!
## Development
Issues, Milestones, pull requests and code hosting is on GitHub:
https://github.com/open-power/op-build
See [CONTRIBUTING.md](CONTRIBUTING.md) for howto contribute code.
* Mailing list: openpower-firmware@lists.ozlabs.org
* Info/Subscribe: https://lists.ozlabs.org/listinfo/openpower-firmware
* Archives: https://lists.ozlabs.org/pipermail/openpower-firmware/
## Building an image
To build an image for a Blackbird system:
```
git clone --recursive https://github.com/open-power/op-build.git
cd op-build
./op-build blackbird_defconfig && ./op-build
```
There are also default configurations for other platforms in
`openpower/configs/`. 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 8.4 (or later), and
a handful of other packages (see below).
### Dependencies for *64-bit* Ubuntu/Debian systems
1. Install Ubuntu 22.04 or Debian 12 (x86_64 or ppc64le).
2. Enable Universe (Ubuntu only):
sudo apt-get install software-properties-common
sudo add-apt-repository universe
3. Install the packages necessary for the build:
sudo apt-get install cscope universal-ctags libz-dev libexpat-dev \
python2 python-is-python3 language-pack-en texinfo gawk cpio xxd \
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
### Dependencies for *64-bit* Fedora systems
1. Install Fedora 33 (x86_64 or ppc64le).
2. 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(bigint)" "perl(XML::Simple)" \
"perl(YAML)" "perl(XML::SAX)" "perl(Fatal)" "perl(Thread::Queue)" \
"perl(Env)" "perl(XML::LibXML)" "perl(Digest::SHA1)" "perl(ExtUtils::MakeMaker)" \
"perl(FindBin)" "perl(English)" "perl(Time::localtime)" "perl(open)" \
libxml2-devel which wget unzip tar cpio python bzip2 bc findutils ncurses-devel \
openssl-devel make libxslt vim-common lzo-devel python2 rsync hostname