Commit graph

53 commits

Author SHA1 Message Date
Ryan Pavlik 2f78acd108 cmake: Copy some deps over when installing on Windows. 2022-04-21 17:17:16 -05:00
Ryan Pavlik 0926ce1dab cmake: Clean up how we install the runtime 2022-04-21 17:17:16 -05:00
Ryan Pavlik 86ee913086 cmake: Use new module for generating manifests
Remove the old parts.
2022-04-21 17:17:16 -05:00
Ryan Pavlik e75fae4d80 cmake: Fix where we install the runtime on Windows 2022-04-21 16:29:17 -05:00
Ryan Pavlik ad6b70267e cmake: Apparently Windows needs backslashes in the manifest files. 2022-04-21 16:23:49 -05:00
Ryan Pavlik aa4f43b049 cmake: Improve manifest installation, allowing relative paths to be generated. 2022-04-20 11:47:04 -05:00
Ryan Pavlik cc4007a69e cmake: Substantial cleanups and simplifications
We now have a cmake-format config file.
We no longer use list variables for sources, instead using
target_sources when we need to add, in accordance with current
best practice. (This makes it a lot easier to edit too.) There's no more
include_directories(), add_definitions(), or other gently-deprecated
directory-scoped commands, nor any CMake scripts that include
a parent directory reference (named targets instead)
2021-11-12 09:48:37 -06:00
Ryan Pavlik 19947a2d27 cmake: Refactor how we build imgui 2021-11-12 09:38:50 -06:00
Jakob Bornecrantz f10951b5ac t/openxr: Only link against qwerty driver if built 2021-11-08 13:07:22 +00:00
Ryan Pavlik b3772e2710 cmake: Support multi-config generators 2021-03-30 20:46:00 +00:00
Mateo de Mayo 0340ae3cc8 d/qwerty: Add Qwerty driver initial boilerplate
The Qwerty driver will emulate an HMD and controllers through the use
of mouse and keyboard, and in particular, using the SDL key events
generated from the debug GUI.
2021-03-29 15:41:25 -03:00
Ryan Pavlik 61c36f5a52 t/oxr: Export the right symbol on Windows. 2020-12-06 23:07:05 +00:00
Jakob Bornecrantz 5ba3486628 t/[gui|oxr]: Directly reference SDL2 in CMake
This fixes the build when building with clang and CMake.
2020-10-29 16:33:15 +00:00
Ryan Pavlik 4638b0af7b build: Switch all CMake options to XRT_... to match what's used in source.
Also revise other small related parts of the build to make them more clear and consistent.
2020-05-12 11:52:51 -05:00
Jakob Bornecrantz 7a70f86b2d targets: Add and change targets to support service process 2020-04-29 15:13:43 +01:00
Ryan Pavlik 47710e0532 t/openxr: Fix build without OpenGL 2020-04-28 21:36:46 +00:00
Ryan Pavlik 95b5c03f10 build: Relink if version script changes. 2020-04-27 17:33:38 -05:00
Ryan Pavlik a11f5cc429 target/oxr: Mark the runtime target as a module, not a shared library. 2020-04-24 20:34:53 +00:00
Jakob Bornecrantz 945f2c82ed targets: Move xrt_instance implementation into targets 2020-04-11 12:31:58 +01:00
Ryan Pavlik a974562d43 t/openxr: Unify configured files for Meson and CMake. 2020-03-23 17:29:43 -05:00
Ryan Pavlik 09c189b6ba build: Install more targets 2020-03-23 17:29:43 -05:00
Ryan Pavlik fe40691052 build: Start using version script to reduce the number of exported symbols 2020-03-04 09:55:16 -06:00
Ryan Pavlik 71c29425d4 build: Fix linking issues preventing the OpenXR runtime from working. 2020-03-04 09:54:47 -06:00
Ryan Pavlik 92205ab5be build: Refactor CMake build to use static libraries instead of object bundles.
This allows transitive dependencies to work easier and improves compatibility.
It takes a little bit more storage at build time, and possibly a little extra time.
2020-03-04 11:15:35 +00:00
Jakob Bornecrantz 0619190d2b build: Refactor how config defines are handled
With loads of changes from Ryan.
2020-03-03 10:33:14 +00:00
Jakob Bornecrantz ca3c266dc1 comp: Split client and main in the build system as well 2020-03-02 12:01:04 +00:00
Jakob Bornecrantz 09aa8794b2 aux/vk: Refactor out helper code into own library 2020-03-02 11:58:40 +00:00
Ryan Pavlik 5c830f16b2 t/oxr: Fix linking in absence of SDL2 2019-12-07 18:25:37 +00:00
Jakob Bornecrantz 8301bd8d4c external: Refactor out sdl functions from main cimguo.cpp 2019-10-22 21:37:03 +01:00
Jakob Bornecrantz e56271d968 st/oxr: Add super hacky debug gui 2019-10-15 20:54:57 +01:00
Jakob Bornecrantz e327d56bf4 aux/ogl: Introduce a single small OpenGL library 2019-10-09 17:07:23 +01:00
Lubosz Sarnecki 979536dd4b xrt/comp/cmake: Enable build of Wayland backend.
Add pkgconfig based Wayland build including protocol generation.
2019-10-02 12:22:42 +02:00
Benjamin Saunders c111f528b8 oxr: Optionally install as the default runtime 2019-08-19 12:09:49 -05:00
Ryan Pavlik e824b83112 st/oxr: Install manifest to major version "1" subdir 2019-08-17 03:31:40 +00:00
Ryan Pavlik c5fea837f3 oxr: Allow relative vs absolute manifest path to be selected at configure time. 2019-06-19 08:15:08 -07:00
Ryan Pavlik 88efae1078 oxr: Generate the dev manifest using the same template as installed. 2019-06-19 08:15:08 -07:00
Ryan Pavlik fc98db1439 oxr: Use an absolute path in the installed runtime manifest. 2019-06-19 08:15:08 -07:00
Ryan Pavlik 66086c1b0b oxr: Reduce proportion of install that's platform-guarded 2019-06-19 08:15:08 -07:00
Benjamin Saunders 40d8446ba8 oxr: Use absolute path of runtime library in manifest
Improves robustness when there might be multiple libraries by the same
name visible to the loader.
2019-06-19 08:15:08 -07:00
Ryan Pavlik 02be89bf35 targets: De-duplicate conditional inclusion of driver objects/libraries. 2019-06-18 18:44:17 +00:00
Jakob Bornecrantz b71e143eaa d/psmv: Add PS Move driver 2019-06-18 17:56:10 +01:00
Jakob Bornecrantz 702eba0f53 openxr: Use prober target 2019-05-16 20:41:35 +01:00
Jakob Bornecrantz e2bd986bc5 os: Add a minimal hidraw wrapper 2019-05-13 18:26:02 +01:00
Jakob Bornecrantz d9cdd04b7a openxr: Don't unconditionally link with OpenHMD driver 2019-05-13 18:09:40 +01:00
Jakob Bornecrantz 83159a02c1 d/psvr: Add to meta prober and OpenXR target
Still hidden behind a env variable.
2019-05-06 16:46:10 +00:00
Jakob Bornecrantz 9c05e853cc build: Refactor flags and definitions (and fix fallout)
Defines:
* XRT_HAVE_[name] is a external dep indicator.
* XRT_DRIVER_[name] if a internal driver is built.

CMake variables:
* BUILD_WITH_[name] is a external dep indicator.
* BUILD_DRIVER_[name] tells if we should build a specific driver.
2019-04-29 17:18:09 +01:00
Jakob Bornecrantz 2d6b3c2113 openxr: Use meta prober 2019-04-15 09:52:44 +01:00
Ryan Pavlik 917366a730 build: Fix typo.
Left over from an abandoned alternate approach.
2019-04-08 15:19:18 -05:00
Ryan Pavlik d4b47a0edb build: Don't say CMAKE_INSTALL_PREFIX in an install destination
This can make it harder for packagers, or at least isn't
"best practices" without a good reason.
2019-04-08 19:11:04 +00:00
Ryan Pavlik 5cfa0907b6 build: Use and obey config options for driver selection.
We had BUILD_WITH_OPENHMD but it was unused,
while the HDK driver always built if the deps were found.
2019-04-08 19:11:04 +00:00