Commit graph

162 commits

Author SHA1 Message Date
Bob Wilton
2846859508 Minimal changes required to compile ES for WIN32 2023-08-07 22:21:34 -04:00
Stefan
1b239144a1
renderer: Add build option for OpenGL 2.1
Add option USE_GL21 which can be activated with „-DUSE_GL21=On“. Use
OpenGL 1.4 by default for backward compatibility.
2022-06-12 12:20:22 +02:00
Jools Wills
7e02b26215
Merge pull request #652 from hhromic/modernise-findsdl2
Modernise SDL2 CMake find module
2022-05-22 20:40:43 +01:00
cmitu
b99e8c21ba RPI support: add a separate omxplayer build option
Modified the build options and source files to enable `omxplayer` for video previews only when the `OMX` option is used.
Updated the build instructions on RPI accordingly and added some notes about the deprecation of the BRCM GPU drivers in RasPI OS 'Bullseye'.

Previously, the `RPI` build option would be used to add both RPI specific audio settings/VRAM limits AND add `omxplayer` support. However, `omxplayer` does not work with the RPI KMS video driver (`vc4-kms-v3d`) or with a 64bit RPI system, due to the lack of OpenMAX (OMX) API support.
The new RasPi OS ('bullseye') has made the KMS driver the default [1] and doesn't offer `omxplayer` anymore (considered deprecated [2]).

Splitting the OMX support from the RPI option allows to set some default values for RPI systems without automatically adding the `omxplayer` bits.

[1] https://www.raspberrypi.com/news/raspberry-pi-os-debian-bullseye/
[2] https://github.com/popcornmix/omxplayer/commit/1f1d0ccd65
2022-05-07 17:54:05 +01:00
Tomas Jakobsson
29223d9a2e ProfilingUtil 2021-05-06 08:52:41 +02:00
cmitu
06d2052a7a cmake: use the non-glvnd version of GL libraries
Changed the CMP0072[1] `cmake` policy to use `libGL` for OPENGL_LIBRARIES,
instead of `libOpenGL`, provided by `libglvnd` (default from `cmake` 3.11).

This should fix situations where there the OpenGL implementation doesn't have
`glvnd` support and `emulationstation` gets linked to the `glvnd` library.`libSDL2`
dl-loads a different `libGL` and this results in a non-working GL context.

[1] https://cmake.org/cmake/help/git-stage/policy/CMP0072.html
2021-01-22 04:02:30 +00:00
Jools Wills
dd22c0d65e CMakeLists.txt - fix detection for mali boards by re-adding paths to check for libMali.so
No need to use HINT_GLES_LIBNAME as GLESv1_CM and GLESv2 libs symlink to the mali lib
2020-11-12 21:33:54 +00:00
Jools Wills
c9dadf004b CMakeLists.txt - Remove RPI hack overriding HINT_GLES_LIBNAME as it isn't required - we shouldn't override any HINT_GLES_LIBNAME here. 2020-11-12 21:33:12 +00:00
Jools Wills
9c4949a168 link with brcmGLESv2 for GLESv1 on the RPI - fixes black screen / no output 2020-11-03 19:56:32 +00:00
Jools Wills
0384685f05 cosmetic - indent to 4 spaces 2020-11-03 19:54:52 +00:00
cmitu
d5d3cbfc4b cmake: add GLES20 renderer build support
Added support for the GLESv2 renderer to the CMake build.

* Refactored the OpenGLES detection for both versions.
     Platform detection is done only in the main project file, settings hints for the GLES headers/libraries detection in the corresponding 'Find' cmake modules.
* Simplified the additions of directories for includes/libraries, based on the same hints added during detection.

Notes:

* GLESv2 is the default for GLES-enabled systems.

* For the Raspberry Pi systems, both the legacy (BRCM) and the new (MESA) GLES libraries can be present.
 The selection can be done via the `USE_MESA_GLES` CMake option (default: Off)
 By default, the legacy (BRCM) libraries/headers are used, without any special configuration.
 For the Pi4, the GL renderer/system must be explicitely selected
 ** select the OpenGL 2 renderer with `-DGL=On`
 ** select the GLESv2 renderer with `-DUSE_MESA_GLES=On`

* the GLESv1 renderer can still be forcibly enabled using the `FORCE_GLESv1` build option, for platforms where GLESv1 is the only option.

