whisper.cpp/examples
Przemysław Pawełczyk b55b505690
build : do not use _GNU_SOURCE gratuitously (#1129)
* Do not use _GNU_SOURCE gratuitously.

What is needed to build whisper.cpp and examples is availability of
stuff defined in The Open Group Base Specifications Issue 6
(https://pubs.opengroup.org/onlinepubs/009695399/) known also as
Single Unix Specification v3 (SUSv3) or POSIX.1-2001 + XSI extensions,
plus some stuff from BSD that is not specified in POSIX.1.

Well, that was true until NUMA support was added recently in ggml,
so enable GNU libc extensions for Linux builds to cover that.

There is no need to penalize musl libc which simply follows standards.

Not having feature test macros in source code gives greater flexibility
to those wanting to reuse it in 3rd party app, as they can build it with
minimal FTM (_XOPEN_SOURCE=600) or other FTM depending on their needs.

It builds without issues in Alpine (musl libc), Ubuntu (glibc), MSYS2.

* examples : include SDL headers before other headers

Avoid macOS build error when _DARWIN_C_SOURCE is not defined, brought by
SDL2 relying on Darwin extension memset_pattern4/8/16 (from string.h).

* make : enable BSD extensions for DragonFlyBSD to expose RLIMIT_MEMLOCK

* make : use BSD-specific FTMs to enable alloca on BSDs

* make : fix OpenBSD build by exposing newer POSIX definitions

* cmake : follow recent FTM improvements from Makefile
2023-09-07 12:36:14 +03:00
..
addon.node whisper : add integer quantization support (#540) 2023-04-30 18:51:57 +03:00
bench bench : fix Windows linkage by moving ggml benches in whisper lib .. 2023-01-18 21:19:50 +02:00
bench.wasm whisper : add integer quantization support (#540) 2023-04-30 18:51:57 +03:00
command build : do not use _GNU_SOURCE gratuitously (#1129) 2023-09-07 12:36:14 +03:00
command.wasm examples : fix + refactor Levenshtein distance 2023-04-30 19:12:49 +03:00
lsp examples : fix build + compile warnings (close #1256) 2023-09-07 12:33:12 +03:00
main examples : fix build + compile warnings (close #1256) 2023-09-07 12:33:12 +03:00
quantize quantize : fix load vocab crash when len is 128 (#1160) 2023-08-06 11:04:42 +03:00
stream build : do not use _GNU_SOURCE gratuitously (#1129) 2023-09-07 12:36:14 +03:00
stream.wasm whisper : add integer quantization support (#540) 2023-04-30 18:51:57 +03:00
talk build : do not use _GNU_SOURCE gratuitously (#1129) 2023-09-07 12:36:14 +03:00
talk-llama build : do not use _GNU_SOURCE gratuitously (#1129) 2023-09-07 12:36:14 +03:00
talk.wasm ggml : sync (ggml-alloc, GPU, eps, etc.) (#1220) 2023-09-05 13:54:40 +03:00
whisper.android whisper.android : bump gradle plugin and dependencies + a lint pass (#1255) 2023-09-07 12:15:59 +03:00
whisper.nvim examples : vim plugin and LSP server (#1144) 2023-08-27 21:35:06 +03:00
whisper.objc whisper.objc : enable Core ML in example & fix segmentation fault (#910) 2023-05-14 09:47:02 +03:00
whisper.swiftui whisper.swiftui : update README.md (#682) 2023-03-29 23:04:38 +03:00
whisper.wasm whisper : add memory sizes for Q8_0 (close #846) 2023-05-01 10:03:56 +03:00
CMakeLists.txt examples : vim plugin and LSP server (#1144) 2023-08-27 21:35:06 +03:00
common-ggml.cpp ggml : sync latest ggml lib 2023-06-25 14:30:44 +03:00
common-ggml.h whisper : add integer quantization support (#540) 2023-04-30 18:51:57 +03:00
common-sdl.cpp examples : refactor in order to reuse code and reduce duplication (#482) 2023-02-15 19:28:10 +02:00
common-sdl.h examples : refactor in order to reuse code and reduce duplication (#482) 2023-02-15 19:28:10 +02:00
common.cpp examples : fix build + compile warnings (close #1256) 2023-09-07 12:33:12 +03:00
common.h ggml : sync (ggml-alloc, GPU, eps, etc.) (#1220) 2023-09-05 13:54:40 +03:00
dr_wav.h refactoring : move main + stream in examples + other stuff 2022-10-25 20:53:48 +03:00
generate-karaoke.sh minor : add comment for using "generate_karaoke.sh" 2022-11-26 10:22:42 +02:00
helpers.js whisper : add integer quantization support (#540) 2023-04-30 18:51:57 +03:00
livestream.sh livestream.sh : run main with model arg instead of default (#453) 2023-01-27 01:13:31 +02:00
twitch.sh twitch.sh : various fixes and polishing 2022-12-08 19:20:04 +02:00
yt-wsp.sh yt-wsp.sh : print help on empty args 2023-02-18 09:42:31 +02:00