Commit Graph

742 Commits

Author SHA1 Message Date
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
orbea
749e882b58 qb: Fix typo in --help. 2019-01-06 21:18:36 -08:00
Brad Parker
8343cf2680 re-word warning message 2019-01-06 17:39:19 -05:00
Brad Parker
65c6bb69a4 allow building Qt with --disable-menu 2019-01-06 17:37:36 -05:00
orbea
65c6caf5a6 qb: Add '--disable-menu'. (#7910)
This adds '--disable-menu' which will disable all of the menu drivers
including Qt. This will also allow disabling only rgui and not the other
menu drivers.
2019-01-06 17:30:50 -05:00
orbea
5428d2a833 Fix warning with '--disable-rgui' and '--disable-easteregg'. (#7908)
Fixes:

retroarch.c: In function ‘runloop_check_state’:
retroarch.c:2593:20: warning: variable ‘seq’ set but not used [-Wunused-but-set-variable]
    static uint64_t seq              = 0;
                    ^~~
2019-01-06 17:21:15 -05:00
Twinaphex
56c246482e
Merge pull request #7902 from orbea/rgui
qb: Fix '--disable-rgui'.
2019-01-06 09:16:01 +01:00
orbea
34f3eb7277 qb: Fix '--disable-rgui'.
Also fixes a crash on startup with '--disable-rgui'.

Thread 1 "retroarch" received signal SIGSEGV, Segmentation fault.
0x0000000000529f52 in strlcpy_retro__ (dest=0x7fffffffbb17 "treaming_toggle",
    source=0x1 <error: Cannot access memory at address 0x1>, size=250)
    at libretro-common/compat/compat_strl.c:38
38	      while (--n && (*dest++ = *source++)) src_size++;
(gdb) bt
    dest=0x7fffffffbb17 "treaming_toggle",
    source=0x1 <error: Cannot access memory at address 0x1>, size=250)
    at libretro-common/compat/compat_strl.c:38
    size=250) at libretro-common/compat/compat_strl.c:60
    out_path=0x7fffffffbb10 "input_", dir=0x94b460 "input", path=0x0,
    delim=95 '_', size=256) at libretro-common/file/file_path.c:964
    prefix=0x94b460 "input", btn=0x0, bind=0x151e180 <input_autoconf_binds+4672>)
    at input/input_driver.c:2483
    binds=0x151cf40 <input_autoconf_binds>) at tasks/task_autodetect.c:172
    params=0x26adb40, task=0x26b74f0) at tasks/task_autodetect.c:252
    params=0x26adb40, task=0x26b74f0) at tasks/task_autodetect.c:393
    at tasks/task_autodetect.c:851
    at libretro-common/queues/task_queue.c:182
    at libretro-common/queues/task_queue.c:609
    at frontend/frontend.c:146
    at frontend/frontend.c:170

Fixes https://github.com/libretro/RetroArch/issues/7893
2019-01-05 16:54:40 -08:00
Brad Parker
bbfbefa9dd easter egg 2019-01-05 18:33:29 -05:00
Twinaphex
e827c3648f
Merge pull request #7772 from orbea/opt
Makefile: Better respect CFLAGS and CXXFLAGS as environment variables.
2019-01-05 17:21:16 +01:00
orbea
a7f5fc9431 qb: Fix mpv check.
This fixes the mpv configure check and disables it by default
to avoid exposing other bugs. It can be enabled again when those
isssues are fixed.
2018-12-30 20:04:42 -08:00
orbea
fb6fe1a87c Makefile: Better respect CFLAGS and CXXFLAGS as environment variables.
This fixes a few subtle problems with passing CFLAGS and CXXFLAGS as
environment variables for configure.

First it will now only add these variables to config.mk when they are
actually set. If they are unset then the default optimizations in the
Makefile are set. This avoids passing more than one conflicting
optimization level to the compiler.

