🔧 Use freeimage package from conan center

This commit is contained in:
2022-07-16 15:16:45 +02:00
parent 9eb1df9d3a
commit 1f4802cc02
10 changed files with 38 additions and 83 deletions

View File

@ -12,6 +12,6 @@ requirements:
- "zlib/[1.x]"
- "zziplib/[0.13.x]"
- "freetype/[2.x]"
- "freeimage/[3.x]@anotherfoxguy/stable"
- "freeimage/[3.x]"
- "cg-toolkit/3.1@anotherfoxguy/stable"
- "pugixml/[1.x]"

View File

@ -1,3 +1,4 @@
import shutil
from conans import ConanFile, CMake, tools
from conans.tools import os_info, SystemPackageTool
@ -37,10 +38,16 @@ class OGREConan(ConanFile):
"find_package(DirectX9)",
)
tools.replace_in_file(
"CMake/Packages/FindDirectX11.cmake",
"find_path(DirectX11_INCLUDE_DIR NAMES d3d11.h HINTS \"",
"find_path(DirectX11_INCLUDE_DIR NO_CMAKE_PATH NO_CMAKE_ENVIRONMENT_PATH NAMES d3d11.h HINTS \"",
"CMake/Dependencies.cmake",
"find_package(FreeImage)",
"find_package(ConanFreeImage)",
)
tools.replace_in_file(
"CMake/Packages/FindDirectX11.cmake",
'find_path(DirectX11_INCLUDE_DIR NAMES d3d11.h HINTS "',
'find_path(DirectX11_INCLUDE_DIR NO_CMAKE_PATH NO_CMAKE_ENVIRONMENT_PATH NAMES d3d11.h HINTS "',
)
shutil.copyfile("patches/FindFreeImage.cmake", "CMake/Packages/FindConanFreeImage.cmake")
for patch in self.conan_data["patches"][self.version]:
tools.patch(**patch)
@ -53,6 +60,7 @@ class OGREConan(ConanFile):
cmake.definitions["OGRE_BUILD_COMPONENT_PYTHON"] = "OFF"
cmake.definitions["OGRE_BUILD_DEPENDENCIES"] = "OFF"
cmake.definitions["OGRE_BUILD_PLUGIN_STBI"] = "ON"
cmake.definitions["OGRE_BUILD_PLUGIN_EXRCODEC"] = "OFF"
cmake.definitions["OGRE_BUILD_RENDERSYSTEM_D3D11"] = "ON"
cmake.definitions["OGRE_BUILD_RENDERSYSTEM_D3D9"] = "ON"
cmake.definitions["OGRE_BUILD_RENDERSYSTEM_GL3PLUS"] = "OFF"

View File

@ -0,0 +1,5 @@
include(Findfreeimage)
set(FreeImage_FOUND "${freeimage_FOUND}" CACHE BOOL "Conan patch for freeimage" FORCE)
set(FreeImage_LIBRARIES "${freeimage_LIBRARIES}" CACHE STRING "Conan patch for freeimage" FORCE)
set(FreeImage_INCLUDE_DIR "${freeimage_INCLUDE_DIR}" CACHE STRING "Conan patch for freeimage" FORCE)

View File

@ -46,6 +46,6 @@ requirements:
- "zlib/[1.x]"
- "zziplib/[0.13.x]"
- "freetype/[2.x]"
- "freeimage/[3.x]@anotherfoxguy/stable"
- "freeimage/[3.x]"
- "cg-toolkit/3.1@anotherfoxguy/stable"
- "pugixml/[1.x]"

View File

@ -1,3 +1,4 @@
import shutil
from conans import ConanFile, CMake, tools
from conans.tools import os_info, SystemPackageTool
@ -36,6 +37,7 @@ class OGREConan(ConanFile):
self._cmake.definitions["OGRE_BUILD_DEPENDENCIES"] = "OFF"
self._cmake.definitions["OGRE_BUILD_PLUGIN_DOT_SCENE"] = "OFF"
self._cmake.definitions["OGRE_BUILD_PLUGIN_STBI"] = "ON"
self._cmake.definitions["OGRE_BUILD_PLUGIN_EXRCODEC"] = "OFF"
self._cmake.definitions["OGRE_BUILD_RENDERSYSTEM_D3D11"] = "ON"
self._cmake.definitions["OGRE_BUILD_RENDERSYSTEM_D3D9"] = "ON"
self._cmake.definitions["OGRE_BUILD_RENDERSYSTEM_GL3PLUS"] = "OFF"
@ -43,7 +45,9 @@ class OGREConan(ConanFile):
self._cmake.definitions["OGRE_COPY_DEPENDENCIES"] = "OFF"
self._cmake.definitions["OGRE_INSTALL_DEPENDENCIES"] = "OFF"
self._cmake.definitions["OGRE_INSTALL_SAMPLES"] = "OFF"
self._cmake.definitions["OGRE_NODELESS_POSITIONING"] = self.options.nodeless_positioning
self._cmake.definitions[
"OGRE_NODELESS_POSITIONING"
] = self.options.nodeless_positioning
if self.options.resourcemanager_strict == "off":
self._cmake.definitions["OGRE_RESOURCEMANAGER_STRICT"] = 0
@ -85,10 +89,18 @@ class OGREConan(ConanFile):
"find_package(DirectX)",
"find_package(DirectX9)",
)
tools.replace_in_file(
"CMake/Dependencies.cmake",
"find_package(FreeImage)",
"find_package(ConanFreeImage)",
)
tools.replace_in_file(
"CMake/Packages/FindDirectX11.cmake",
"find_path(DirectX11_INCLUDE_DIR NAMES d3d11.h HINTS \"",
"find_path(DirectX11_INCLUDE_DIR NO_CMAKE_PATH NO_CMAKE_ENVIRONMENT_PATH NAMES d3d11.h HINTS \"",
'find_path(DirectX11_INCLUDE_DIR NAMES d3d11.h HINTS "',
'find_path(DirectX11_INCLUDE_DIR NO_CMAKE_PATH NO_CMAKE_ENVIRONMENT_PATH NAMES d3d11.h HINTS "',
)
shutil.copyfile(
"patches/FindFreeImage.cmake", "CMake/Packages/FindConanFreeImage.cmake"
)
for patch in self.conan_data["patches"][self.version]:
tools.patch(**patch)

View File

@ -0,0 +1,5 @@
include(Findfreeimage)
set(FreeImage_FOUND "${freeimage_FOUND}" CACHE BOOL "Conan patch for freeimage" FORCE)
set(FreeImage_LIBRARIES "${freeimage_LIBRARIES}" CACHE STRING "Conan patch for freeimage" FORCE)
set(FreeImage_INCLUDE_DIR "${freeimage_INCLUDE_DIR}" CACHE STRING "Conan patch for freeimage" FORCE)