Commit Graph

885 Commits

Author SHA1 Message Date
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
orbea
b2f508d72e qb: Improve moc detection (#6680) 2018-05-01 13:40:42 -04:00
Brad Parker
20cb92c185 qb: allow building without Qt 2018-05-01 16:24:19 +00:00
Brad Parker
6639d0ed89 qb: don't fail if moc is missing 2018-05-01 08:51:57 -07:00
Brad Parker
791aaa00e1 qb: detect Qt automatically 2018-04-30 22:11:55 -07:00
twinaphex
b7ceedd891 Qt GUI won't work for C89 2018-04-30 21:03:47 +02:00
Brad Parker
a1aefc901c Qt WIMP GUI 2018-04-30 14:33:05 -04:00
twinaphex
958602d328 HAVE_BUILTINFLAC no longer needs to be excluded for C89 2018-04-27 23:17:28 +02:00
twinaphex
997c24ae0c Make FLAC, zlib and LZMA support in libchdr optional 2018-04-22 20:19:07 +02:00
twinaphex
e0b57843aa Enable HAVE_D3D10 now for main Windows build 2018-04-21 05:14:50 +02:00
radius
3792a5e502 remap-redux part2: cleanup 2018-04-08 12:13:49 -05:00
Jean-André Santoni
1614519874 Clone xmb to stripe menu 2018-04-08 09:55:16 +07:00
Twinaphex
9a97c73dc2
Merge pull request #6285 from orbea/sysconfdir
qb: Add --sysconfdir
2018-04-07 22:54:30 +02:00
twinaphex
c041470bb0 Add HAVE_RUNAHEAD ifdef 2018-03-29 15:38:22 +02:00
twinaphex
ddf34bacfd Disable D3D10 for now by default until it gets menu display driver
support and shader support
2018-02-15 12:46:37 +01:00
orbea
72a02b7647 qb: Add --sysconfdir
This also deprecates --global-config-dir.
2018-02-11 09:54:57 -08:00
orbea
85e4f5d94d qb: Add --docdir
By default 'make install' will now install the following 2-3 files
to $(DESTDIR)$(SHARE_DIR)/doc/retroarch which by default is
/usr/local/share/doc/retroarch.

COPYING
README.md

and if media/assets exists it will install:

media/assets/COPYING to COPYING.assets

Users will be able to configure this install path with.

./configure --docdir=PATH

For example:

./configure --docdir=/usr/doc/RetroArch-1.7.0
2018-02-10 08:55:54 -08:00
orbea
72ff4c4d44 qb: Add --bindir and --mandir.
This also deprecates --with-bin_dir and --with-man_dir.
2018-02-08 12:01:28 -08:00
Twinaphex
103c8c3939
Merge pull request #6237 from orbea/datarootdir
qb: Add --datarootdir to configure.
2018-02-08 05:47:18 +01:00
twinaphex
f364d2d3ec (C89) Don't build D3D9/10/11/12 2018-02-04 23:25:12 +01:00
orbea
b67bb87c8d qb: Add --datarootdir to configure.
This allows a user to use --datarootdir=PATH to configure the
share directory used for pixmaps, desktop files, man pages and assets.

By default this will be '/usr/local/share'. Assets and man page install
paths can still be configured with:
  --with-man_dir=PATH
and
  --with-assets_dir=PATH

Some operating systems like Haiku use unconventional install paths
and this should allow them to configure their build correctly.
2018-02-04 13:54:55 -08:00
twinaphex
aeab2e5bd1 enable d3d10/11/12 again for mingw build 2018-01-30 16:04:45 +01:00
twinaphex
15fb080e74 Turn this off by default again until we properly solve this on the
buildbot
2018-01-30 14:54:07 +01:00
twinaphex
fde8cbecf2 Try to see if this works 2018-01-29 17:48:57 +01:00
Twinaphex
34699a9504
Update config.params.sh 2018-01-29 17:42:23 +01:00
twinaphex
9436cc0234 - Add HAVE_HLSL to qb/config.params.sh, set to no by default
- (D3D9 HLSL) Fix build/compilation
2018-01-26 04:09:35 +01:00
Twinaphex
706a549f03
Update config.params.sh 2018-01-25 15:02:23 +01:00
twinaphex
d387cfbfbe Add include/dxsdk 2018-01-23 23:40:17 +01:00
twinaphex
c24e66e61c (QB) Add HAVE_DIRECT3D11/HAVE_DIRECT3D12 (disabled by default
for now)
2018-01-23 07:45:16 +01:00
orbea
cc26f4a88c qb: Don't overwrite defaults
Haiku really should use the configure flags provided, that is why they exists.

In this case.

./configure \
  --global-config-dir=$PREFIX/settings
  --with-assets_dir=$PREFIX/data
  --with-mand_dir=$PREFIX/documentation/man

Changing the defaults just makes the script more complicated for no good reason.
2018-01-20 09:27:02 -08:00
kwyxz
b9585df325 Update Haiku port to allow it to build again 2018-01-20 00:19:01 -08:00
twinaphex
11f26ed549 Refactor verbosity code - try to avoid log calls if verbosity is not
set
2018-01-17 06:28:26 +01:00
orbea
c8d25a9152 qb: Enable pulse detection for SunOS again. 2018-01-15 09:54:39 -08:00
orbea
06648ca21b qb: Silence shellcheck warning.
Line 25:
SORT=sort
^-- SC2209: Use var=$(command) to assign output (or quote to assign string).
2018-01-14 09:12:41 -08:00
kwyxz
f566ecebf4 Disabling Pulse for now 2018-01-11 14:51:18 -08:00
kwyxz
a11decf61d Added SunOS to the list of targets + fixed a sort specificity 2018-01-11 14:48:43 -08:00
orbea
4415086176
Revert "Fix building with built-in flac" 2018-01-08 18:12:53 +00:00
Brian Koropoff
4ad0a1214e Fix building with built-in flac
Not having HAVE_FLAC caused CHD support to be missing, etc.
This updates the logic to match how zlib is handled.
2018-01-07 10:48:09 -08:00
twinaphex
f677a7ad7e Add HAVE_OVERLAY to qb system 2018-01-05 16:10:34 +01:00
orbea
e2b003a993 qb: Only look in /opt/vc/include if $HAVE_VIDEOCORE=yes. 2018-01-02 09:40:36 -08:00
orbea
48982de355 qb: Improve build without pkg-config. 2018-01-02 09:40:36 -08:00
orbea
8287a961e4 qb: Enable vulkan for Win32.
The check_lib function does not seem able to detect vulkan on windows,
this replaces a hack in Makefile.common that does the same, but while allowing
C89_BUILD=1 and --disable-vulkan to work.
2018-01-01 10:09:17 -08:00
orbea
f993355f71 qb: Fix undefined miniupnpc references with C89_BUILD=1
LD retroarch
obj-unix/./libretro-common/net/net_natt.o: In function `natt_open_port':
/RetroArch/libretro-common/net/net_natt.c:120: undefined reference to `UPNP_AddAnyPortMapping'
/RetroArch/libretro-common/net/net_natt.c:133: undefined reference to `UPNP_GetExternalIPAddress'
/RetroArch/libretro-common/net/net_natt.c:126: undefined reference to `UPNP_AddPortMapping'
obj-unix/./libretro-common/net/net_natt.o: In function `natt_init':
/RetroArch/libretro-common/net/net_natt.c:61: undefined reference to `upnpDiscover'
/RetroArch/libretro-common/net/net_natt.c:74: undefined reference to `miniwget'
/RetroArch/libretro-common/net/net_natt.c:77: undefined reference to `parserootdesc'
/RetroArch/libretro-common/net/net_natt.c:79: undefined reference to `GetUPNPUrls'
/RetroArch/libretro-common/net/net_natt.c:81: undefined reference to `freeUPNPDevlist'
collect2: error: ld returned 1 exit status
make: *** [Makefile:159: retroarch] Error 1
2017-12-31 14:18:02 -08:00
orbea
24f69cb537 qb: Fix undefined flac references with C89_BUILD=1 2017-12-30 22:40:02 -08:00
orbea
c96ae959b3 qb: Add a fallback path for jack audio without pkg-config
This is a proof of concept for the fallback path without pkg-config.
As jack is something often not installed by default it demonstrates
that when pkg-config exists and the dependency doesn't the check_val
function in qb/qb.libs.sh will redundantly check -ljack and as expected,
fail. It also shows that when pkg-config is not installed and jack is
enabled with --enable-jack it will bail and print a configure error.
2017-12-30 20:56:40 -08:00
orbea
a37d624967 qb: Improve the check_val function.
This accomplishes two things for the fallback path without pkg-config.

1. If --disable-foo is passed to configure it will explicitly skip
   check_val. This has the benefit of reducing checks in
   qb/config.libs.sh which are easy to break due to human error.

2. When a fallback path exists and --enable-foo is passed to configure,
   but fails due to the missing -lfoo check_val will now bail and print
   a configure error. However --enable-foo will still be ignored if
   there is no fallback path and pkg-config is not installed.

One issue with this is that if pkg-config is installed and the package
foo is not, it will still check if -lfoo works. As not all pkg-config
implemenations can be trusted to work even if they exist this seems
unavoidable.
2017-12-30 20:56:40 -08:00
orbea
7ab2254fc4 qb: Fix --disable-oss for openbsd.
If --disable-oss is passed to configure we should not check for any oss support.
2017-12-30 15:45:19 -08:00
orbea
1b404afc86 qb: Include /usr/local/lib for *bsd too 2017-12-29 16:06:04 -08:00
Twinaphex
22062fdf91
Merge pull request #5991 from orbea/gl
qb: Include /usr/local/include for bsd based systems.
2017-12-29 21:08:41 +01:00
orbea
6ab2244a43 qb: Do not check for x11 when using --disable-x11. 2017-12-29 11:25:35 -08:00
orbea
a34555c9a9 qb: Include /usr/local/include for bsd based systems.
This resolves an issue where the default freebsd compiler does not
include /usr/local/include which contains important headers such as
GL/gl.h and results in the check_header function failing to find them.

Unfortunately pkg-config/pkgconf will not work here for two reasons.
1. It does not seem able to actually check for gl.h which RetroArch
explicitly needs.

2. Not all systems have a pkg-config implementation so we will still
have to fall back to checking for gl.h...

Fixes https://github.com/libretro/RetroArch/issues/5958
2017-12-29 10:23:14 -08:00
orbea
eaccab5237
Revert "config.libs.sh: reintroduce HAVE_X11 check" 2017-12-29 18:04:07 +00:00
Conn O'Griofa
010aa8061f config.libs.sh: reintroduce HAVE_X11 check
Current behaviour would force check_val to check for X11 even if explicitly disabled.

Fixes Raspberry Pi build (which requires --disable-x11).
2017-12-29 02:10:19 +00:00
orbea
a2032a56a0 qb: Allow using the system flac. 2017-12-27 09:51:19 -08:00
Twinaphex
61b7b2e590
Merge pull request #5968 from pattheaux/leds
Leds
2017-12-27 18:01:33 +01:00
orbea
e07ce68e7f Makefile.common: Clean up zlib check. 2017-12-27 08:38:47 -08:00
Ian House
8178e21cda Merge branch 'master' of https://github.com/libretro/RetroArch into leds 2017-12-27 11:14:35 -05:00
Ian House
aa7c289708 Added an LED interface and a Raspberry Pi GPIO implementation 2017-12-27 11:11:08 -05:00
orbea
c63011db71 qb: Disable all miniupnpc support with --disable-miniupnpc. 2017-12-26 16:18:47 -08:00
orbea
ac044c47ee qb: HAVE_MINIUPNPC is needed for builtin miniupnpc 2017-12-26 00:52:04 -08:00
orbea
9e7882ec96 Makefile.common: Clean up the miniupnpc check 2017-12-26 00:15:54 -08:00
orbea
1ddcc7be82 Ifdef the broken dbus code better. 2017-12-16 05:19:05 -08:00
Twinaphex
54bf818372
Merge pull request #5810 from orbea/systemd
qb: Make systemd support configurable.
2017-11-27 23:57:15 +01:00
Zoltán Mizsei
4f46402afb Haiku build fix 2017-11-27 22:33:58 +01:00
orbea
4463c0c815 qb: Make systemd support configurable. 2017-11-27 13:25:20 -08:00
orbea
fadea3730f qb: Silence some shellcheck warnings. 2017-11-27 10:03:13 -08:00
Brad Parker
28c6237b47 FreeBSD: support libusb hid input driver 2017-11-27 11:30:29 -05:00
orbea
a78f72ccd3 qb: Used explicit word splitting to silence shellcheck warnings. 2017-11-26 19:08:56 -08:00
orbea
5361950d1c qb: Use printf and safer quoting in the check_pkgconf and check_header functions. 2017-11-26 14:19:29 -08:00
orbea
fec63ae8ed qb: Set configure paths without unset variables. 2017-11-26 12:26:33 -08:00
orbea
631f0c4a8b qb: Create a check_val function for the no pkg-config fallback path. 2017-11-25 17:42:41 -08:00
orbea
fc5f04a762 qb: Define $2_LIBS in the check_lib function. 2017-11-25 15:27:01 -08:00
orbea
e0eb2b8a31 qb: Add $PKG_CONF_USED to the check_lib function to help avoid undefined referenecs. 2017-11-25 13:52:52 -08:00
orbea
bc4d14149a qb: Clean up empty defines in config.mk 2017-11-25 12:27:41 -08:00
orbea
82db21ed0b qb: Fix undefined references to EGL without pkg-config. 2017-11-25 11:05:40 -08:00
orbea
51dfbd98b1 qb: Prefer pkgconf over the legacy GNU pkg-config. 2017-11-24 12:12:56 -08:00
orbea
06f10d1368 qb: Clean up qb.comp.sh 2017-11-24 12:12:56 -08:00
orbea
892c6b864a qb: Combine the add_include_dirs and add_library_dirs functions 2017-11-24 10:22:57 -08:00
orbea
cf45945aa8 qb: Combine the check_switch_c and check_switch_cxx functions. 2017-11-24 08:21:38 -08:00
orbea
0c9308cd87 qb: Remove unused and redundant check_code_c and check_code_cxx functions. 2017-11-24 08:21:38 -08:00
orbea
fbbaf7d5b1 qb: Check which c language is being used in its own function. 2017-11-24 08:21:12 -08:00
orbea
f952f392b8 qb: Use printf and better quoting in the check_lib function. 2017-11-24 07:16:33 -08:00
orbea
1ca43bd819 qb: Combine the add_define_header and add_define_make functions. 2017-11-23 18:36:19 -08:00
orbea
6351e21d9e qb: Turn $CONFIG_DEFINES from a temporary file into a variable. 2017-11-23 17:40:28 -08:00
Twinaphex
2d3aa5b917
Merge pull request #5760 from orbea/config.h
qb: Rewrite the create_config_header function to use printf instead of echo.
2017-11-24 02:21:12 +01:00
orbea
2fb0cb79ec qb: Turn $MAKEFILE_DEFINES from a temporary file into a variable. 2017-11-23 14:53:39 -08:00
orbea
ca534ffa56 qb: Rewrite the create_config_header function to use printf instead of echo. 2017-11-23 14:07:37 -08:00
orbea
d3139754bc qb: Rewrite the create_config_make function to use printf instead of echo. 2017-11-23 10:30:59 -08:00
Twinaphex
3c0dc87c42
Merge pull request #5750 from orbea/build
qb: Honor the --build option.
2017-11-23 17:10:23 +01:00
orbea
c4dd3bbdce qb: Fix undefined udev references without pkg-config 2017-11-23 07:18:33 -08:00
orbea
e82502f80a qb: Document syntax better. 2017-11-22 15:52:57 -08:00
orbea
8ab308d9dd qb: Honor the --build option.
This makes some distros happy even if it does nothing.
2017-11-22 15:40:15 -08:00
Alcaro
f0becad9d9 Document this one's syntax 2017-11-22 23:46:23 +01:00
orbea
b744f2a2c9 qb: Add a function to find executables in the $PATH 2017-11-20 22:06:50 -08:00
twinaphex
5b3c1edbef Revert "qb: Add some safe defaults."
This reverts commit 0114c7b0c4.
2017-11-19 17:29:09 +01:00
Twinaphex
1cefef4d4f
Merge pull request #5711 from orbea/IFS
qb: Don't set IFS.
2017-11-19 11:52:30 +01:00
orbea
0114c7b0c4 qb: Add some safe defaults. 2017-11-18 15:03:44 -08:00
orbea
6dc32ffe17 qb: Don't set IFS. 2017-11-18 14:51:53 -08:00
orbea
bf8863d360 qb: Add a function to print warning or exit messages. 2017-11-18 02:54:58 -08:00
orbea
84f61a8b46 qb: Remove old submodule tests.
RetroArch no longer uses submodules for various good reasons and now uses git subtrees instead.
    As a result these files will always exist and these tests will always be true.
2017-11-18 02:31:47 -08:00
Twinaphex
29b5e09b24
Merge pull request #5702 from orbea/zsh
qb: Fix --enable-* options for zsh.
2017-11-18 10:53:17 +01:00
orbea
21ae4a29a1 qb: Fix --enable-* options for zsh. 2017-11-18 01:21:29 -08:00
orbea
75e6ad53b6 qb: read without -r will mangle backslashes. 2017-11-17 18:42:49 -08:00
twinaphex
67fea30406 Remove remaining references to HAVE_FBO 2017-11-13 08:55:41 +01:00
orbea
f2d70664a3 qb: Better use of rm. 2017-11-06 07:25:04 -08:00
orbea
10722920ed qb: Remove old commented code.
'echo -n' is not portable and should not be used even if it works on osx.
'printf' would be far preferable, but there really isn't any need.
2017-11-05 18:44:45 -08:00
orbea
595e69d34d Fix https://github.com/libretro/RetroArch/issues/5636 2017-11-01 11:32:41 -07:00
orbea
48db41a112 qb: Combine the check_lib and check_lib_cxx functions. 2017-10-27 14:53:24 -07:00
orbea
b0d9a5c539 qb: Don't check for strlcpy on linux. 2017-10-27 11:23:55 -07:00
Twinaphex
4f58c1a77b Merge pull request #5612 from orbea/quotes
qb: Replace extra quotes with braces.
2017-10-26 14:14:10 +02:00
orbea
0d43f9f8c7 qb: Replace extra quotes with braces. 2017-10-25 23:16:09 -07:00
orbea
91f6218913 qb: Sort set variables. 2017-10-25 22:07:50 -07:00
orbea
e13837fc18 qb: Don't use sed. 2017-10-25 17:32:29 -07:00
Twinaphex
6575cc5166 Merge pull request #5605 from orbea/test
qb: Remove poorly defined test behavior.
2017-10-25 04:27:45 +02:00
Twinaphex
a0b5a2794c Merge pull request #5604 from orbea/subshell
qb: Remove redundant variables.
2017-10-25 04:27:38 +02:00
orbea
b9a866326a qb: Remove poorly defined test behavior. 2017-10-24 19:01:36 -07:00
orbea
08dcac4b02 qb: Remove redundant variables. 2017-10-24 15:39:19 -07:00
orbea
e12d203a76 qb: Avoid using 'true' which could be a binary on some systems. 2017-10-24 12:43:40 -07:00
orbea
8884190154 qb: Print config options first in ./configure --help. 2017-10-24 09:24:56 -07:00
orbea
86bb116625 qb: Fix alignment in ./configure --help. 2017-10-24 09:24:56 -07:00
Twinaphex
cd942f1faa Merge pull request #5600 from orbea/Qt
qb: Add a description for the Qt wrapper in ./configure --help
2017-10-24 13:58:40 +02:00
orbea
affe1932a8 qb: Add a description for the Qt wrapper in ./configure --help 2017-10-23 23:32:01 -07:00
orbea
2b939ab40b qb: Use POSIX character classes instead of character ranges. 2017-10-23 21:48:37 -07:00
orbea
6ead9a09a1 qb: Explicitly set variables as a single command. 2017-10-23 16:19:16 -07:00
orbea
008a87c1ae qb: Clean up. 2017-10-22 07:44:14 -07:00
Twinaphex
3427c03aba Merge pull request #5578 from orbea/cleanup
qb: Clean up.
2017-10-22 16:00:41 +02:00
orbea
7c6dc0c8a7 qb: Clean up Darwin tests. 2017-10-21 22:58:15 -07:00
orbea
72d189da96 qb: Clean up. 2017-10-21 22:11:15 -07:00
orbea
5438eb1c6e If the --global-config-dir is not defined and --prefix is not set to /usr* add it to the --global-config-dir. 2017-10-21 21:33:18 -07:00
orbea
f1192ca8ac Fix --disable-networking.
Fixes https://github.com/libretro/RetroArch/issues/2663.
2017-10-21 19:22:14 -07:00
orbea
79ee19e2a5 qb: Clean up long lines in check_lib and check_lib_cxx 2017-10-21 14:49:26 -07:00
orbea
b733807099 qb: Remove trailing white spaces from config.mk. 2017-10-21 14:49:26 -07:00
orbea
0ff7e829f0 qb: Explicitly word split libs and extralibs 2017-10-21 14:49:26 -07:00
orbea
a943fabe1e qb: Fix $VARS for zsh. 2017-10-21 14:49:26 -07:00
orbea
514391b4d8 qb: Remove the leading whitespace from $INCLUDE_DIRS and $LIBRARY_DIRS. 2017-10-21 14:49:26 -07:00
orbea
cca4a25757 qb: path is a special variable in zsh so avoid setting it. 2017-10-21 14:49:26 -07:00
orbea
40070e2c93 qb: Find working compilers with zsh. 2017-10-21 14:49:26 -07:00
Twinaphex
5b48112379 Merge pull request #5562 from orbea/printf
qb: Don't use variables in the printf format string.
2017-10-19 13:16:11 +02:00
orbea
f50d755b45 qb: Don't use variables in the printf format string. 2017-10-18 16:05:09 -07:00
orbea
6733c37805 qb: Fix constant expressions. 2017-10-18 15:23:31 -07:00
Conn O'Griofa
b67e6dc1ee config: Raspberry Pi: use videocore pkgconfig & fix fallback detection
Recent Raspberry Pi firmware images have renamed the vendor graphics
libraries (brcmEGL, brcmGLESv2, brcmOpenVG) to distinguish from the
standard VC4 Mesa driver.

* When videocore is selected, first try to use pkgconfig for the
new library names (brcmEGL, brcmGLESv2, brcmOpenVG).
* Ensure that non-pkgconfig fallback detection also checks the new
library names.

This should resolve compile issues in stretch whilst maintaining
compatibility with jessie firmwares later than 1.20160921-1 (the
first package that includes the renamed libraries).

The PKG_CONFIG_PATH must be set in your build environment in order
for the pkgconfig to be utilized, which will be included in
the next firmware (1.20170811-2 or later).
2017-10-06 04:03:29 +00:00
Andre Leiradella
cfd4a4bdf4 Remove threads as a prerequisite for cheevos 2017-10-03 21:05:23 +01:00
twinaphex
61810cfd82 (Xaudio2) Get rid of variadic macros so that it can compile as C89 2017-09-28 17:18:17 +02:00
Brian Koropoff
a536532e30 Unleash the compressed hunks of data 2017-09-17 22:04:29 -07:00
twinaphex
f67641c52c (libchdr) Can't have C++ comments
(config.params.sh) Have to disable FLAC for now; still doesn't
compile for Windows due to fseeko/ftello errors
2017-09-17 18:36:55 +02:00
Brian Koropoff
4ead5da18a deps: import libFLAC
This is needed by libchdr
2017-09-17 02:02:04 -07:00
radius
fe8a0657b4 add input_mapper scafolding 2017-09-11 00:20:20 -05:00
Rob Loach
c61f163454 Fix 7zip dependency include directory
Found `./decompress/7zip/`, which doesn't exist. It may be at [`deps/7zip`](https://github.com/libretro/RetroArch/tree/master/deps/7zip) instead.
2017-09-10 11:06:48 -04:00
Conn O'Griofa
87b743969d Revert "config.lib.sh: use brcm vg/egl/glesv2 packages on RPI" 2017-08-21 04:20:40 +01:00
Conn O'Griofa
7aa05153eb config.lib.sh: use brcm vg/egl/glesv2 packages on RPI 2017-08-20 11:21:36 +01:00
Conn O'Griofa
97d98b87ce config.libs.sh: fix Raspberry Pi library names 2017-08-20 06:42:59 +01:00
gizmo98
e79ed86e38 config.lib.sh: add missing $ 2017-08-19 17:03:38 +02:00
gizmo98
1bc0319f79 Broadcom VC4: Add Videocore config option
Add option to disable Videocore autodetect so VC4 open source driver
can be used.
2017-08-19 17:03:01 +02:00
Romain Tisserand
cbe2d9a941 Preliminary MOD/S3M/XM support through ibmx library (part of micromod repository) 2017-08-04 15:05:29 +02:00
Charlton Head
4ad5f67663 TinyALSA support 2017-06-23 20:44:00 -05:00
Zoran Vuckovic
129151d5fc add wasapi audio driver 2017-04-11 00:24:37 +02:00
twinaphex
2074d25441 Make STB_VORBIS optional 2017-02-23 05:56:31 +01:00
twinaphex
f8576ca88c Fix C89_BUILD again 2017-02-21 19:56:43 +01:00