847 Commits

Author SHA1 Message Date
Themaister
3029f96511 Add a new "glcore" driver with slang support.
This driver should sunset the old gl2 driver, but that driver will
likely live on to support really ancient and terrible GL stacks.
All the worst legacy cruft has been ripped out, and it's almost a decent
backend now.

Requirements for slang are GL 3.2+ or GLES3.
Some shaders require features which are not directly compatible with
GLES2 or legacy GL.

This driver shares a lot of concepts from the Vulkan driver.
The slang shader stack and SPIRV-Cross are used to implement the shader
spec, and the menu shaders are also shared with Vulkan.
2019-03-09 12:30:49 +01:00
orbea
2586e727e7 qb: Fix the HAVE_OPENGLES check.
Not all systems have the appropriate pkgconfig files.

Fixes https://github.com/libretro/RetroArch/issues/8274
2019-02-13 09:51:49 -08:00
orbea
74cd5a067f qb: Use the correct compiler flags for check_lib. 2019-02-12 11:56:24 -08:00
orbea
f41e70ba11 qb: Minor clean up. 2019-02-11 17:52:34 -08:00
orbea
f6d8f2911d qb: Allow checking for multiple pkgconfig files. 2019-02-11 16:51:08 -08:00
orbea
769612c274 qb: Rework configure output. 2019-02-11 14:14:36 -08:00
orbea
d3dcc548b2 qb: Allow falling back to a bundled wayland-protocols when not found. 2019-02-10 15:34:50 -08:00
orbea
b5e7992579 qb: Test for user set variables.
This fixes issues where if both check_header and check_lib are used
it would set HAVE_FOO=yes and then result in a configure failure
when check_lib failed. This was also implemented for the other functions
to avoid similar issues.
2019-02-10 10:16:09 -08:00
orbea
58eb7f3bf3 qb: Minor config.libs.sh fixes. 2019-02-08 19:13:07 -08:00
Twinaphex
6b8f18676c
Merge pull request #8231 from bparker06/gl1_squash_merge
OpenGL 1.1 video driver (gl1)
2019-02-08 22:48:18 +01:00
Brad Parker
d64933b30d gl1: put behind HAVE_OPENGL1, off by default for now 2019-02-08 16:04:23 -05:00
orbea
fe28192438 qb: Init some variables. 2019-02-08 12:43:58 -08:00
orbea
7cd6c9cf60 qb: Check number of arguments for while loops.
This is less fragile and doesn't rely on unset variables.
2019-02-08 12:15:47 -08:00
orbea
9d6b1c3ea7 qb: Add support for CXX_BUILD to config.params.sh. 2019-02-07 15:46:27 -08:00
natinusala
c20ab3864d First version of menu widgets (gl only) 2019-02-06 20:48:24 +01:00
orbea
28ff4b391a Clean up white space. 2019-02-03 16:00:50 -08:00
orbea
98f6aecec2 Remove the zarch menu driver. 2019-02-02 22:15:10 -08:00
twinaphex
9aa542b1ae * Get rid of video_shader_driver_use
* Get rid of Nuklear - ozone/menu widgets is probably the replacement
for it - Zarch will go next
2019-02-03 04:37:54 +01:00
orbea
f9ee57c40d qb: Fix configure arguments. 2019-01-31 13:06:12 -08:00
orbea
5011360a93 qb: Remove dead DISPMANX code. 2019-01-31 08:36:18 -08:00
orbea
c88456a455 qb: Combine HAVE_VIDEO_PROCESSOR with HAVE_VIDEOPROCCESOR. 2019-01-30 12:28:58 -08:00
orbea
7d106545eb qb: Clean up. 2019-01-30 08:34:06 -08:00
orbea
921104a4fb qb: Don't force threads for win32. 2019-01-30 07:22:32 -08:00
orbea
8e798405ad qb: Extend check_enabled.
This also disables vulkan support when threads are also disabled.

Fixes https://github.com/libretro/RetroArch/issues/8091
2019-01-29 17:06:49 -08:00
orbea
1a28b06935 qb: Workaround mali bug.
Some systems have egl libarries, but no pkgconfig file to find them.

