mirror of
https://github.com/lubosz/overte.git
synced 2025-08-07 16:41:02 +02:00
Merge pull request #917 from JulianGro/gles
Fix building with GLES 3.2 on Linux
This commit is contained in:
commit
f1c9614076
3 changed files with 19 additions and 5 deletions
|
@ -41,6 +41,12 @@ endif()
|
||||||
file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/_env/EXTERNAL_BUILD_ASSETS.txt" "${EXTERNAL_BUILD_ASSETS}")
|
file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/_env/EXTERNAL_BUILD_ASSETS.txt" "${EXTERNAL_BUILD_ASSETS}")
|
||||||
MESSAGE(STATUS "EXTERNAL_BUILD_ASSETS: ${EXTERNAL_BUILD_ASSETS}")
|
MESSAGE(STATUS "EXTERNAL_BUILD_ASSETS: ${EXTERNAL_BUILD_ASSETS}")
|
||||||
|
|
||||||
|
set(GLES_OPTION "$ENV{USE_GLES}")
|
||||||
|
|
||||||
|
# Will affect VCPKG dependencies
|
||||||
|
file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/_env/USE_GLES.txt" "${GLES_OPTION}")
|
||||||
|
MESSAGE(STATUS "GLES_OPTION: ${GLES_OPTION}")
|
||||||
|
|
||||||
include("${CMAKE_CURRENT_SOURCE_DIR}/cmake/macros/TargetPython.cmake")
|
include("${CMAKE_CURRENT_SOURCE_DIR}/cmake/macros/TargetPython.cmake")
|
||||||
target_python()
|
target_python()
|
||||||
|
|
||||||
|
@ -129,7 +135,6 @@ set(BUILD_TESTS_OPTION OFF)
|
||||||
set(BUILD_MANUAL_TESTS_OPTION ${BUILD_TESTS_OPTION})
|
set(BUILD_MANUAL_TESTS_OPTION ${BUILD_TESTS_OPTION})
|
||||||
set(BUILD_TOOLS_OPTION ON)
|
set(BUILD_TOOLS_OPTION ON)
|
||||||
set(BUILD_INSTALLER_OPTION ON)
|
set(BUILD_INSTALLER_OPTION ON)
|
||||||
set(GLES_OPTION OFF)
|
|
||||||
set(DISABLE_QML_OPTION OFF)
|
set(DISABLE_QML_OPTION OFF)
|
||||||
set(DOWNLOAD_SERVERLESS_CONTENT_OPTION OFF)
|
set(DOWNLOAD_SERVERLESS_CONTENT_OPTION OFF)
|
||||||
|
|
||||||
|
|
|
@ -2,13 +2,22 @@ include(vcpkg_common_functions)
|
||||||
vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
|
vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
|
||||||
|
|
||||||
file(READ "${VCPKG_ROOT_DIR}/_env/EXTERNAL_BUILD_ASSETS.txt" EXTERNAL_BUILD_ASSETS)
|
file(READ "${VCPKG_ROOT_DIR}/_env/EXTERNAL_BUILD_ASSETS.txt" EXTERNAL_BUILD_ASSETS)
|
||||||
|
file(READ "${VCPKG_ROOT_DIR}/_env/USE_GLES.txt" USE_GLES)
|
||||||
|
|
||||||
|
# GitHub Actions Android builds fail with `FILENAME` set while desktop builds with GLES fail without a set `FILENAME`.
|
||||||
if (ANDROID)
|
if (ANDROID)
|
||||||
vcpkg_download_distfile(
|
vcpkg_download_distfile(
|
||||||
SOURCE_ARCHIVE
|
SOURCE_ARCHIVE
|
||||||
URLS ${EXTERNAL_BUILD_ASSETS}/dependencies/glad/glad32es.zip
|
URLS ${EXTERNAL_BUILD_ASSETS}/dependencies/glad/glad32es.zip
|
||||||
SHA512 2e02ac633eed8f2ba2adbf96ea85d08998f48dd2e9ec9a88ec3c25f48eaf1405371d258066327c783772fcb3793bdb82bd7375fdabb2ba5e2ce0835468b17f65
|
SHA512 2e02ac633eed8f2ba2adbf96ea85d08998f48dd2e9ec9a88ec3c25f48eaf1405371d258066327c783772fcb3793bdb82bd7375fdabb2ba5e2ce0835468b17f65
|
||||||
)
|
)
|
||||||
|
elseif (USE_GLES)
|
||||||
|
vcpkg_download_distfile(
|
||||||
|
SOURCE_ARCHIVE
|
||||||
|
URLS ${EXTERNAL_BUILD_ASSETS}/dependencies/glad/glad32es.zip
|
||||||
|
SHA512 2e02ac633eed8f2ba2adbf96ea85d08998f48dd2e9ec9a88ec3c25f48eaf1405371d258066327c783772fcb3793bdb82bd7375fdabb2ba5e2ce0835468b17f65
|
||||||
|
FILENAME glad32es.zip
|
||||||
|
)
|
||||||
else()
|
else()
|
||||||
# else Linux desktop
|
# else Linux desktop
|
||||||
vcpkg_download_distfile(
|
vcpkg_download_distfile(
|
||||||
|
|
|
@ -153,7 +153,7 @@ void GLBackend::init() {
|
||||||
|
|
||||||
if (vendor.contains("NVIDIA") ) {
|
if (vendor.contains("NVIDIA") ) {
|
||||||
qCDebug(gpugllogging) << "NVIDIA card detected";
|
qCDebug(gpugllogging) << "NVIDIA card detected";
|
||||||
#if !defined(Q_OS_ANDROID)
|
#if !defined(Q_OS_ANDROID) && !defined(USE_GLES)
|
||||||
GL_GET_INTEGER(GPU_MEMORY_INFO_DEDICATED_VIDMEM_NVX);
|
GL_GET_INTEGER(GPU_MEMORY_INFO_DEDICATED_VIDMEM_NVX);
|
||||||
GL_GET_INTEGER(GPU_MEMORY_INFO_TOTAL_AVAILABLE_MEMORY_NVX);
|
GL_GET_INTEGER(GPU_MEMORY_INFO_TOTAL_AVAILABLE_MEMORY_NVX);
|
||||||
GL_GET_INTEGER(GPU_MEMORY_INFO_CURRENT_AVAILABLE_VIDMEM_NVX);
|
GL_GET_INTEGER(GPU_MEMORY_INFO_CURRENT_AVAILABLE_VIDMEM_NVX);
|
||||||
|
@ -170,7 +170,7 @@ void GLBackend::init() {
|
||||||
|
|
||||||
} else if (vendor.contains("ATI")) {
|
} else if (vendor.contains("ATI")) {
|
||||||
qCDebug(gpugllogging) << "ATI card detected";
|
qCDebug(gpugllogging) << "ATI card detected";
|
||||||
#if !defined(Q_OS_ANDROID)
|
#if !defined(Q_OS_ANDROID) && !defined(USE_GLES)
|
||||||
GL_GET_INTEGER(TEXTURE_FREE_MEMORY_ATI);
|
GL_GET_INTEGER(TEXTURE_FREE_MEMORY_ATI);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -225,12 +225,12 @@ size_t GLBackend::getAvailableMemory() {
|
||||||
|
|
||||||
switch( _videoCard ) {
|
switch( _videoCard ) {
|
||||||
case NVIDIA:
|
case NVIDIA:
|
||||||
#if !defined(Q_OS_ANDROID)
|
#if !defined(Q_OS_ANDROID) && !defined(USE_GLES)
|
||||||
glGetIntegerv(GL_GPU_MEMORY_INFO_CURRENT_AVAILABLE_VIDMEM_NVX, &mem[0]);
|
glGetIntegerv(GL_GPU_MEMORY_INFO_CURRENT_AVAILABLE_VIDMEM_NVX, &mem[0]);
|
||||||
#endif
|
#endif
|
||||||
return mem[0] * BYTES_PER_KIB;
|
return mem[0] * BYTES_PER_KIB;
|
||||||
case ATI:
|
case ATI:
|
||||||
#if !defined(Q_OS_ANDROID)
|
#if !defined(Q_OS_ANDROID) && !defined(USE_GLES)
|
||||||
glGetIntegerv(GL_TEXTURE_FREE_MEMORY_ATI, &mem[0]);
|
glGetIntegerv(GL_TEXTURE_FREE_MEMORY_ATI, &mem[0]);
|
||||||
#endif
|
#endif
|
||||||
return mem[0] * BYTES_PER_KIB;
|
return mem[0] * BYTES_PER_KIB;
|
||||||
|
|
Loading…
Reference in a new issue