GitXplorerGitXplorer
r

fedora-riscv-autobuild

public
4 stars
1 forks
0 issues

Commits

List of commits on branch master.
Unverified
77a89273b27050dc81f2d5d2d277b482fc11174d

build: Print elapsed time for successful builds.

rrwmjones committed 7 years ago
Unverified
6ccdd4f380c543d4d1bb769495a4fa7b702082ef

Factor out name of the public hosting on fedorapeople.org.

rrwmjones committed 7 years ago
Unverified
d270458617cb1d3ca9530397ac9d97dcb086e5da

build: Allow use of new 4G (smaller) template disk, and make disk size configurable.

rrwmjones committed 7 years ago
Unverified
41e7f41985a088418a6edba33d278083f41239f2

build: Don't fail if general dnf update fails.

rrwmjones committed 7 years ago
Unverified
88524e937cde3f51e67070410c7de78d9b43496e

Remove hack-gcc.

rrwmjones committed 7 years ago
Unverified
d24084e332bafced8173c8476220a09d4d933b52

Define %_topdir when running dnf --builddep.

rrwmjones committed 7 years ago

README

The README file for this repository.

This is the temporary autobuilder for Fedora/RISC-V. It takes source RPMs (SRPMs) from Koji, and also SRPMs that can be supplied locally, and attempts to rebuild them for riscv64 under a qemu emulation. We intend to replace this with kojid once we have built that.

This program will consume huge amounts of CPU and disk space when run. You need an extremely fast multicore machine and lots of disk.

You must edit the configuration in ‘./config’.

How it works

There are several cooperating programs, but the main one is ‘./autobuild’. This picks up SRPMs from $(ROOT)/input and tries to build up to $(NR) of them in parallel.

The SRPMs are picked in alphabetical order, so you can prioritize them by creating numbered directories under $(ROOT)/input, eg. $(ROOT)/input/0000/.src.rpm will be picked before $(ROOT)/input/9000/.src.rpm.

If a particular SRPM builds successfully then the output will be placed in $(ROOT)/SRPMS and $(ROOT)/RPMS. These built RPMs are available for further builds and will be installed into the buildroot of future packages.

Whether or not an SRPM builds or fails to build (the usual case, sadly), logs files are left in $(ROOT)/logs//.

Noarch SRPMs are short-circuited. There is no need to build noarch packages on riscv64, so we just download the result from Fedora Koji and copy it to $(ROOT)/RPMS/noarch/

New Fedora Koji builds are picked up and downloaded into $(ROOT)/input/5000/ by a separate program called ‘./koji-shadow’. This doesn't run automatically, you have to create the input directory and start the program by hand.

Builds are handled by ‘./build $srpmpath’. Builds are done in a temporary directory $(ROOT)/tmp/

$(ROOT)/stage4-disk.img is the base disk image.