From bc2c3eee48c19c909269e54fb6bb069d10e90011 Mon Sep 17 00:00:00 2001 From: jim wang <122244446+jimwang118@users.noreply.github.com> Date: Wed, 3 May 2023 05:44:40 +0800 Subject: [PATCH] [ogre] Fix function override problem in macos system. (#31106) * fix osx override error * update version * optimized syntax * update version * fix function * update version --- ports/ogre/fix_override.patch | 33 +++++++++++++++++++++++++++++++++ ports/ogre/portfile.cmake | 10 +++++----- ports/ogre/vcpkg.json | 2 +- versions/baseline.json | 2 +- versions/o-/ogre.json | 5 +++++ 5 files changed, 45 insertions(+), 7 deletions(-) create mode 100644 ports/ogre/fix_override.patch diff --git a/ports/ogre/fix_override.patch b/ports/ogre/fix_override.patch new file mode 100644 index 0000000000..99e07547ef --- /dev/null +++ b/ports/ogre/fix_override.patch @@ -0,0 +1,33 @@ +diff --git a/PlugIns/EXRCodec/src/O_IStream.cpp b/PlugIns/EXRCodec/src/O_IStream.cpp +index 6f668d5..eba9ac7 100644 +--- a/PlugIns/EXRCodec/src/O_IStream.cpp ++++ b/PlugIns/EXRCodec/src/O_IStream.cpp +@@ -39,11 +39,11 @@ bool O_IStream::read(char c[], int n) { + return _stream.eof(); + } + +-Int64 O_IStream::tellg() { ++uint64_t O_IStream::tellg() { + return _stream.getCurrentPtr() - _stream.getPtr(); + } + +-void O_IStream::seekg(Int64 pos) { ++void O_IStream::seekg(uint64_t pos) { + _stream.seek(pos); + } + +diff --git a/PlugIns/EXRCodec/src/O_IStream.h b/PlugIns/EXRCodec/src/O_IStream.h +index 8eb09d8..dc301ae 100644 +--- a/PlugIns/EXRCodec/src/O_IStream.h ++++ b/PlugIns/EXRCodec/src/O_IStream.h +@@ -46,8 +46,8 @@ public: + IStream (file_name), _stream(stream) {} + + bool read (char c[], int n) override; +- Imf::Int64 tellg () override; +- void seekg (Imf::Int64 pos) override; ++ virtual uint64_t tellg () override; ++ virtual void seekg (uint64_t pos) override; + void clear () override; + + private: diff --git a/ports/ogre/portfile.cmake b/ports/ogre/portfile.cmake index 19188d1a20..5e1809d0c7 100644 --- a/ports/ogre/portfile.cmake +++ b/ports/ogre/portfile.cmake @@ -10,6 +10,10 @@ if(VCPKG_TARGET_IS_ANDROID OR VCPKG_TARGET_IS_IOS OR VCPKG_TARGET_IS_EMSCRIPTEN) vcpkg_check_linkage(ONLY_STATIC_LIBRARY) endif() +set(PATCHLIB fix-dependencies.patch cfg-rel-paths.patch swig-python-polyfill.patch pkgconfig.patch same-install-rules-all-platforms.patch) +if(VCPKG_TARGET_IS_OSX) + list(APPEND PATCHLIB fix_override.patch) # upstream PR:https://github.com/OGRECave/ogre/pull/2831 +endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO OGRECave/ogre @@ -17,11 +21,7 @@ vcpkg_from_github( SHA512 d4022a454e0649a01182545f24094ba1f72127099a9b096e1b438238659629e93b1d79277d02acc0aceebdc3969aab0031de7f86390077bafc66ccfd86755430 HEAD_REF master PATCHES - fix-dependencies.patch - cfg-rel-paths.patch - swig-python-polyfill.patch - pkgconfig.patch - same-install-rules-all-platforms.patch + ${PATCHLIB} ) file(REMOVE "${SOURCE_PATH}/CMake/Packages/FindOpenEXR.cmake") diff --git a/ports/ogre/vcpkg.json b/ports/ogre/vcpkg.json index 3450d66e16..248f194e7b 100644 --- a/ports/ogre/vcpkg.json +++ b/ports/ogre/vcpkg.json @@ -1,7 +1,7 @@ { "name": "ogre", "version": "13.6.2", - "port-version": 1, + "port-version": 2, "description": "3D Object-Oriented Graphics Rendering Engine", "homepage": "https://github.com/OGRECave/ogre", "license": "MIT", diff --git a/versions/baseline.json b/versions/baseline.json index dd4286fe20..6da4cc75d6 100644 --- a/versions/baseline.json +++ b/versions/baseline.json @@ -5726,7 +5726,7 @@ }, "ogre": { "baseline": "13.6.2", - "port-version": 1 + "port-version": 2 }, "ogre-next": { "baseline": "2.3.1", diff --git a/versions/o-/ogre.json b/versions/o-/ogre.json index af4c702683..c1dab6d14a 100644 --- a/versions/o-/ogre.json +++ b/versions/o-/ogre.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "9a0701fa116eca04bd8a2446f6e44c732084857b", + "version": "13.6.2", + "port-version": 2 + }, { "git-tree": "b7ec525c0cd854d1da91a5a11cd05109693b9333", "version": "13.6.2",