From 2dc7fc403fe427a889913ef0cfb71de85b4326ec Mon Sep 17 00:00:00 2001 From: Xavier Claessens Date: Sat, 23 Apr 2022 10:33:17 -0400 Subject: [PATCH] meson: Various fixes - Add missing lcms dependencies. That's needed when lcms is a subproject otherwise those targets does not find its headers. - Add lcms2 wrap so meson can build it as subproject in case the dependency is not found on system. - Fix couple meson warnings - Use meson.override_dependency() so babl can be used as subproject without hardcoding "babl_dep" variable name in main project. --- babl/meson.build | 4 +++- extensions/meson.build | 1 + meson.build | 4 +++- subprojects/lcms2.wrap | 12 ++++++++++++ tests/meson.build | 2 +- tools/meson.build | 2 +- 6 files changed, 21 insertions(+), 4 deletions(-) create mode 100644 subprojects/lcms2.wrap diff --git a/babl/meson.build b/babl/meson.build index d432dca..70fb131 100644 --- a/babl/meson.build +++ b/babl/meson.build @@ -138,7 +138,7 @@ babl = library( link_args: babl_link_args, link_with: simd_extra, dependencies: babl_deps, - link_depends: version_script, + link_depends: version_script[0], version: so_version, install: true, ) @@ -165,4 +165,6 @@ if build_gir install: true, ) endif +else + babl_gir = [] endif diff --git a/extensions/meson.build b/extensions/meson.build index 23672bb..9935f29 100644 --- a/extensions/meson.build +++ b/extensions/meson.build @@ -6,6 +6,7 @@ no_cflags = [] babl_ext_dep = [ math, thread, + lcms, ] # Include directories diff --git a/meson.build b/meson.build index 8c93be9..002d969 100644 --- a/meson.build +++ b/meson.build @@ -451,6 +451,7 @@ if git_bin.found() and run_command( git_bin, 'rev-parse', '--is-inside-work-tree', + check: true, ).returncode() == 0 git_version_h = vcs_tag( input : 'git-version.h.in', @@ -531,13 +532,14 @@ babl_dep = declare_dependency( link_with : babl, sources: [ babl_version_h, - is_variable('babl_gir') ? babl_gir : [] + build_gir ? babl_gir : [] ], variables: { 'babl_path' : babl_extensions_build_dir, 'babl_libdir' : babl_library_build_dir, }, ) +meson.override_dependency('babl', babl_dep) ################################################################################ # Build summary diff --git a/subprojects/lcms2.wrap b/subprojects/lcms2.wrap new file mode 100644 index 0000000..2cc69df --- /dev/null +++ b/subprojects/lcms2.wrap @@ -0,0 +1,12 @@ +[wrap-file] +directory = Little-CMS-2.12 +source_url = https://github.com/mm2/Little-CMS/archive/refs/tags/2.12.tar.gz +source_filename = lcms2-2.12.tar.gz +source_hash = e501f1482fc424550ef3abbf86bf1c66090e1661249e89552d39ed5bf935df66 +patch_filename = lcms2_2.12-2_patch.zip +patch_url = https://wrapdb.mesonbuild.com/v2/lcms2_2.12-2/get_patch +patch_hash = 3ac6944ac4b8d8507b85961d98cb287532945183d0e8f094c77810e793b6bebe + +[provide] +lcms2 = liblcms2_dep + diff --git a/tests/meson.build b/tests/meson.build index eee8895..7c67e70 100644 --- a/tests/meson.build +++ b/tests/meson.build @@ -42,7 +42,7 @@ foreach test_name : test_names test_name + '.c', include_directories: [rootInclude, bablInclude], link_with: babl, - dependencies: thread, + dependencies: [thread, lcms], export_dynamic: true, install: false, ) diff --git a/tools/meson.build b/tools/meson.build index 2719335..89ccf40 100644 --- a/tools/meson.build +++ b/tools/meson.build @@ -18,7 +18,7 @@ foreach tool_name : tool_names tool_name + '.c', include_directories: [rootInclude, bablInclude], link_with: babl, - dependencies: [math, thread], + dependencies: [math, thread, lcms], install: false, ) -- 2.30.2