diff options
| author | Martin Ridgers <[email protected]> | 2023-02-02 14:42:28 +0100 |
|---|---|---|
| committer | Martin Ridgers <[email protected]> | 2023-02-02 14:55:14 +0100 |
| commit | 995b9371dbd567d0ea77fc969bacccb7cd64dc4f (patch) | |
| tree | 6a4df94026ae8a6018d2a82b549101b4415edd4d /scripts/ue_build_linux/README.md | |
| parent | Fixed symbol resolution error because xmake reverses dependent libraries (diff) | |
| download | zen-995b9371dbd567d0ea77fc969bacccb7cd64dc4f.tar.xz zen-995b9371dbd567d0ea77fc969bacccb7cd64dc4f.zip | |
Scripts to acquire and use UE's Linux toolchain
Diffstat (limited to 'scripts/ue_build_linux/README.md')
| -rwxr-xr-x | scripts/ue_build_linux/README.md | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/scripts/ue_build_linux/README.md b/scripts/ue_build_linux/README.md new file mode 100755 index 000000000..8cd589610 --- /dev/null +++ b/scripts/ue_build_linux/README.md @@ -0,0 +1,31 @@ +# Build Zen with the UE Linux toolchain
+
+This folder contains scripts to build Zen using the UE Linux toolchain. It
+works by using the --sysroot= option to redirect compilers and linkers to find
+headers and libraries. There are a few components involved;
+
+1) get_ue_toolchain.sh <toolchain_dir>
+
+This will download the required components from Perforce and struicture them in
+such a way that they can be used by both vcpkg and xmake when building Zen.
+
+2) ue_build.sh <toolchain_dir> <prog> [args...]
+
+Given the toolchain location downloaded in step (1), this script sets up a
+suitable environment and execs the "prog [args...]". It is expected that this
+is used to invoke xmake to build Zen;
+
+```
+$ scripts/ue_linux_build/ue_build.sh ~/uetools xmake config --mode=debug --vcpkg=~/vcpkg
+$ scripts/ue_linux_build/ue_build.sh ~/uetools xmake build
+```
+
+It is possible that `--toolchain=clang` may be required as a configuration
+option. The ue_build.sh script can also be source into the current shell,,
+although it is worth noting that this has never been tried.
+
+3) clang / clang++
+
+These acts as shims to the binaries in `toolchain_dir`, adding in the required
+command line arguments to use the correct headers and libraries. The ue_build.sh
+script adjusts $PATH appropriately.
|