summaryrefslogtreecommitdiff
path: root/platform/linuxbsd
AgeCommit message (Collapse)Author
2022-07-27Load fontconfig libraries dynamically.bruvzg
2022-07-27Fix Linux build without fontconfig.bruvzg
2022-07-27Merge pull request #62973 from bruvzg/sysfont_supportRémi Verschelde
2022-07-26Split up editor export code into multiple filesAaron Franke
2022-07-26Merge pull request #63096 from aaronfranke/exp-template-namesRémi Verschelde
2022-07-26Implement support for loading system fonts on Linux, macOS / iOS and Windows.bruvzg
2022-07-25Code quality: Fix header guards consistencyRémi Verschelde
Adds `header_guards.sh` bash script, used in CI to validate future changes. Can be run locally to fix invalid header guards.
2022-07-22Update export template names for Windows, Mac, and LinuxAaron Franke
2022-07-22Merge pull request #63278 from akien-mga/scons-linux-refactor-linkerRémi Verschelde
2022-07-22Merge pull request #63303 from hansemro/x11-eraser-case-insensitiveRémi Verschelde
[X11] Do case-insensitive search for pen inversion detection
2022-07-21[X11] Do case-insensitive search for pen inversion detectionHansem Ro
2022-07-22SCons: Refactor Linux linker options with `linker=<bfd|gold|lld|mold>`Rémi Verschelde
The new option is `linker` and lets the user specify the argument to the`-fuse_ld=` linker flag directly. The supported options are: - `default`: No change, typically uses GNU ld (bfd) unless the user or distro picked a different default `/usr/bin/ld`. - `bfd`: GNU ld from binutils - `gold`: GNU gold from binutils - `lld`: lld from LLVM - `mold`: mold, an extremely fast modern linker, not (yet) intended for use in production but great for development speed. Provided by distro `mold` package or needs to be compiled from source and installed to `/usr` otherwise. Removes the `use_lld=yes` option, and make lld actually usable with GCC too. Not all the above are compatible or recommend for LTO, we recommend using GNU ld with GCC LTO, or lld with LLVM ThinLTO.
2022-07-20Improve `linuxbsd` headless building, cleanup build scriptsRiteo
Now the `linuxbsd` platform can be built headlessly (e.g. without X11 development libraries). I also cleaned up some weird (old?) usages of the `env` variable which seem to make no difference and are used nowhere else.
2022-07-20Remove `-pipe` from `LINKFLAGS`Riteo
For some reason this fixes the CI from going OOM.
2022-07-19Improve DisplayServer.window_set_current_screenbruvzg
Prevent unnecessary fullscreen toggle animation on macOS, when screen is not changed Fix window position on Linux/X11
2022-07-08Add static methods for creating Image and ImageTexturekobewi
2022-07-06Check if GL manager exist to prevent crash when using multithreaded renderer ↵bruvzg
with Vulkan.
2022-07-04Merge pull request #62212 from hansemro/eraser-detect-4Rémi Verschelde
Add inversion/eraser-end property for tablet pens
2022-07-04[macOS, Windows, X11] Add stylus inverted/eraser support toHansem Ro
InputEventMouseMotion event
2022-07-02Fix exit code of --help and --version, and test them in CIJan Haller
Corrects prior regression which caused ERROR output and exit code of 1.
2022-06-30Properly check for fullscreen toggle made through the Window ManagerWilson E. Alvarez
Fixes #40007. Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2022-06-16Adding function key support from F17 to F35gregcsokas
OSX supports everything by default, Linux is also capable of supporting every function key, Windows as I know support only up to F24
2022-06-08Add readable export errors.bruvzg
2022-06-02Remove mouse events that closed the popup from queue, to fix pop-up reopening.bruvzg
2022-05-24[Editor] LinuxBSD export reports Linux as OS name.Fabio Alessandrelli
This is in line with what's reported by the `OS` class on GNU/Linux, and is required by the extension exporter to identify the correct library. For BSD, we should either finish splitting the platform (into platform/bsd) or register a separate exporter with OS name BSD and proper templates detection.
2022-05-20Add a new HashSet templatereduz
* Intended to replace RBSet in most cases. * Optimized for iteration speed
2022-05-16Replace most uses of Map by HashMapreduz
* Map is unnecessary and inefficient in almost every case. * Replaced by the new HashMap. * Renamed Map to RBMap and Set to RBSet for cases that still make sense (order matters) but use is discouraged. There were very few cases where replacing by HashMap was undesired because keeping the key order was intended. I tried to keep those (as RBMap) as much as possible, but might have missed some. Review appreciated!
2022-05-12Basic 3D renderingclayjohn
2022-05-05Crash handler: Use `print_error` to include backtrace in logsRémi Verschelde
2022-05-05Read and store joypad events in a separate thread on x11 platformMarcel Admiraal
2022-05-03Remove `RES` and `REF` typedefs in favor of spelled out `Ref<>`Hugo Locurcio
These typedefs don't save much typing compared to the full `Ref<Resource>` and `Ref<RefCounted>`, yet they sometimes introduce confusion among new contributors.
2022-05-02Style: Partially apply clang-tidy's `cppcoreguidelines-pro-type-member-init`Rémi Verschelde
Didn't commit all the changes where it wants to initialize a struct with `{}`. Should be reviewed in a separate PR. Option `IgnoreArrays` enabled for now to be conservative, can be disabled to see if it proposes more useful changes. Also fixed manually a handful of other missing initializations / moved some from constructors.
2022-04-28[Linux] Disable speech-dispatcher, pulse audio and udev wrapper builds, when ↵bruvzg
library is not found.
2022-04-28Implement text-to-speech support on Android, iOS, HTML5, Linux, macOS and ↵bruvzg
Windows. Implement TextServer word break method.
2022-04-27Merge pull request #56093 from bruvzg/pck_section_loadRémi Verschelde
Improve embedded PCK loading and exporting.
2022-04-27Merge pull request #59979 from bruvzg/cpp_check2Rémi Verschelde
2022-04-27Merge pull request #60523 from akien-mga/linux-pkgconfig-nixosRémi Verschelde
2022-04-27Merge pull request #58272 from bruvzg/x11_backup_screen_infoRémi Verschelde
2022-04-26Linux: Use pkg-config for alsa, libudev and GL tooRémi Verschelde
It's not needed on most distros as those are found in standard lib and include paths, but on NixOS they're all in non-standard prefixes, so we need to rely on information provided by pkg-config. Fixes #59913. Co-authored-by: David Lewis <davidalewis00@gmail.com>
2022-04-20Improve embedded PCK loading and exporting.bruvzg
Windows export process: Limit size of executable with embedded PCK to 4 GB. Use "rcedit" before embedding PCK. Capture and process "rcedit" errors. Windows, Linux: Add support for PCK loading from executable "pck" section.
2022-04-20Fix more issues found by cppcheck.bruvzg
2022-04-13Fix sub-menu keyboard navigation.bruvzg
2022-04-12Narrow FileAccess scope to prevent deadlocks.bruvzg
2022-04-11Make FileAccess and DirAccess classes reference counted.bruvzg
2022-04-06Fix some issues found by cppcheck.bruvzg
2022-04-06Merge pull request #59908 from bruvzg/fix_popup_close_raceRémi Verschelde
Fix a possible race condition on popup close, that might cause multiple deletions of the same list item.
2022-04-05CI: Update black formatter and apply changesRémi Verschelde
2022-04-05Fix a possible race condition on popup close, that might cause multiple ↵bruvzg
deletions of the same list item.
2022-04-04Zero initialize all pointer class and struct membersRémi Verschelde
This prevents the pitfall of UB when checking if they have been assigned something valid by comparing to nullptr.
2022-04-01Add CI build with clang sanitizers, increase stack size to 30 MB for builds ↵bruvzg
with sanitizers.