Minor - set the start-up project in MS Visual Studio to 'emulationstation'.
2020-06-11 04:28:59 +01:00
Tomas Jakobsson
1a1618debd Add an OpenGl 1.4 renderer ( should fix the issues some had with ancient stoneage GPU's ) 2020-06-08 09:11:28 +02:00
Hugo Hromic
4226cccf7a Modernise SDL2 CMake find module
* imported from: https://gitlab.com/aminosbh/sdl2-cmake-modules
* has support for imported targets
* also use correct includes/libraries variable names for SDL2
2020-04-12 09:56:21 +01:00
Tomas Jakobsson
0dbd146e88
Merge pull request #628 from cmitu/cmake_debug
cmake: define _DEBUG for Debug builds
2020-01-05 19:37:23 +01:00
Cristi Mitrana
92db741c53 Define _DEBUG for Debug builds 2020-01-03 12:17:43 +02:00
5schatten
2e6b632f50 CMakeList.txt: added option to conditionally enable libCEC 2019-08-29 14:12:05 +02:00
Tomas Jakobsson
a02a747c50 Redid the entire Renderer
Made all components render using triangle strips
2019-08-25 15:45:22 +02:00
Cristi Mitrana
0903bb36ff Added an option to force the compilation of Raspberry Pi specific bits.
Useful when the VC4 legacy driver is not used for GLES, but usage of 'omxplayer' is still desired.
2019-07-17 15:00:43 +03:00
5schatten
48663c0b29 CMakeList.txt: added CMAKE_FIND_ROOT_PATH to detect RPi & Mali OpenGLES libs & headers 2019-04-16 17:29:12 +02:00
acrummyidea
44395f5f45 Adding new scraper GamesDBJSONScraper. The scraper uses the new GamesDb JSON API.
On the first run it downloads a few resource files needed to intepret the otput of
game search api calls these resources go into ~/.emulatiostation/scrapers
The resource files include the list of developers and the list of publishers.
To update the lists simply delete the files and relaunch emulationstation.
Searching a game by id (GamesDB id) is done as before by manually edit the search
query and query for "id:<gameId>".
2019-02-07 21:08:11 -05:00
hissingshark
2adce66ac4 Vero4k autodetection and volume mixer fix 2018-07-26 20:14:11 +01:00
Tomas Jakobsson
421e4a23df The final traces of boost has been eliminated 2018-01-30 19:21:09 +01:00
Tomas Jakobsson
b6b6f73a24 Log everything CEC does
Only support libcec4
2017-11-29 21:00:36 +01:00
Tomas Jakobsson
dc4f7e4cf2 Fix for building ES on Windows using cmake 2017-11-17 12:42:33 +01:00
Tomas Jakobsson
074e22ee37 CEC Support 2017-11-08 23:22:15 +01:00
Tomas Jakobsson
d3966da2b7 Replace boost::locale with std::locale 2017-10-30 10:35:58 +01:00
Tomas Jakobsson
73a2f6b716 Replace Eigen with "inhouse" vector and matrix math 2017-10-28 22:25:01 +02:00
Conn O'Griofa
d6adf6b71e CMake: use correct Raspberry Pi library names & fix generic GLES support
* For BCMHOST build, use brcmEGL / brcmGLESv2 libraries, and don't look at
  Mesa includes (so libraspberrypi-dev and libgles*-mesa-dev can coexist).
* If overridden via -DGLES=On, don't present vendor includes to build to
  make absolutely sure that the Mesa includes are used.

Fixes stretch vendor library building & generic Mesa GLES compatibility.
2017-10-06 03:03:12 +00:00
gizmo98
43c9043856 Add options for GL and GLES selection
Fallback to autodetect or OpenGL Desktop if no option is selected.
2017-08-19 14:33:50 +02:00
Jools Wills
bd348f03a2 added additional libmali.so search path for the tinker board. 2017-06-08 15:58:22 +01:00
Jools Wills
4cc0ced851 use -O2 2017-04-04 04:54:04 +01:00
Jools Wills
82ddaa1813 added additional search path for libmali.so (needed on Ubuntu 16.04 / Odroid XU4) 2017-03-30 21:47:11 +01:00
D. Polders
ac5e3ad95f System Carousel feature, now with only a single commit! 2017-03-25 21:09:12 +01:00
D. Polders
6cb81ab1af Small changes to facilitate building on Windows platform using VS2015 2017-03-16 22:44:56 +01:00
Jools Wills
a97a8a3090 check for libMali.so in additional locations 2016-12-15 17:57:20 +00:00
fieldofcows
25e1067794 Add video view that is based on detail view but allows themes to include a video preview of the selected game along with a marquee image 2016-12-12 09:34:01 +00:00
Aloshi
08c2c561ca Merge branch 'master' of https://github.com/Aloshi/EmulationStation 2015-01-10 19:04:16 -06:00
gizmo98
3c322f55c4 CMakeList.txt: add oLinuXino/Mali 2015-01-06 21:41:00 +01:00
Aloshi
cefe9b6287 Merge branch 'utf8' into unstable 2014-11-23 09:55:57 -06:00
Alec Lofquist
dab1a12bc0 Require boost.locale. 2014-10-18 16:51:48 -05:00
qjcg
147baca316 Remove ${SDL2MAIN_LIBRARY} reference, fixes #205 2014-08-01 19:49:10 -04:00
Aloshi
bc72990f39 Changed 'emulationstation' folder to 'es-app' because I forgot executables don't have extensions on Linux
Half of the ES code has been missing for 5 days because I am incompetent
2014-06-25 12:02:36 -05:00
Aloshi
dbdbcde6cd Renamed folders to match their projects properly. 2014-06-20 20:03:05 -05:00
Aloshi
98120f9ecd Split into subprojects (external, core, es).
Removed relative paths in #includes.
Changed ViewController to a singleton, removing it from the Window class.
2014-06-20 01:40:36 -05:00
Aloshi
a093890604 Fixed system info band displaying when there was one game.
Fixed system info band not appearing on startup.
Fixed CMakeLists.txt including CPack twice.
2014-06-05 16:23:07 -05:00
Aloshi
ae129c5325 Merge branch 'unstable' of https://github.com/Aloshi/EmulationStation into unstable 2014-06-03 18:31:46 -05:00
Aloshi
8c0a40cebb Refactored scraper code to support multiple requests, even multiple requests mixed between scrapers. 2014-06-03 18:30:03 -05:00
Alec Lofquist
1ff2c197ae Added CPack settings to CMakeLists.txt. 2014-06-03 13:57:44 -05:00
Alec Lofquist
f7f51c5702 Added "make install" to generated Makefile. 2014-06-02 20:33:59 -05:00
Aloshi
cf269641fc Renamed XMLReader.h/.cpp to Gamelist.h/.cpp.
Since it does more than, yknow, read XML.
2014-06-01 12:57:20 -05:00