Commit Graph

885 Commits

Author SHA1 Message Date
Thiago Kenji Okada
c5bfd52159
Add CORE_INFO_DIR to ./configure (#14761)
* Add missing FILTERS_DIR definition to qb/config.libs.sh

* Add CORE_INFO_DIR configuration option
2022-12-23 14:40:48 +01:00
Thiago Kenji Okada
894c44c5ea
Add more flags to ./configure (#14756)
* Allow disabling "Update Core Info" from Online Updater

* Add ASSETS_DIR as an alternative to DEFAULT_DIR_ASSETS

* Add FILTERS_DIR configuration option

* Fix other platform_unix.c platforms

* Conditionally use ASSETS_DIR/FILTERS_DIR
2022-12-23 01:28:57 +01:00
LibretroAdmin
f5133d8cc4
Revert "Add Xdelta support for softpatching (#14706)" (#14743)
This reverts commit aaad220836.
2022-12-19 03:29:46 +01:00
Jesse Talavera-Greenberg
aaad220836
Add Xdelta support for softpatching (#14706)
* Add xdelta in deps

* Include <assert.h> in xdelta3.h

- Otherwise the static_assert calls can fail

* Build xdelta3 in Makefile.common

* Add xdelta support to the softpatching infrastructure

- The patching itself isn't fully implemented yet

* Adjust how xdelta3.h checks the sizes of some types

- Now checks max values instead of relying on autotools

* First crack at xdelta softpatching support

- There may be undiscovered edge cases or bugs

* Add xdelta in deps

* Include <assert.h> in xdelta3.h

- Otherwise the static_assert calls can fail

* Build xdelta3 in Makefile.common

* Add xdelta support to the softpatching infrastructure

- The patching itself isn't fully implemented yet

* Adjust how xdelta3.h checks the sizes of some types

- Now checks max values instead of relying on autotools

* First crack at xdelta softpatching support

- There may be undiscovered edge cases or bugs

* Remove trailing commas from the enums I modified

- C89 doesn't allow them

* Remove stray whitespace

* Adjust SIZE macros in xdelta3.h

- Move them outside the XD3_USE_LARGEFILE64 block
- Add more SIZE declarations
- Make SIZEOF_UNSIGNED_LONG_LONG contingent on the presence of ULLONG_MAX

* Add some RARCH_DBG calls for xdelta patching

* Enable support for xdelta's secondary compressors

- Necessary for some patches

* Fix some format specifiers

* Remove unnecessary files from xdelta

* Include xdelta3.h with a relative path

* Add xdelta3 headers to HEADERS variable

* Gate Xdelta support behind HAVE_XDELTA

- HAVE_XDELTA is on by default
- HAVE_PATCH is still required for HAVE_XDELTA to be meaningful
- Support is mostly contingent on the availability of LZMA
- Anything modern should be okay
- Legacy platforms (e.g. DOS) may need to have Xdelta support disabled
- At least until some other solution can be found

* Disable HAVE_XDELTA on platforms where the build recently failed

- These come from looking at the failed builds on GitHub
- These are guesses, and may turn out to be wrong

* Fix a potential memory leak

- Whoops, looks like I need to call two cleanup functions
- xd3_close_stream exists separately from xd3_free_stream

* Split the --help printout for --xdelta into its own strlcat call

- GCC was complaining about #ifdefs within macro arguments being non-portable

* Fix some incorrect printf format specifiers

* Modify Xdelta to adhere to C89

- It's mostly using RetroArch's INLINE macro instead of the inline keyword
2022-12-19 01:10:04 +01:00
flk
d6cbd8a5a9
config.libs: dont fail if OSDependent/OGLCompiler libraries are not present (#14612)
glslang no longer installs them separately, and all needed
functionality has been merged into glslang shared library itself.

This wasn't a problem previously as they were still provided
as static libraries but in latest glslang they no longer are:
https://github.com/KhronosGroup/glslang/commit/7cd519511c32d7e86d901c7ed231cb84c652d18

Signed-off-by: Markus Volk <f_l_k@t-online.de>

Signed-off-by: Markus Volk <f_l_k@t-online.de>
2022-11-11 15:11:17 +01:00
LibretroAdmin
bafbbc8a1a Don't bake in OpenAL and libcaca by default unless explicitly enabled
with configure switch.
Reasons:
* Libcaca video driver support seems half baked, can't even render RGUI
right now on Windows. Not worth the troubleshooting for regular users or
the DLL linkage (which adds to filesize) until further developed
* Better native audio driver alternatives exist for OpenAL on both Windows and Linux
2022-09-06 17:40:36 +02:00
LibretroAdmin
bbdc6d36da (qb) Disable HAVE_HID by default for now for Windows/Linux as long
as there are no working backends for both
2022-09-04 02:28:56 +02:00
LibretroAdmin
5d36d80318 Fix compilation with ./configure --disable-builtinglslang - was
missing linking against -lMachineIndependent and -lGenericCodeGen
static libs
2022-09-03 04:04:00 +02:00
Cthulhu-throwaway
20c4407928
Add HAVE_IFINFO macro (#14265) 2022-08-01 07:51:02 +02:00
Autechre
4c3a4d66df
Cxx buildfixes (#13803)
* CXX_BUILD buildfixes
* (D3D11) Buildfixes for CXX_BUILD
* (Linux/qb) Disable KMS for Linux when building for C89, headers use inline which is not
available for C89
2022-03-30 17:30:20 +02:00
Mats
249241d7cd
(steam) Initial integration with Steam API w/ mist (#13710) 2022-03-09 15:05:07 +01:00
twinaphex
d2ab5d05ee Remove GONG remnants 2022-02-19 05:33:32 +01:00
Colin Kinloch
b2527b43e8
(Wayland) Show window early to get screen info (#13591)
* (Wayland) Show window early to get screen info

* Report current monitor size on initial get_video_size call

* Fullscreen to monitor selected in settings

* Fullscreen on current monitor when setting is set to automatic

* Fallback to shm_open when memfd_create is not supported
2022-02-18 19:59:41 +01:00
Vladimir Serbinenko
4e24fb3d01
Add osx-ppc compilation for frontend (#13532)
* Fix old osx condition

Current code assumes that osx < 10.12 is equivalent to ppc osx. It's not
true as Leopard x86 is still < 10.12 but not ppc. As xcode compiles fat
binaries it includes osx x86 and compilation fails.

* Disable crtswitchres when no c++11 is available

Crtswitchres altually needs c++11. Since it's not that important to make
it compatible with lower c++, just disable if no c++11 is available

* Don't use firstObject on old Mac OS X.

It was introduced in 10.6, so on old ones just implement it ourselves

* Compile osx-ppc frontend

* osx-ppc: Build a fat binary

On 10.6 i386 xcode apparently refuses to build a pure ppc.
Settle for a fat binary.
2022-01-24 16:22:07 +01:00
Colin Kinloch
f0392474f2
(Wayland) Add libdecor for client side decoration (#13397) 2021-12-24 14:20:45 +01:00
Autechre
3b1a1ac8da
Remove miniupnpc dependency (#13340)
* use custom libretro-common UPNP

* Remove miniupnpc
2021-12-09 05:52:42 +01:00
Autechre
5f49899343
Bluetooth refactor (#13266)
* Use HAVE_BLUETOOTH ifdef to strip out this code when not defined

* Split up bluetooth code into its own file
2021-11-21 20:44:08 +01:00
twinaphex
28cac5c5a4 Add HAVE_CORE_INFO_CACHE - disable this for Steam build 2021-10-14 15:57:28 +02:00
twinaphex
a785bd8d80 Remove HAVE_STRIPES - unfinished and unusable menu driver right
now
2021-08-31 17:50:24 +02:00
jdgleaver
adfabcb742
Fix '--disable-crtswitchres' configure option (#12500) 2021-06-07 17:39:18 +02:00
Ben
4b2f27eff8 Ver 0.9.2 SR2 (Switchres API) Implimantation
Fixed SR close match refresh bug.
Added menu high resolution option.
Fixed desktop restore bug cuusing endless resolution change requests.
Fixed file conflicts
Added destop restore resolution back in for manu only.
Pulled Switchres fixes.
Added better PI rsolution support.

Ver 0.7 SR2 (Switchres API) Implimantation

Removed HH experimetal check. This is better done via teh switchres.ini at present.
Fixed refresh rate bug. Now new resolution and refesh is added correctly.
Removed SR deinit from menu restore. Meanu now stays at last content resolution.

Ver 0.6.2 SR2 (Switchres API) Implimantation

Fixed super resolution bug casuing abnormal video size and aspect ratio
Fixed logging issue casuing seg falts on RA exit

Ver 0.6 SR2 (Switchres API) Implimantation

Ver 0.2 SR2 (Switchres API) Implimantation

Added forced super resolutions.
Added Multi-monitor/monitor selection support.
Added desktop resolution restore when switching back to menu only.
Added new menu items for 31KHz standard and 120hz monitor profiles.
Added new menu item INI. load monitor profile from switchrss.ini.
Fixed winraw driver. Coordinates new refreshed after a resolution change.
Fixed Menu aspect ratio in super resolutions.
Removed static glabals. These have been added to videocrt_switch struct.

Ver 0.1 SR2 (Switchres API) Implimantation

Removed old CRTSwitchRes method. Added new SR2 API implimantaion.
Resolution swithcing is now done by switchres libs. Both Linux and Windows
working with native and super resolutions. Working multi-monitor support
with monitor index selection. Working 31KHz support with standard and 120Hxz
modes. The monitor index selection is still done via the RA UI. Only choose
native and 15KHz form the CRT options in the RA UI as all options are now set
in the switchres.ini. All other CRT optoins in the RA UI currently do nothing.

Added SR wrapper to fix compile issues. Added back RPi functionality

Fixed windows resize/scaling issues on resolution change

Thanks @Calamity no more need for crt_switch_driver_refresh()

Fix broken case after prevous commit

Monitor preset options 15/31KHz now active. Added new meu option.

Moitor persets can now be choosen fom the RA UI. 15KHz and 31KHz will set
arcade_15 and aracde_31 respectivly. New option INI, if this is chosen your
monitor preset will be selected from your switchres.ini file.

Added 3KHhz, 120Hz. for old RA users. Renamed 31KHz to 31 KHz,  Standard

Fixed winraw input coordinates after switching resolution.

Code cleanup

Fixed menu aspect ratio issue

Added menu resolution restore after closing content

Fixed aspect ratio after menu resolution restore.

code clean up

Fxed menu Resulition Restore Aspect Ratio. When SR uses non integer scalled resolution.

super width bug with restoring menu resolution fix

added super resolution check after setting desktop resolutoion variables

when menu active only sr_deinit() used to restore desktop mode.

Fixed menu sr_deinit bug. now setting sr_active false

Removed static globals, added them to video_switch struct

Fixex compile bug due to comment //

Fixed compile issues doe to c++ comments in teh switchres_wrapper.h

Temporarily removed SR2 logging to fix compile isses for c90

added logging back in. Removed support for winnt and osx

Added define for C89. Disabled SR if defined C89

Removed all RA compile fixes fro C89 C90 etc. Swithing now working again.

Put Switchres behind HAVE_SR2. HAVE_SR2=no by default. --enable-sr2

Ver 0.5 SR2 Implimentation.

Ver 0.4 SR2 Implimantation.

Bake SR inside RA

Removed temporary log files

Disable switchres when C89/C99 builds.

Removed C89 and C90 checks for SR

Fixed switchres_wrapper.h location

Ver 0.3 SR2 Implimenation

Dissable logging for C89 __STDC__

Fix For RPi

fixed missing EOL

fixed RPi function definition

added vidrocrt_switch stuct to RPI funcion

fixed xoffset for RPi

Removed old RPi function call

SR disabled for videocore until VC4 switching ported

Reverted back to state 5c8a56c Bake SR inside RA

Use native win32 api for threads.

Fix static lib linking
LIBERROR would be defined twice otherwise + improper function names prefixed by __imp_

Added lidstc++ to makefile.common for switchres

Fixed RPi switching. Disabled Switchres for videocore unill it is ported.

removed RAA.log. Should not exist

Added check for when SR fails to set mode with an aspect ratio fix.

added video driver re init for RPi

GB, GBA and GBC core check, adjusted reseolutions and scale. Please turn on integer scalling in the RA UI

Added logas back in. Checking STDC verstion >= C11

Fixed c89 for loop declaration.

Code clean up. Added new functions

Fix resolution switching bug introduces with HH code clean up.

Fixed menu restore bug on closw content after code clean up

Moved SR logging to relevant RA logs

Update makefile. Checks for X11 and xrandr

fixed makefile

Use native win32 api for threads.

Fix static lib linking
LIBERROR would be defined twice otherwise + improper function names prefixed by __imp_

Update switchres_wrapper.* header comments

Update year copyright

DRMKMS: build only if libdrm has the required version

XRANDR: build only if xrandr is available

Simplified maklefile

Fixed RPI compile error with unsued functions.

As before

Disable Griffin. No switching support available. Never has been

Removed log file 1

Added Win32 static define

Added SR source

Removed Videocore check on destroy SR

Moved SR deinit to trigger earlier on RA exit.

Fixed compile error after upstream rebase

Fixed aspect ration bug cused by super resolutions. Temporarily disbabled SR logging

Re inabled runtim eSR loggind. Disableed all RARCH logging on retro_deinit_drivers

Removed srdeinit from menu restore. Menu stays in current reolution until a fix can be found

Fixed refresh rate changes when no reolution change is detected.

Forgot to add teh resolution cahge in with the refresh change oops

Fixed endless no detection log.

Removed HH check. This can been better adjusted using the switchres.ini

fixed compile issue

Added better PI crt switching and fixed typo

Pulled Swicthres fixes. Updated desktop restore resolution.

removed unused makefile

Lockec menu refresh to 60hz

fixed missing new line

Fixed file conflicts

Forced 640x480@60 for menu

Added high resolution menu option

Removed item logg checker

Fixed typos

Removed unused functions

Fixed SR close match refesh bug.

Fixed typo
2021-06-04 08:32:56 -07:00
Christian_Haitian
74d9f976a8 Add wifi configuration menu
Enable with --enable-wifi during
configuration before make.
Credit to valadaa48 for the
code and configuration.
2021-05-31 02:20:34 +00:00
Norman Jordan
528af55abd Adding a generic queue and linked list.
Both accept (void *) values. Also added some unit tests using CHECK.
2021-05-05 10:41:13 -07:00
twinaphex
cbec423413 Revert "Add git_version switch - to disable Git version, do"
This reverts commit c9b7122a08.
2021-04-06 11:22:21 +02:00
David G. F
b830b33cf1
Rewrite commands and add new command type (#12233)
* (OSX non-Metal build) Set disable execute page protection

* Rewrite commands and add new command type

This moves commands to a separate file and creates a consistent
interface for them. It is now possible to use multiple command
interfaces simultaneously (stdin, network and UDS).
Implemented a new interface for Lakka, UDS based (so Linux only). This
allow other Lakka servies to send certain commands to Retroarch in a
secure and reliable way.

Co-authored-by: twinaphex <libretro@gmail.com>
2021-04-05 19:55:59 +02:00
twinaphex
b70217b7fc (Mac) Add CoreAudio3 for Metal x64 and ARM64 builds on buildbot 2021-02-17 05:20:51 +01:00
liushuyu
8132303d4f
(FontRenderer/FreeType) Use fontconfig to select fonts if available 2021-01-30 18:49:47 -07:00
Autechre
a49b02c44b
(Mac) Makefile changes for supporting Metal build (#11929)
* (QB) Add rule for Metal - define HAVE_COCOA_METAL for now
when building for Metal, and HAVE_COCOA for non-Metal build

* Make necessary changes to Makefile.common and qb/config.libs.sh:
- Disable OpenGL for now for Metal build
- Take Metal conditional out of OpenGL block in Makefile.common

* (Metal) Header fixes for compiling without Xcode/Griffin

* (Mac) Some buildfixes for non-Xcode building

* (cocoa_common.h) Restructure to no longer use -DOSX

* (Apple) More buildfixes

* (Apple) Cleanups
2021-01-22 22:20:38 +01:00
Autechre
21a1275966
(QB) MacOS X 10.5's toolchain does not support extra languages, (#11917)
so disable HAVE_LANGEXTRA. We can later make this more generic
by checking for specific GCC versions as a cutoff point for
HAVE_LANGEXTRA support, but this will do for now
2021-01-21 06:50:35 +01:00
jdgleaver
399b29ad3f (.gitlab-ci.yml) Use MXE build container for windows-x64 builds 2020-12-31 09:42:41 +00:00
jdgleaver
e582cf9f1d OpenDingux: Add rumble support 2020-11-17 16:13:37 +00:00
Autechre
f37d38bcd4
Merge pull request #11181 from dankcushions/gles31_32
GLES 3.1 and 3.2 build parameters, and corresponding context checks.
2020-11-04 04:58:24 +01:00
twinaphex
c9b7122a08 Add git_version switch - to disable Git version, do
./configure --disable-git_version
2020-11-02 03:07:56 +01:00
twinaphex
443d2eda8e Add CXX_BUILTINBEARSSL 2020-09-20 18:27:06 +02:00
Alcaro
62e72e756b ./configure: Add BearSSL support 2020-09-20 16:58:07 +02:00
dankcushions
6aa0680110 GLES 3.1 and 3.2 build parameters, and corresponding context checks. 2020-08-11 13:47:51 +01:00
Autechre
c10d94b15e
Merge pull request #10972 from keithbowes/system-glslang-fix
Fix detection of system glslang
2020-07-06 05:07:37 +02:00
twinaphex
a3c687f0a6 Add HAVE_WINRAWINPUT 2020-07-02 06:43:36 +02:00
twinaphex
47e22d69bf Add HAVE_VIDEO_FILTER 2020-07-02 06:28:14 +02:00
twinaphex
3ee788def2 Add HAVE_DSP_FILTER 2020-07-02 02:13:04 +02:00
twinaphex
87b9c2a367 Add HAVE_REWIND switch 2020-07-01 21:04:05 +02:00
twinaphex
7862166ed2 Add back HAVE_SCREENSHOTS define from SSNES days 2020-07-01 17:47:13 +02:00
twinaphex
ae7353993a (mbedtls) should now be CXX_BUILD compatible 2020-07-01 04:12:47 +02:00
Keith Bowes
a867389fa2 Fixed detection of system glslang 2020-06-30 18:39:52 -04:00
twinaphex
69756ebd93 Add HAVE_NEAREST_RESAMPLER ifdef 2020-06-30 21:45:05 +02:00
twinaphex
223d76680a Add HAVE_CHEATS ifdef 2020-06-30 19:35:55 +02:00
twinaphex
2c62a10d6c - Fix codepaths for compiling without HAVE_RWAV
- Add back HAVE_BSV_MOVIE
2020-06-30 18:08:49 +02:00
twinaphex
bf04ac93c8 Add HAVE_RWAV 2020-06-30 17:36:03 +02:00
twinaphex
b77dd9cfe4 Add HAVE_PATCH ifdef; add patch switch support to qb 2020-06-30 15:54:31 +02:00
Barry Rowe
35f1a4af8c Added nvda dynamic loading. 2020-06-07 19:46:22 -07:00