Next all CFLAGS are added to CXXFLAGS to avoid issues with forgetting to
set both CFLAGS and CXXFLAGS. This results in the cxx compiler getting
passed several redundant optimization levels when both the CFLAGS and
CXXFLAGS environment variabls are used. Now these uses of CFLAGS in
Makefile.common are set to DEF_FLAGS. This allows adding $(DEF_FLAGS)
to the CXXFLAGS variable without adding redundant flags from CFLAGS.

v2: Update other build files.
2018-12-30 17:17:19 -08:00
radius
0b13cba4ea add drmingw's exchndl support 2018-12-30 12:12:55 -05:00
Twinaphex
671b49afcd
Merge pull request #7833 from orbea/ffmpeg
qb: Only print threading warning when ffmpeg is not disabled.
2018-12-28 21:09:15 +01:00
orbea
1e513598d3 qb: Only print threading warning when ffmpeg is not disabled. 2018-12-28 11:51:27 -08:00
orbea
465b3e5774 qb: Disable the builtin lua by default.
Disables the builtin lua as it causes the mpv core to segfault and
doesn't do anything yet.
2018-12-28 10:32:02 -08:00
orbea
c079a2f953 Makefile: Install assets only for enabled menus.
Currently RetroArch will install assets for xmb, materialui and ozone
unconditionally.

This change will now only install assets when RetroArch is compiled
with support for the relevant menu driver. This also exposes assets
from the nuklear and zarch menu drivers which are still disabled by
default.
2018-12-23 09:55:05 -08:00
orbea
7e4723e37a qb: Minor cleanup.
This uses safer quoting and removes an unneeded use of printf.

Fixes the following shellcheck warning.

In qb/qb.libs.sh line 143:
	if [ $3 ]; then
             ^-- SC2086: Double quote to prevent globbing and word splitting.

v2: Remove redundant conditional.
2018-12-21 08:32:01 -08:00
nia
1721bd07c4 Use the correct message when printing macro tests. 2018-12-21 14:23:13 +00:00
nia
3ef9bbb592 Add an AudioIO dirver for NetBSD and Solaris. 2018-12-21 14:15:30 +00:00
orbea
066bbd1a29 Makefile.common: Remove redundant conditionals.
C89 builds are only used for the qb build system currently and these are
already checked in qb/config.params.sh.

Additionally the HAVE_NETWORKING check is handled with qb/config.lib.sh
where HAVE_SSL and HAVE_BUILTINMBEDTLS are disabled if networking is
also disabled. The other build systems should never define HAVE_SSL or
HAVE_BUILTINMBEDTLS without HAVE_NETWORKING. Also there are no other
build systems that rely on Makefile.common using this yet.
2018-12-20 10:49:23 -08:00
Twinaphex
7835d0c54c
Merge pull request #7745 from orbea/mbedtls
Support building with the system mbedtls.
2018-12-19 01:53:14 +01:00
orbea
e0c634cd76 qb: Fix typo. 2018-12-15 19:02:36 -08:00
orbea
dc020f2569 qb: Support building with the system mbedtls.
Fixes https://github.com/libretro/RetroArch/issues/7639

