-
Notifications
You must be signed in to change notification settings - Fork 787
pkg(highway): Enable system-integration #6668
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
Checking highway's source, it simply appears that much of the implementation is in the header files and template instantiations. It should be fine that |
6ef176d
to
2c2fd4c
Compare
Please rebase for all the latest build changes, shouldn't be much work. Thank you! |
2c2fd4c
to
868d5af
Compare
I chose to add an import module in the |
868d5af
to
5f19c1a
Compare
I'm going to merge this for now and I defaulted the system integration to true (for packaging). I am suspicious that this will work in practice because I've found each highway version changes the API in ways that its usually pretty tied but we'll see! |
5f19c1a
to
d2ffb7c
Compare
I'm not at the computer but we need to add highway as a package to our Debian 12 test. |
Head branch was pushed to by a user without write access
Updated the Debian 12 build env |
Okay yeah, this is what I expected. The dependency on Debian 12 is too old and the API isn't stable. I'm going to default the system integration to false and packagers who really care can enable it. |
59d2730
to
5184ff5
Compare
Head branch was pushed to by a user without write access
Merged the Nix conflicts and built successfully with it |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think the merge with main was incorrect, it undoes some changes around the Nix files. I can take a look later but can't merge until then.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please rebase your branch so it includes the po/nb_NO.UTF-8.po
file, thanks.
Move bridge.cpp to being a module cSourceFile instead of part of the staticlib Dynamic link against highway with pkg-config name 'libhwy.pc' when system-integrated Expose hwy_supported_targets() from the highway zig module
4b02715
to
5ff4498
Compare
I've taken the patch of the package changes and applied it onto main but left out the |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The changes look much cleaner now, and don't effect irrelevant files.
Support `zig build -fsys=highway`
Looking at the nix config, I've added libhwy to the devshell but not to the package.nix as we've decided not to have highway as a default system integration with |
Move bridge.cpp to being a module cSourceFile instead of part of the staticlib Dynamic link against highway with pkg-config name 'libhwy.pc' when system-integrated
Some concerns:
Running
ldd zig-out/bin/ghostty
after building withzig build -Doptimize=ReleaseFast
does not showlibhwy.so
but is included in debug optimize.hwy::Abort()
.We configure a few optimization related flags (vectorization, constants), ran a quick DOOM-fire and cats and it seems okay
There's a few macro defines for predefined macros (DATE, TIMESTAMP, TIME) that are overrided in the static lib. The comment seems to imply that they are for reproducible binaries so I think it shouldn't change runtime behaviour.