[Fix]: build on macOS

This commit is contained in:
2025-11-26 22:05:02 +08:00
parent a0aaba3cb5
commit da5b9686ba
2 changed files with 11 additions and 9 deletions
+3 -1
View File
@@ -11,11 +11,13 @@ if (NOT CMAKE_BUILD_TYPE STREQUAL "Debug" OR MOBILEGL_FORCE_RELEASE_OPT)
set(CMAKE_INTERPROCEDURAL_OPTIMIZATION TRUE) set(CMAKE_INTERPROCEDURAL_OPTIMIZATION TRUE)
endif() endif()
if (CMAKE_CXX_COMPILER_ID MATCHES "GNU|Clang|AppleClang") if (CMAKE_CXX_COMPILER_ID MATCHES "GNU|Clang" AND NOT MATCHES "AppleClang")
add_compile_options(-O3 -ffunction-sections -fdata-sections) add_compile_options(-O3 -ffunction-sections -fdata-sections)
add_link_options(-Wl,--gc-sections) add_link_options(-Wl,--gc-sections)
elseif (CMAKE_CXX_COMPILER_ID MATCHES "MSVC") elseif (CMAKE_CXX_COMPILER_ID MATCHES "MSVC")
add_compile_options(/O2 /GL) add_compile_options(/O2 /GL)
else ()
add_compile_options(-O3)
endif() endif()
endif() endif()
@@ -48,14 +48,14 @@ namespace MobileGL {
virtual ~TextureObjectBase() = default; virtual ~TextureObjectBase() = default;
// Mipmap ops // Mipmap ops
Uint GetMipmapLevelCount() const = 0; // Uint GetMipmapLevelCount() const = 0;
const IntVec3 GetMipmapTexelSize(TextureUploadTarget target, Uint mipmapLevel) const = 0; // const IntVec3 GetMipmapTexelSize(TextureUploadTarget target, Uint mipmapLevel) const = 0;
const SizeT GetMipmapByteSize(TextureUploadTarget target, Uint mipmapLevel) const = 0; // const SizeT GetMipmapByteSize(TextureUploadTarget target, Uint mipmapLevel) const = 0;
void AllocateStorage(TextureUploadTarget uploadTarget, Uint mipmapLevel, MipmapInput input) = 0; // void AllocateStorage(TextureUploadTarget uploadTarget, Uint mipmapLevel, MipmapInput input) = 0;
void UpdateMipmapSubData(TextureUploadTarget uploadTarget, Uint mipmapLevel, DataPtr input) = 0; // void UpdateMipmapSubData(TextureUploadTarget uploadTarget, Uint mipmapLevel, DataPtr input) = 0;
void* MapMipmapData(TextureUploadTarget uploadTarget, Uint mipmapLevel) = 0; // void* MapMipmapData(TextureUploadTarget uploadTarget, Uint mipmapLevel) = 0;
void MarkStorageDirty(TextureUploadTarget uploadTarget, Uint mipmapLevel, bool dirty) = 0; // void MarkStorageDirty(TextureUploadTarget uploadTarget, Uint mipmapLevel, bool dirty) = 0;
bool IsStorageDirty(TextureUploadTarget uploadTarget, Uint mipmapLevel) const = 0; // bool IsStorageDirty(TextureUploadTarget uploadTarget, Uint mipmapLevel) const = 0;
TextureInternalFormat GetFormat() const override; TextureInternalFormat GetFormat() const override;
TextureTarget GetTarget() const override; TextureTarget GetTarget() const override;