Repository navigation
Release builds: bindings next to the executable, optional static libyaml - #89
Merged
Merged
Conversation
A released athrill3 runs away from the source tree it was built from: - the bindings directory is ATHRILL_DEVICE_BINDINGS_DIR, else bindings/ next to the executable (macOS _NSGetExecutablePath, Linux /proc/self/exe), else the build-time default. Without any, Athrill stops naming the directory it looked for, as before. - ATHRILL_DEVICE_STATIC_YAML (OFF by default) links libyaml.a, so the binary does not depend on an installed libyaml. Checked: a static build away from the sources runs Zephyr hello_world on nucleo-f767zi (macOS) and the bare-metal hello (Linux, Ubuntu 24.04) with bindings/ beside it, and stops with the directory named without it; otool / ldd show no libyaml; ctest 661/661 on macOS and Linux. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
A released
athrill3did not run away from the source tree it was built from, for two reasons:ATHRILL_DEVICE_BINDINGS_DIRwas set;Change
ATHRILL_DEVICE_BINDINGS_DIR, elsebindings/next to the executable (macOS_NSGetExecutablePath, Linux/proc/self/exe), else the build-time default. Without any of them Athrill still stops and names the directory it looked for.ATHRILL_DEVICE_STATIC_YAML(OFF by default) linkslibyaml.a. The release tarballs of the targets will shipathrill3plusbindings/.Checked
bindings/it stops withbindings directory /nonexistent/bindings not found;bindings/beside it, it runs Zephyr hello_world on nucleo-f767zi (macOS) and the bare-metal hello (Docker Ubuntu 24.04).otool -L/ldd: no libyaml.libyaml.ais built for macOS 14, so a static macOS build targets macOS 14.🤖 Generated with Claude Code