Commit Graph
5 Commits
Author SHA1 Message Date
Norbert Lange 47355937ad support using an existing clang installation
add an option --host-clang which will skip building llvm,
and instead provide symlinks and wrappers for clang and
llvm tools.

Currently the clang version is detected, but it does not
affect the llvm version that will be downloaded and used.
2024-02-26 00:22:14 +02:00
Norbert Lange 8caf3767a4 attempt to use reproducible timestamps
This sets SOURCE_DATE_EPOCH to the commit timestamp, toolchains
should pick up timestamps from this variable.
The same sources ideally would produce the same binary, see
https://reproducible-builds.org.

Set the timestamps within the tar archives to the start of the
CI pipeline.

Sort the archive contents.
2024-02-13 10:13:54 +02:00
Norbert Lange 45ad09642f improve tar packaging
The generated tar archives contain the uid/gid of the builder,
if unpacked as root on another system those will denote nothing
or an unexpected user/group.

The expectation would be uid/gid = 0.

Use a simple enough tar format as well.

The Mac version of tar (bsdtar?) does not support those flags,
for CI the separate gnu-tar is installed.
2024-02-13 10:13:54 +02:00
Norbert Lange d0a03c46c0 Use CMake's build and install functionality
This allows simplification, this functionality was added long
ago to CMake.

Further motivation is to be able to re-direct the installation,
make/ninja install allow this by setting DESTDIR but this
generally doesnt work well with window paths (see [1]).

[1] - https://cmake.org/cmake/help/latest/envvar/DESTDIR.html#envvar:DESTDIR
2023-09-27 22:53:01 +03:00
Norbert Lange 97cd12a63a Ignore set but empty CORES variable
Change the behavior when the CORES environment variable
is set and empty.
Now `-j` will not be added to make/ninja.
2023-09-27 22:53:01 +03:00