Commit Graph

532 Commits

Author SHA1 Message Date
Kovid Goyal
17fe6b3373
Simplify sanitize args 2024-03-01 11:08:51 +05:30
Kovid Goyal
f16c2a0d67
Move checking for compiler brand into Env 2024-02-25 09:57:43 +05:30
Kovid Goyal
29a574a4bc
Prevent duplicate VZEROUPPER instructions 2024-02-25 09:57:43 +05:30
Kovid Goyal
f1fe0bf40a
Code to easily compare SIMD and scalar decode in a live instance
Also remove -mtune=intel as it fails with clang
2024-02-25 09:57:41 +05:30
Kovid Goyal
55c909c656
Use -mtune=intel for SIMD files when building without native optimizations 2024-02-25 09:57:40 +05:30
Kovid Goyal
68d800d4fa
make clean should clean generated asm as well 2024-02-25 09:57:40 +05:30
Kovid Goyal
73342411bc
Dont build any SIMD code when the target is neither ARM64 nor x86/amd64 2024-02-25 09:57:38 +05:30
Kovid Goyal
8dd6f9b07c
Get universal builds working again
Now we use lipo and build individually so we can pass the correct
compiler flags per arch
2024-02-25 09:57:38 +05:30
Kovid Goyal
7e77a196e6
Build only the SIMD code with SIMD compiler flags 2024-02-25 09:57:38 +05:30
Kovid Goyal
465616223c
Drop using the v2 microarch
No significant performance impact and small risk of breakage
2024-02-25 09:57:38 +05:30
Kovid Goyal
4fec11af05
Run dsymutil in post link phase 2024-02-25 09:57:37 +05:30
Kovid Goyal
5a9304e1b8
DRYer 2024-02-25 09:57:37 +05:30
Kovid Goyal
2b9c646c5b
Build dSYM bundles on CI 2024-02-25 09:57:37 +05:30
Kovid Goyal
8762a939c0
Dont specify arch/tune when building universal binary 2024-02-25 09:57:37 +05:30
Kovid Goyal
903dd26a08
Sadly -march=x86-64-v2 is not the culprit for the intermittent SIGILL in macOS CI 2024-02-25 09:57:36 +05:30
Kovid Goyal
a9111f9a40
Try disabling x86-64-v2 on macOS 2024-02-25 09:57:35 +05:30
Kovid Goyal
0bd67620c6
... 2024-02-25 09:57:30 +05:30
Kovid Goyal
73d657a21a
Dont use intel intrinsics switches on ARM 2024-02-25 09:57:29 +05:30
Kovid Goyal
103f5f3956
Move ringbuf into 3rdparty 2024-02-25 09:57:29 +05:30
Kovid Goyal
56dcbca238
Move base64simd into a 3rdparty folder 2024-02-25 09:57:29 +05:30
Kovid Goyal
3d0a90e63d
Switch to SIMD based base64 2024-02-25 09:57:29 +05:30
Kovid Goyal
4790959938
Use -fno-plt
We dont need the PLT and it frees up some registers
2024-02-25 09:57:28 +05:30
Kovid Goyal
33249c872f
Use a better default march for binary builds
x86-64-v2 implies SSE4.2 which should be available everywhere by now. We
will see if we get errors with it.

https://developers.redhat.com/blog/2021/01/05/building-red-hat-enterprise-linux-9-for-the-x86-64-v2-microarchitecture-level#architectural_considerations_for_rhel_9
2024-02-25 09:57:28 +05:30
Kovid Goyal
b032313c45
Only use SIMD if CPU supports it at runtime 2024-02-25 09:57:27 +05:30
Kovid Goyal
4f67b8b433
Need -msse4.2 on non-native builds 2024-02-25 09:57:27 +05:30
Kovid Goyal
859b0cc585
Include -march=native for debug builds 2024-02-25 09:57:26 +05:30
Kovid Goyal
5f809bf249
Get kitty building with the new VT parser 2024-02-25 09:57:22 +05:30
Kovid Goyal
b083ad9038
Start work on bytes based VT parser 2024-02-25 09:57:22 +05:30
Kovid Goyal
a3e324d623
When testing for cf-protection support take env into account 2024-01-21 08:42:55 +05:30
Kovid Goyal
d6116f7426
Fix #7026 2024-01-21 08:33:59 +05:30
Maytham Alsudany
30905db75f
Explicit GO111MODULE=on when getting required Go version 2024-01-19 22:46:48 +08:00
Kovid Goyal
1c72a94b2f
Fix universal build with cf-protection failing 2024-01-15 12:45:55 +05:30
Kovid Goyal
46bb027d14
Fix building on old gcc/clang 2024-01-15 11:23:42 +05:30
Kovid Goyal
d4ff54e0d8
Dont use branch-protection=standard on linux ARM as it reportedly causes crashes
See https://github.com/kovidgoyal/kitty/issues/6845#issuecomment-1835886938
2023-12-01 16:48:30 +05:30
Kovid Goyal
f2075f99fd
More comprehensive is_arm check
Apparently on some Linux machines platform.machine() is 'aarch64' not
'arm64'.
2023-12-01 16:36:34 +05:30
Kovid Goyal
788295e534
Turn on control flow protection build options 2023-12-01 07:36:02 +05:30
Kovid Goyal
2047ea8eec
Allow package build to complete without docs if user chose to skip building kitten 2023-11-12 08:16:26 +05:30
Kovid Goyal
a3c8f32c1a
Fix Linux CI build 2023-11-11 17:36:10 +05:30
Kovid Goyal
0f2196357c
Make mypy happy 2023-11-11 16:07:18 +05:30
Kovid Goyal
2759ec1fe1
Add an option to setup.py to skip building kitten
Fixes #6809
2023-11-11 15:55:56 +05:30
Kovid Goyal
77292a16d6
Make shebangs consistent
Follow PEP 0394 and use /usr/bin/env python so that the python in the
users venv is respected. Not that the kitty python files are meant to be
executed standalone anyway, but, whatever.

Fixes #6810
2023-11-11 08:32:05 +05:30
Kovid Goyal
a9b412baba
Fix a regression that broke kitten update-self
Fixes #6729
2023-10-18 19:19:35 +05:30
Kovid Goyal
56063b96fd
Move gen scripts into their own package 2023-10-14 07:44:18 +05:30
Bernhard M. Wiedemann
50968c12b1
Make build reproducible
This needs 3 fixes:
* for an ordering issue in docs_ref_map_generated.h
* for a filesystem-order issue in uniforms_generated.h
* to normalize mtimes in the data_generated.bin tar

This patch was done while working on reproducible builds for openSUSE.
2023-10-08 04:48:51 +02:00
Kovid Goyal
dda5771ccd
Yet another stupid entry in Info.plist for Apple's security theatre
Fixes #6632
2023-09-18 22:31:52 +05:30
Jeff Pitman
0626c0f5d9 Handles go versions like go1.22-YYYYMMDD-RCXX. 2023-09-10 17:49:24 -07:00
Kovid Goyal
193c2542bd
Make mypy 1.5.0 happy 2023-08-11 08:34:22 +05:30
Kovid Goyal
05373c6e2a
Get the new rsync code building 2023-07-30 19:49:43 +05:30
Kovid Goyal
d485d487ea
Use pkg_config for xxhash flags 2023-07-30 19:49:42 +05:30
Kovid Goyal
fabb6bd8cc
Start work on porting Go rsync implementation to C 2023-07-30 19:49:42 +05:30