About
This project is home for the generation of daily
- LLVM source snapshots
- See generate-snapshot-tarballs workflow
- Fedora LLVM snapshot RPMs
- See fedora-copr-build workflow
Troubleshooting
We also have a Makefile
in case we encounter an error with the snapshots and
want to rebuild locally to fix errors. These are the make targets to choose from:
clone-%
- Clones the upstream-snapshot branch of the given package package (%) into the
buildroot. build-%
- Clones and builds the package (%) and then installs it in the chroot.
init-mock
- Initializes the mock chroot.
build-and-install-%
- For the package (%) an SRPM and an RPM is built and then it is installed in
the chroot. shell
- Opens up a shell to inspect the mock chroot.
install-vim
- Allows you to use vim inside of mock.
clean-mock
- Cleans the mock chroot
clean-buildroot
- Removes the buildroot directory
clean
- Cleans the mock chroot and removes the buildroot.
clean-%
- Removes the buildroot dir for the given package (%).
copr-build-%
- Builds the package (%) in copr by using the tooling used for the automated
snapshot generation. help
- Display this help text.
help-html
- Display this help text as an HTML definition list for better documentation generation
Usage
The LLVM snapshot packages depend on one another. The fastest and independent
package to build is python-lit
. To try out how to build it, you can do:
make init-mock
make build-python-lit
This will initialize the mock environment. Note, that you only have to run this
once and not for every package. The second line clones the upstream-snapshot
branch of the python-lit
package repository into
./buildroot/<yyyymmdd>/python-lit
and starts a build of the package. We build
an SRPM, an RPM and then we install it. This makes the package available to the
next package to be built, e.g. llvm
.
In case you encounter an error when build clang in the official snapshots, you
need llvm
as a build dependency available in the mock environment. You're
options are to run make build-llvm && make build-clang
or you could just run
make build-clang
. Then the llvm version that is needed will be downloaded from
the official Fedora snapshot YUM repository (if it is available there).