Fixes https://github.com/libretro/RetroArch/issues/8114
2019-01-29 10:16:06 -08:00
Twinaphex
8b958b91f9
Merge pull request #8105 from orbea/qb
Update generate_wayland_protos.sh.
2019-01-28 00:31:57 +01:00
orbea
67d5bcbb5c qb: Test a real version of wayland-egl.
This matches the default mesa version in Ubuntu 14.04.
2019-01-27 12:18:31 -08:00
orbea
ae7b09afae gfx: Update generate_wayland_protos.sh. 2019-01-26 16:08:18 -08:00
orbea
d7d5bc58b2 qb: Create qb.init.sh. 2019-01-26 14:41:37 -08:00
Twinaphex
b512c0aeb9
Merge pull request #8095 from Sunderland93/wayland-version
[Wayland] Set minimum wayland version to 1.12
2019-01-26 22:49:34 +01:00
Sunderland93
10d2d13004 Fix version's comparison 2019-01-26 13:41:03 +04:00
orbea
63c7abef06 qb: Allow testing more than one version in check_pkgconf. 2019-01-25 15:04:29 -08:00
Sunderland93
677395f05e [Wayland] Set minimum wayland version to 1.12 2019-01-25 21:41:13 +04:00
orbea
2cc6505997 qb: Fix HAVE_RETRO check. 2019-01-24 23:08:35 -08:00
orbea
352fbc7cc7 qb: Remove duplicate code in config.libs.sh. 2019-01-24 22:29:10 -08:00
orbea
0dc40a2d66 qb: Cleanup config.libs.sh. 2019-01-24 17:17:19 -08:00
orbea
db46d43224 qb: Add --enable-debug. 2019-01-22 10:08:39 -08:00
orbea
cb602c190d Some C89_BUILD fixes. 2019-01-20 14:03:42 -08:00
Twinaphex
c538d78626
Merge pull request #8045 from meleu/new_cheevos
better handling HAVE_NEW_CHEEVOS compilation
2019-01-20 20:38:29 +01:00
meleu
04ec598b97 add './configure --enable-new_cheevos' option 2019-01-20 16:08:31 -02:00
orbea
cf83332b49 qb: Replace remaining uses of echo with printf. 2019-01-20 08:08:02 -08:00
orbea
9c7affc2cf Travis + qb fixes. (#8040)
* travis: Enable building qt for linux.

* qb: Set QT_SELECT for moc and qtchooser.

This should have no effect on systems where qtchooser is not used.

Fixes https://github.com/libretro/RetroArch/issues/8028

* qb: Actually disable c++ features if there is no c++ compiler.

Now this warning actually does something.

  Warning: A working C++ compiler was not found, C++ features will be disabled.
2019-01-19 11:21:31 -05:00
orbea
79f8b6281f Revert "WIP: travis: Enable building qt for linux." (#8039) 2019-01-18 14:34:22 -05:00
Twinaphex
a578146a9f
Merge pull request #8033 from orbea/moc
qb: Create qb.moc.sh and qb.make.sh.
2019-01-18 20:22:26 +01:00
orbea
6f094a3fdd travis: Enable building qt for linux. 2019-01-18 09:27:16 -08:00
orbea
e42c21321b qb: Create qb.moc.sh and qb.make.sh.
This moves the check for a Qt5 moc into its own file, qb.moc.sh which
is executed at the end of the script to avoid the direct dependency on
pkg-config. Now instead it depends on the QT5CORE_CFLAGS and
QT5CORE_LIBS variables set in config.lib.sh. These should always be set
if HAVE_QT=yes.

This also creates a new qb.make.sh file to ensure that the config.mk and
config.h files are created at the end of the configure script.
2019-01-17 18:36:03 -08:00
orbea
2860d6af08 qb: Check for a Qt5 moc. (#8029) 2019-01-17 17:35:19 -05:00
orbea
35f6dd640d qb: Remove outdated checks. 2019-01-07 14:42:06 -08:00
Twinaphex
9bd97784a3
Merge pull request #7916 from orbea/qb
qb: Fix typo in --help.
2019-01-07 10:02:45 +01:00
orbea
23c8a31d69 qb: Improve menu check without opengl, opengles or vulkan. 2019-01-06 22:18:02 -08:00