v2: Fix build failures with griffin.
2018-12-15 09:10:43 -08:00
orbea
9be245ad75 qb: Extend check_header.
Now the check_header function can test any number of header files
instead of only four.
2018-12-14 19:16:20 -08:00
Sunderland93
27f2cc0bff Increase minimal Wayland version to 1.15 2018-12-09 19:28:45 +04:00
Sunderland93
830882e296 Merge branch 'server-decorations' 2018-12-09 19:03:57 +04:00
Sunderland93
dc94886664 Initial support for xdg-decoration-unstable-v1 2018-12-05 22:51:07 +04:00
twinaphex
4ca7ebc9da Add xrandr implementation for get_output_options 2018-11-27 11:28:24 +01:00
Sunderland93
ea180a1775 Relax wayland and wayland-protocols version's 2018-11-26 21:58:43 +04:00
Sunderland93
c32c98e667 Very WIP: xdg-shell support 2018-11-17 16:01:51 +04:00
natinusala
6f631309cd ozone: always enable and build, set to default menu driver for libnx 2018-11-15 18:46:38 +01:00
natinusala
158ddc0b2a New menu driver : ozone (Nintendo Switch lookalike) 2018-10-26 13:24:32 +02:00
twinaphex
ba020720db Add HAVE_NETPLAYDISCOVERY 2018-10-12 18:29:52 +02:00
twinaphex
2c546597b4 Don't bake in cheevos for C89 for now until issues are fixed 2018-10-01 03:33:54 +02:00
Andre Leiradella
77df31256d Only build Lua if HAVE_LUA is defined; define HAVE_LUA by default
Define RC_DISABLE_LUA if HAVE_LUA is not defined
2018-09-29 18:39:29 +01:00
Brad Parker
7731db9ed8 Qt: link to openssl so Qt will have it for later 2018-08-26 10:40:33 -04:00
twinaphex
f657391b2a mbedtls does not support C89 so don't use HAVE_SSL for C89_BUILD 2018-08-13 03:21:08 -07:00
twinaphex
27c2c6c6d7 Add Discord integration 2018-08-08 07:32:37 +02:00
Brad Parker
4baecf84ca Qt: add option to update RetroArch (Windows only for now) 2018-08-06 20:52:47 -04:00
twinaphex
2f1dd78a77 Set HAVE_SSL=yes by default for Windows/Linux 2018-08-04 18:50:53 +02:00
Twinaphex
6150bd9772
Merge pull request #7010 from bparker06/qt_grid
Qt: initial working grid view
2018-07-23 17:45:43 +02:00
twinaphex
6cee45ab99 Don't bake in HAVE_STRIPES by default 2018-07-23 17:42:57 +02:00
Brad Parker
75ce796c34 Merge branch 'master' into qt_grid 2018-07-22 20:03:55 -04:00
Rob Loach
aba179a910
Merge branch 'master' into stripes 2018-07-22 13:30:47 -04:00
Brad Parker
ab27b7c85f initial SIXEL video driver 2018-07-12 16:55:08 -04:00
Brad Parker
04d5e6368e Merge branch 'master' into qt_grid 2018-07-02 11:52:04 -04:00
twinaphex
0286829348 Start adding HAVE_MPV ifdefs 2018-06-20 04:29:31 +02:00
Zoran Vuckovic
b487c3cace Add MIDI support 2018-06-16 21:17:32 +02:00
Brad Parker
ef8390dee1 Merge branch 'master' into qt_grid 2018-06-07 11:57:05 -04:00
twinaphex
8ad1ddbac5 Disable discord support for C89 2018-05-29 10:42:18 +02:00
twinaphex
e056cd8005 Disable HAVE_DISCORD for now 2018-05-29 10:22:07 +02:00
radius
d5c2bc90c1 add discord files 2018-05-28 23:46:36 -05:00
Brad Parker
f79ba4885a Qt: threaded grid image loading 2018-05-03 22:05:12 -04:00
orbea
8f861d438b qb: Fix checking the CXX compiler
This does the following.

1. Fixes checking if the CXX compiler works on platforms other than windows.
2. Turns the error when the CXX compiler is missing or doesn't work into a warning.
3. Adds HAVE_CC and HAVE_CXX.
4. Only adds CC and CXX to config.mk when HAVE_CC or HAVE_CXX are true.
5. Disables Qt companion, Vulkan, CXX_BUILD and NEED_CXX_LINKER if HAVE_CXX is false.
6. Explicitly errors when the CXX compiler is broken or missing and Qt or vulkan support is enabled.
7. No longer explicitly links with the CXX compiler on windows since this should no longer be needed.

This also adds the function `check_enabled` to `qb/qb.lib.sh` which
can be used to dynamically disable any libraries that require C++
support.
2018-05-03 12:24:32 -07:00
orbea
237a705a82 qb: Always print CC and CXX variables if set. 2018-05-01 17:47:14 -07:00