diff --git a/freeimage/all/conandata.yml b/freeimage/all/conandata.yml deleted file mode 100644 index e5f7ea1..0000000 --- a/freeimage/all/conandata.yml +++ /dev/null @@ -1,7 +0,0 @@ -sources: - "3.18.0": - url: "http://downloads.sourceforge.net/freeimage/FreeImage3180.zip" - sha256: "f41379682f9ada94ea7b34fe86bf9ee00935a3147be41b6569c9605a53e438fd" -patches: - "3.18.0": - - patch_file: "patches/3.18.0/cpp11.patch" \ No newline at end of file diff --git a/freeimage/all/conanfile.py b/freeimage/all/conanfile.py deleted file mode 100644 index 16696ab..0000000 --- a/freeimage/all/conanfile.py +++ /dev/null @@ -1,54 +0,0 @@ -import glob -from conans import ConanFile, MSBuild, tools, AutoToolsBuildEnvironment -from conans.tools import os_info - - -class freeimageConan(ConanFile): - name = "freeimage" - license = "GNU" - author = "Edgar (Edgar@AnotherFoxGuy.com)" - url = "https://github.com/AnotherFoxGuy/conan-freeimage" - description = "FreeImage is an Open Source library project for developers who would like to support popular graphics image formats like PNG, BMP, JPEG, TIFF and others as needed by today's multimedia applications." - settings = "os", "compiler", "build_type", "arch" - exports_sources = "patches/**" - - def source(self): - tools.get(**self.conan_data["sources"][self.version], strip_root=True) - for patch in self.conan_data["patches"][self.version]: - tools.patch(**patch) - - def build(self): - if os_info.is_windows: - version = tools.Version(self.settings.compiler.version) - if version.major > "15": - for file in glob.glob("./**/*2017.vcxproj", recursive=True): - print(f"Patching winsdk in file {file}") - tools.replace_in_file(file, "10.0.16299.0", "10.0", strict=False) - - if self.settings.build_type == "Debug": - _build_type = "Debug" - else: - _build_type = "Release" - - msbuild = MSBuild(self) - msbuild.build( - "FreeImage.2017.sln", build_type=_build_type, platforms={"x86": "Win32"} - ) - else: - autotools = AutoToolsBuildEnvironment(self) - autotools.make() - - def package(self): - self.copy("*.h", dst="include", src="Dist", keep_path=False) - self.copy("*.lib", dst="lib", src="Dist", keep_path=False) - self.copy("*.dll", dst="bin", src="Dist", keep_path=False) - self.copy("*.so", dst="lib", src="Dist", keep_path=False) - self.copy("*.a", dst="lib", src="Dist", keep_path=False) - self.copy("*.lib", dst="lib", src="Source", keep_path=False) - self.copy("*.dll", dst="bin", src="Source", keep_path=False) - self.copy("*.so", dst="lib", src="Source", keep_path=False) - self.copy("*.a", dst="lib", src="Source", keep_path=False) - - def package_info(self): - self.cpp_info.name = "FreeImage" - self.cpp_info.libs = tools.collect_libs(self) diff --git a/freeimage/all/patches/3.18.0/cpp11.patch b/freeimage/all/patches/3.18.0/cpp11.patch deleted file mode 100644 index 76ab4f6..0000000 --- a/freeimage/all/patches/3.18.0/cpp11.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- Makefile.gnu -+++ Makefile.gnu -@@ -25,7 +25,7 @@ - CFLAGS += $(INCLUDE) - CXXFLAGS ?= -O3 -fPIC -fexceptions -fvisibility=hidden -Wno-ctor-dtor-privacy - # LibJXR --CXXFLAGS += -D__ANSI__ -+CXXFLAGS += -D__ANSI__ -std=c++11 - CXXFLAGS += $(INCLUDE) - - ifeq ($(shell sh -c 'uname -m 2>/dev/null || echo not'),x86_64) diff --git a/freeimage/config.yml b/freeimage/config.yml deleted file mode 100644 index 7e5f545..0000000 --- a/freeimage/config.yml +++ /dev/null @@ -1,3 +0,0 @@ -versions: - "3.18.0": - folder: all diff --git a/ogre/1.11/conandata.yml b/ogre/1.11/conandata.yml index e87cdd9..a60cfdc 100644 --- a/ogre/1.11/conandata.yml +++ b/ogre/1.11/conandata.yml @@ -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]" \ No newline at end of file diff --git a/ogre/1.11/conanfile.py b/ogre/1.11/conanfile.py index 42ebb20..619de9b 100644 --- a/ogre/1.11/conanfile.py +++ b/ogre/1.11/conanfile.py @@ -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" diff --git a/ogre/1.11/patches/FindFreeImage.cmake b/ogre/1.11/patches/FindFreeImage.cmake new file mode 100644 index 0000000..b66cc11 --- /dev/null +++ b/ogre/1.11/patches/FindFreeImage.cmake @@ -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) \ No newline at end of file diff --git a/ogre/13/conandata.yml b/ogre/13/conandata.yml index 76b8891..3bc95ce 100644 --- a/ogre/13/conandata.yml +++ b/ogre/13/conandata.yml @@ -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]" \ No newline at end of file diff --git a/ogre/13/conanfile.py b/ogre/13/conanfile.py index 1ddf05d..5a349b8 100644 --- a/ogre/13/conanfile.py +++ b/ogre/13/conanfile.py @@ -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) diff --git a/ogre/13/patches/FindFreeImage.cmake b/ogre/13/patches/FindFreeImage.cmake new file mode 100644 index 0000000..b66cc11 --- /dev/null +++ b/ogre/13/patches/FindFreeImage.cmake @@ -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) \ No newline at end of file