Tony Wasserka
72d0228cd7
Thunks/gen: Remove now unneeded callback_structs and callback_typedefs files
2022-07-07 17:33:31 +02:00
Stefanos Kornilios Misis Poiitidis
9c01dd9d9f
Thunks: PoC Callbacks using sha256 exports from host
2022-07-06 18:41:53 +02:00
Tony Wasserka
ec49100c63
Thunks/CMake: Remove now unneeded helper functionality
...
This was needed for libvulkan_device. With libvulkan thunked directly now,
there is no further use of this code.
2022-06-24 11:56:36 +02:00
Tony Wasserka
b93b713179
Thunks/vulkan: Thunk libvulkan directly instead of libvulkan_device
2022-06-24 11:56:36 +02:00
Stefanos Kornilios Misis Poiitidis
dacdfd5c02
CMAKE: Create directories during configuration, fixes endless generation of unittests
2022-06-15 01:10:33 +03:00
Stefanos Kornilios Misis Poiitidis
a6a816fb38
CMake: C/C++ flags for defined singed overflow warping
2022-05-10 17:14:17 +03:00
Ryan Houdek
364b3380fc
Fixes Host and guest thunks install path
...
Hosts were using the cmake install path with $DESTDIR which duplicates
paths.
GuestThunks were doing some magic that wasn't actually necessary
2022-02-15 15:36:31 -08:00
Tony Wasserka
bd6999eb87
CMake: Clean up build architecture for ThunkLibs
...
Host thunk libraries are always built as part of the main project now.
Guest thunk libraries are still cross-compiled in a CMake ExternalProject,
but *additionally* there are CMake targets in the main project to make
sure IDE engines can properly handle guest source files.
2022-02-10 11:23:43 +01:00
Tony Wasserka
32a0e37569
Thunks: Remove now unneeded generator files
2021-12-10 11:25:01 +01:00
Tony Wasserka
0285e35c87
Thunks: Use libclang-based code generation for libvulkan
2021-12-10 11:25:01 +01:00
Tony Wasserka
20e24eae9c
Thunks: Use libclang-based code generation for libdrm
2021-12-10 11:25:00 +01:00
Tony Wasserka
b8d9027680
Thunks: Use libclang-based code generation for libxshmfence
2021-12-10 11:25:00 +01:00
Tony Wasserka
688ef9f5af
Thunks: Use libclang-based code generation for libxcb-xfixes
2021-12-10 11:25:00 +01:00
Tony Wasserka
181c9074ab
Thunks: Use libclang-based code generation for libxcb-sync
2021-12-10 11:25:00 +01:00
Tony Wasserka
6f85f64bfd
Thunks: Use libclang-based code generation for libxcb-shm
2021-12-10 11:25:00 +01:00
Tony Wasserka
ba6ee61db2
Thunks: Use libclang-based code generation for libxcb-randr
2021-12-10 11:25:00 +01:00
Tony Wasserka
e735281b2c
Thunks: Use libclang-based code generation for libxcb-present
2021-12-10 11:24:59 +01:00
Tony Wasserka
c8b2d714a8
Thunks: Use libclang-based code generation for libxcb-glx
2021-12-10 11:24:59 +01:00
Tony Wasserka
bba0625a57
Thunks: Use libclang-based code generation for libxcb-dri3
2021-12-10 11:24:59 +01:00
Tony Wasserka
c9a7b36210
Thunks: Use libclang-based code generation for libxcb-dri2
2021-12-10 11:24:59 +01:00
Tony Wasserka
a2c02ae51e
Thunks: Use libclang-based code generation for libxcb
...
Notably, xcb_take_socket uses the callback_guest annotation, since the
given callback is never called on the host (instead it's manually forwarded
back to a helper guest thread for calling).
2021-12-10 11:24:59 +01:00
Tony Wasserka
1e23e61572
Thunks: Use libclang-based code generation for libEGL
2021-12-10 11:24:59 +01:00
Tony Wasserka
f4dd1a895e
Thunks: Use libclang-based code generation for libGL
2021-12-10 11:24:58 +01:00
Tony Wasserka
4a848d7202
Thunks: Use libclang-based code generation for libX11
2021-12-10 11:24:58 +01:00
Tony Wasserka
4ceb2dfdf2
Thunks: Use libclang-based code generation for libXext
2021-12-10 11:24:58 +01:00
Tony Wasserka
bd380e0f15
Thunks: Use libclang-based code generation for libXrender
2021-12-10 11:24:58 +01:00
Tony Wasserka
73ec786c60
Thunks: Use libclang-based code generation for libasound
2021-12-10 11:24:57 +01:00
Tony Wasserka
e3a2c8dc80
Thunks: Use libclang-based code generation for libXfixes
2021-12-10 11:24:57 +01:00
Tony Wasserka
08bfc5e0c0
Thunks: Catch unresolved function references at build time
...
This could also prove useful for guest libraries, however the implicit
dependency of libEGL on libGL (via glXGetProcAddress) cannot be resolved
easily with the current build setup.
2021-11-18 19:27:09 +01:00
Ryan Houdek
48955da5f3
Thunks: Fix missing libdrm include path
2021-10-11 19:43:36 -07:00
Ryan Houdek
f2ef58630c
Thunks: Respect DESTDIR environment variable
...
This allows local install to actually work
2021-10-08 20:57:23 -07:00
Ryan Houdek
0d0ce38050
Thunks: Disable malloc libraries
...
Keeping this in the commit history to go back to later.
While these are required for static-pie builds to work, with the glibc
bug we can't use those yet.
Disable for now since it is is unnecessary.
2021-10-06 11:53:48 -07:00
Ryan Houdek
14b0cc5af4
Thunks: Wires up all the new thunks to the generators
2021-10-05 23:51:26 -07:00
Ryan Houdek
10d596314e
Thunks: Makes file searches a bit easier
...
Instead of searching inside the thunk folder for Guest and Host files
with a library name attached to it, also search for ones That are just
named `Host.cpp` and `Guest.cpp`.
Makes quickly pounding out a bunch of thunks significantly less tedious.
2021-09-30 18:48:32 -07:00
Ryan Houdek
ed891f09f1
Fixes Host thunks lib not being able to GL
2021-07-12 19:21:58 -07:00
Ryan Houdek
da49eb3394
Allows installing of FEXThunks in our data directory
...
This is necessary for building FEX packages that contain some initial thunk libs.
Gives an initial foothold for a default location for the host and guest thunk folders
2021-03-24 03:27:38 -07:00
Ryan Houdek
3b16ce2371
Fixes thunk generation with make
2020-11-21 17:45:22 -08:00
Stefanos Kornilios Mitsis Poiitidis
2425ab994b
Thunks: Generation script refactor, generic callbacks
2020-09-22 14:35:38 +03:00
Ryan Houdek
e9b74b0230
Initial Callback support
...
This interface is for native host code to be able to call back in to JIT
to execute guest code.
This is mainly for thunks but could be used for other purposes.
This can cross a couple ABI boundaries so one must be careful when
calling in to this
2020-09-11 15:48:51 -07:00
Stefanos Kornilios Mitsis Poiitidis
ab8c7f54ad
Thunklibs: Disable SDL2
2020-08-10 10:23:31 +03:00
Stefanos Kornilios Mitsis Poiitidis
5317888428
Thunklibs: SDL2: use find_package for include dirs
2020-08-10 09:38:20 +03:00
Stefanos Kornilios Mitsis Poiitidis
db633b8394
Thunklibs: Add partial X11, SDL, GL, EGL, asound, cmake integration
2020-08-08 14:48:20 +03:00