diff --git a/recipes/harfbuzz/all/conandata.yml b/recipes/harfbuzz/all/conandata.yml index d165dd235addd..05438f42275f6 100644 --- a/recipes/harfbuzz/all/conandata.yml +++ b/recipes/harfbuzz/all/conandata.yml @@ -5,44 +5,18 @@ sources: "8.0.1": url: "https://github.com/harfbuzz/harfbuzz/releases/download/8.0.1/harfbuzz-8.0.1.tar.xz" sha256: "c1ce780acd385569f25b9a29603d1d5bc71e6940e55bfdd4f7266fad50e42620" - "8.0.0": - url: "https://github.com/harfbuzz/harfbuzz/releases/download/8.0.0/harfbuzz-8.0.0.tar.xz" - sha256: "1f98b5e3d06a344fe667d7e8210094ced458791499839bddde98c167ce6a7c79" "7.3.0": url: "https://github.com/harfbuzz/harfbuzz/releases/download/7.3.0/harfbuzz-7.3.0.tar.xz" sha256: "20770789749ac9ba846df33983dbda22db836c70d9f5d050cb9aa5347094a8fb" - "7.1.0": - url: "https://github.com/harfbuzz/harfbuzz/releases/download/7.1.0/harfbuzz-7.1.0.tar.xz" - sha256: "f135a61cd464c9ed6bc9823764c188f276c3850a8dc904628de2a87966b7077b" "6.0.0": url: "https://github.com/harfbuzz/harfbuzz/releases/download/6.0.0/harfbuzz-6.0.0.tar.xz" sha256: "1d1010a1751d076d5291e433c138502a794d679a7498d1268ee21e2d4a140eb4" - "5.3.1": - url: "https://github.com/harfbuzz/harfbuzz/releases/download/5.3.1/harfbuzz-5.3.1.tar.xz" - sha256: "4a6ce097b75a8121facc4ba83b5b083bfec657f45b003cd5a3424f2ae6b4434d" - "5.3.0": - url: "https://github.com/harfbuzz/harfbuzz/releases/download/5.3.0/harfbuzz-5.3.0.tar.xz" - sha256: "a05e19e3f52da24ed071522f0fddf872157d7d25e869cfd156cd6f1e81c42152" - "5.2.0": - url: "https://github.com/harfbuzz/harfbuzz/releases/download/5.2.0/harfbuzz-5.2.0.tar.xz" - sha256: "735a94917b47936575acb4d4fa7e7986522f8a89527e4635721474dee2bc942c" "5.1.0": url: "https://github.com/harfbuzz/harfbuzz/releases/download/5.1.0/harfbuzz-5.1.0.tar.xz" sha256: "2edb95db668781aaa8d60959d21be2ff80085f31b12053cdd660d9a50ce84f05" - "4.4.1": - url: "https://github.com/harfbuzz/harfbuzz/releases/download/4.4.1/harfbuzz-4.4.1.tar.xz" - sha256: "c5bc33ac099b2e52f01d27cde21cee4281b9d5bfec7684135e268512478bc9ee" - "3.2.0": - url: "https://github.com/harfbuzz/harfbuzz/releases/download/3.2.0/harfbuzz-3.2.0.tar.xz" - sha256: "0ada50a1c199bb6f70843ab893c55867743a443b84d087d54df08ad883ebc2cd" patches: "5.1.0": - patch_file: "patches/0000-fix-freetype-lookup-5.1.0.patch" patch_type: "portability" patch_description: "fix fretype and icu dependency lookup" patch_source: "https://github.com/harfbuzz/harfbuzz/pull/3811" - "4.4.1": - - patch_file: "patches/0000-fix-freetype-lookup-4.4.1.patch" - patch_type: "portability" - patch_description: "fix fretype and icu dependency lookup" - patch_source: "https://github.com/harfbuzz/harfbuzz/pull/3811" diff --git a/recipes/harfbuzz/all/conanfile.py b/recipes/harfbuzz/all/conanfile.py index ce1aa84efb199..5aba73dab807f 100644 --- a/recipes/harfbuzz/all/conanfile.py +++ b/recipes/harfbuzz/all/conanfile.py @@ -87,9 +87,8 @@ def validate(self): raise ConanInvalidConfiguration( "Linking a shared library against static glib can cause unexpected behaviour." ) - if Version(self.version) >= "4.4.0": - if self.settings.compiler == "gcc" and Version(self.settings.compiler.version) < "7": - raise ConanInvalidConfiguration("New versions of harfbuzz require at least gcc 7") + if self.settings.compiler == "gcc" and Version(self.settings.compiler.version) < "7": + raise ConanInvalidConfiguration("New versions of harfbuzz require at least gcc 7") if self.options.with_glib and self.dependencies["glib"].options.shared and is_msvc_static_runtime(self): raise ConanInvalidConfiguration( diff --git a/recipes/harfbuzz/all/patches/0000-fix-freetype-lookup-4.4.1.patch b/recipes/harfbuzz/all/patches/0000-fix-freetype-lookup-4.4.1.patch deleted file mode 100644 index 708b5d9734b00..0000000000000 --- a/recipes/harfbuzz/all/patches/0000-fix-freetype-lookup-4.4.1.patch +++ /dev/null @@ -1,99 +0,0 @@ -diff --git a/meson.build b/meson.build -index 4a69d6d9e..a82ff598c 100644 ---- a/meson.build -+++ b/meson.build -@@ -21,7 +21,7 @@ pkgmod = import('pkgconfig') - cpp = meson.get_compiler('cpp') - null_dep = dependency('', required: false) - --if cpp.get_id() == 'msvc' -+if cpp.get_argument_syntax() == 'msvc' - # Ignore several spurious warnings for things HarfBuzz does very commonly. - # If a warning is completely useless and spammy, use '/wdXXXX' to suppress it - # If a warning is harmless but hard to fix, use '/woXXXX' so it's shown once -@@ -83,25 +83,39 @@ check_funcs = [ - - m_dep = cpp.find_library('m', required: false) - --# https://github.com/harfbuzz/harfbuzz/pull/2498 --freetype_dep = dependency(cpp.get_argument_syntax() == 'msvc' ? 'freetype' : 'freetype2', -- required: get_option('freetype'), -- default_options: ['harfbuzz=disabled']) -+ -+# Try pkgconfig name -+freetype_dep = dependency('freetype2', required: false) -+if not freetype_dep.found() -+ # Try cmake name -+ freetype_dep = dependency('freetype', required: false) -+endif -+if not freetype_dep.found() -+ # Subproject fallback, `allow_fallback: true` means the fallback will be -+ # tried even if the freetype option is set to `auto`. -+ freetype_dep = dependency('freetype2', -+ required: get_option('freetype'), -+ default_options: ['harfbuzz=disabled'], -+ allow_fallback: true) -+endif - - glib_dep = dependency('glib-2.0', required: get_option('glib')) - gobject_dep = dependency('gobject-2.0', required: get_option('gobject')) - graphite2_dep = dependency('graphite2', required: get_option('graphite2')) - graphite_dep = dependency('graphite2', required: get_option('graphite')) - --if cpp.get_argument_syntax() == 'msvc' -+# Try pkgconfig name -+icu_dep = dependency('icu-uc', required: false) -+if not icu_dep.found() -+ # Try cmake name - icu_dep = dependency('ICU', -- required: get_option('icu'), -+ required: false, - components: 'uc', - method: 'cmake') --else -- icu_dep = dependency('icu-uc', -- required: get_option('icu'), -- method: 'pkg-config') -+endif -+if not icu_dep.found() -+ # Subproject fallback if icu option is enabled -+ icu_dep = dependency('icu-uc', required: get_option('icu')) - endif - - if icu_dep.found() and icu_dep.type_name() == 'pkgconfig' -@@ -118,7 +132,7 @@ if not get_option('cairo').disabled() - cairo_ft_dep = dependency('cairo-ft', required: false) - - if (not cairo_dep.found() and -- cpp.get_id() == 'msvc' and -+ cpp.get_argument_syntax() == 'msvc' and - cpp.has_header('cairo.h')) - cairo_dep = cpp.find_library('cairo', required: false) - if cairo_dep.found() and cpp.has_function('cairo_ft_font_face_create_for_ft_face', -@@ -198,6 +212,7 @@ if freetype_dep.found() - ['FT_Get_Var_Blend_Coordinates', {'deps': freetype_dep}], - ['FT_Set_Var_Blend_Coordinates', {'deps': freetype_dep}], - ['FT_Done_MM_Var', {'deps': freetype_dep}], -+ ['FT_Get_Transform', {'deps': freetype_dep}], - ] - - if freetype_dep.type_name() == 'internal' -@@ -232,17 +247,12 @@ if host_machine.system() == 'windows' and not get_option('gdi').disabled() - endif - - # DirectWrite (Windows) --directwrite_dep = null_dep - if host_machine.system() == 'windows' and not get_option('directwrite').disabled() - if get_option('directwrite').enabled() and not cpp.has_header('dwrite_1.h') - error('DirectWrite was enabled explicitly, but required header is missing.') - endif - -- directwrite_dep = cpp.find_library('dwrite', required: get_option('directwrite')) -- -- if directwrite_dep.found() -- conf.set('HAVE_DIRECTWRITE', 1) -- endif -+ conf.set('HAVE_DIRECTWRITE', 1) - endif - - # CoreText (macOS) diff --git a/recipes/harfbuzz/config.yml b/recipes/harfbuzz/config.yml index 502391a71084d..68cf571c65b76 100644 --- a/recipes/harfbuzz/config.yml +++ b/recipes/harfbuzz/config.yml @@ -3,23 +3,9 @@ versions: folder: all "8.0.1": folder: all - "8.0.0": - folder: all "7.3.0": folder: all - "7.1.0": - folder: all "6.0.0": folder: all - "5.3.1": - folder: all - "5.3.0": - folder: all - "5.2.0": - folder: all "5.1.0": folder: all - "4.4.1": - folder: all - "3.2.0": - folder: all