Quantum
c34fe10f23
[client] ds: make SDL display server optional
...
This commit also moved the SDL dependencies into the SDL backend so that
-DENABLE_SDL=NO builds do not link against SDL.
2021-02-26 10:28:51 +11:00
Quantum
46758efc8f
[client] cmake: build for nehalem when OPTIMIZE_FOR_NATIVE=NO
...
We need SSE intrinsics like _mm_stream_load_si128 which is only available
on CPUs of nehalem or newer.
2021-02-22 11:25:44 +11:00
Quantum
ecebcc4c35
[client] opengl: make ds functions optional
...
Using a macro ENABLE_OPENGL just like ENABLE_EGL to optionally remove
OpenGL implementation code. This is mostly because on Wayland it's just
a rehash of the EGL code (as EGL is the only way to create OpenGL
contexts on Wayland).
2021-02-21 10:31:48 +11:00
Geoffrey McRae
ca5c3938e4
[client] all: move all SDL specific code into displayservers/sdl
2021-02-21 10:31:48 +11:00
Geoffrey McRae
7ff5da4d62
[client] refactor keybinds out of main.c
2021-02-21 10:31:48 +11:00
Geoffrey McRae
bf583290a4
[client/common] restructure project in prep for full SDL removal
2021-02-21 10:31:46 +11:00
Geoffrey McRae
ab79dae0b8
[client] cmake: fix typo in cmake configuration
2021-01-20 15:33:10 +11:00
Geoffrey McRae
27a38294ea
[client] major restructure of platform specific code
2021-01-16 20:41:13 +11:00
Quantum
0495f5de26
[client] enable useful extra warnings
...
-Wno-sign-compare is used to suppress warnings related to comparing signed
values with unsigned ones. It's too pedantic.
-Wunused-parameter is also too pedantic, especially since all parameters
have to be named in C.
Otherwise, -Wextra lets us catch bugs, such as x < 0 for unsigned x.
On gcc, we pass -Wimplicit-fallthrough=2 so it will recognize our fall
through comment.
2021-01-15 08:06:56 +11:00
Tudor Brindus
5538a31f6b
[client] add support for compiling with UndefinedBehaviorSanitizer
2021-01-14 17:48:28 +11:00
Tudor Brindus
a205515d91
[client] clipboard/wayland: implement a no-op Wayland clipboard
...
Build scaffolding only; implementation in later commits.
Co-authored-by: Quantum <quantum2048@gmail.com>
2021-01-13 13:39:32 +11:00
Quantum
ab96f77d9e
[client] wm/wayland: generate protocol files into the build dir
...
This avoids polluting the source tree.
2021-01-12 16:00:12 +11:00
Quantum
24a4de6d65
[client] wm/wayload: implement keyboard grabbing
2021-01-12 15:26:42 +11:00
Geoffrey McRae
b58176fcdb
[client] removed last remnents of the decoders & parsers
2021-01-12 12:42:06 +11:00
Tudor Brindus
a97332025c
[cmake] add option to build Wayland headers
2021-01-12 12:36:21 +11:00
Geoffrey McRae
76ed75f871
[client] spice: create and use platform agnostic grab/ungrab methods
2021-01-10 15:26:33 +11:00
Quantum
0b890ed1ac
[client] add support for compiling with AddressSanitizer
2021-01-10 13:42:58 +11:00
Geoffrey McRae
0bd5f0b2f1
[client/host] disable stack execution
2021-01-05 00:01:45 +11:00
Geoffrey McRae
a94d3734c2
[all] pass the project path to the version.cmake script
2020-10-09 02:51:28 +11:00
Geoffrey McRae
e6c88a4af3
[all] be smarter about getting the git version
2020-10-09 02:17:20 +11:00
Geoffrey McRae
0b7f422d5d
[client] moved spice into a seperate repository
2020-01-31 21:39:57 +11:00
Geoffrey McRae
406e22a681
[client] override new behaviour in SDL 2.0.15 and disable xinput2
...
xinput2 is used to get touch interface events with the side effect of
consuming MotionNotify events which we use because of SDL2's inability
to correctly track the window size. Since we are not that intertested in
touch for our usecase, we just turn the events off again.
2020-01-13 22:21:12 +11:00
Geoffrey McRae
2d755a45e0
[client] added support for LGMP
2020-01-09 20:32:42 +11:00
Jonathan (JJRcop) Rubenstein
491ffc3576
Fix client not building on void linux
...
Thanks to
SharkWipf#8539,
Aiber#4888,
and Hadet#6969 on the VFIO discord
2019-12-28 00:07:39 +11:00
Geoffrey McRae
4cf6dec592
[all] allow disable of backtrace support during build
2019-06-19 09:13:03 +10:00
Geoffrey McRae
e3c98ddc35
[client] port all configuration parsing to use the new option helper
2019-05-21 15:03:59 +10:00
Geoffrey McRae
32bd6d96e3
[common] implemented crash handler for linux (including backtrace)
2019-04-11 16:41:52 +10:00
Geoffrey McRae
d8915dbfc9
[build] make "common" a static library (part 2/2)
2019-04-11 11:12:59 +10:00
Łukasz Kostka
ccd0fd8902
Add install binary target
2019-04-05 03:18:11 +11:00
Geoffrey McRae
4dee965fdf
[client] main: move config and option parsing into a seperate unit
2019-03-30 15:52:00 +11:00
Geoffrey McRae
35094a57cb
[client] more cleanup and added alerts for new events
2019-03-30 12:26:06 +11:00
Geoffrey McRae
8eed25b469
[client] cmake: list enabled features in configure output
2019-03-28 20:27:38 +11:00
Geoffrey McRae
66c3c0115f
[client] added options to disable/enable interfaces
2019-03-28 20:12:18 +11:00
Geoffrey McRae
3e021f3a6b
[client] use cmake to generate renderers/fonts/clipboards headers/code
...
This is in preperation of cmake options to enable/disable various
functionallity.
2019-03-28 19:56:14 +11:00
Geoffrey McRae
52c4e15c76
[client] project restructure part 2/2
2019-03-28 12:42:41 +11:00
Geoffrey McRae
3d136a28a0
[all] added pre-commit script and VERSION
...
This script belongs in .git/hooks/ to bump the version each commit.
2019-03-28 12:24:38 +11:00
Geoffrey McRae
db398d41a0
[client] project restructure part 1/2
2019-03-28 11:02:36 +11:00
Geoffrey McRae
d8b01c0257
[client] initial host to client clipboard sync working
2019-02-24 11:43:32 +11:00
Geoffrey McRae
54e8cce33c
[client] core: added initial clipboard interface and x11 stubs
2019-02-22 22:38:52 +11:00
Geoffrey McRae
667aed635d
[client] egl: added untested support for wayland
2019-01-02 00:04:40 +11:00
Geoffrey McRae
de5795e368
[client] egl: implemented alerts and some minor fixes to fps
2018-12-16 10:57:01 +11:00
Geoffrey McRae
0e2b371e59
[client] egl: added splash screen rendering
2018-12-16 00:54:37 +11:00
Geoffrey McRae
abfe3a9b4d
[client] egl: moved desktop rendering into seperate unit
2018-12-12 21:41:51 +11:00
Geoffrey McRae
608b67af77
[client] egl: moved fps code into seperate unit
2018-12-12 20:04:43 +11:00
Geoffrey McRae
c23bf6a0c4
[client] egl: migrate cursor code into seperate unit
2018-12-12 18:53:55 +11:00
Geoffrey McRae
50c460df5a
[client] define GL_GLEXT_PROTOTYPES globally
2018-12-12 16:53:30 +11:00
Geoffrey McRae
a9aab3c1ee
[client] egl: moved egl sources into subdirectory
2018-12-12 16:39:04 +11:00
Geoffrey McRae
ab98c87e7c
[client] egl: added FPS rendering
2018-11-20 09:50:09 +11:00
Geoffrey McRae
0ed9301ed9
[client] font: implemented font ABI and updated OpenGL to use it
2018-11-20 04:38:53 +11:00
Geoffrey McRae
00658f3d64
[egl] split out texture code into it's own object
2018-09-23 15:48:44 +10:00