From 67596c69046cb4fe0ddca89a6d4cf5d3103e6c46 Mon Sep 17 00:00:00 2001 From: Masayuki Yamamoto <15698961+ma8ma@users.noreply.github.com> Date: Sat, 25 Mar 2023 23:45:33 +0900 Subject: [PATCH] meson: Update version requirement for GTest (>= 1.10.0) (#1131) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit GTestの依存関係を探す処理を更新してバージョン要件を1.10.0以上にします。 また、ライブラリ 'gtest_main' を使うようにmeson.buildを変更します。 変更前は dependency() の 'main' キーワード引数[1]を利用して GTestが提供する main() とリンクしていました。 GTest 1.10.0のころから pkg-config のサポートが追加されているため 'main' キーワードを使わなくてもテストをビルドできるようになりました。 この修正でMeson実装の一つである muon[2] を使ってJDimのビルドやテストが 可能になります。dependency() の 'main' キーワードは今のところ 古いGTestのサポート以外では使われていないようです。 [1]: https://mesonbuild.com/Dependencies.html#gtest-and-gmock [2]: https://sr.ht/~lattis/muon/ --- INSTALL | 2 +- docs/manual/make.md | 2 +- meson.build | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/INSTALL b/INSTALL index 9b0e9d890..9c9645f2d 100644 --- a/INSTALL +++ b/INSTALL @@ -32,7 +32,7 @@ ・alsa-lib (-Dalsa=enabled) ・openssl 1.1.1 以上 (-Dtls=openssl) ・migemo (-Dmigemo=enabled) - ・googletest (`test/RADME.md`を参照) + ・googletest 1.10.0 以上 (`test/RADME.md`を参照) WebPやAVIF画像の表示に必要なパッケージ インストールされていない環境では`.webp`や`.avif`で終わるURLは通常リンクになる。 diff --git a/docs/manual/make.md b/docs/manual/make.md index 6d23b41a8..f9bb31841 100644 --- a/docs/manual/make.md +++ b/docs/manual/make.md @@ -44,7 +44,7 @@ layout: default - alsa-lib (`-Dalsa=enabled`) - openssl 1.1.1 以上 (`-Dtls=openssl`) - migemo (`-Dmigemo=enabled`) -- googletest ([test/RADME.md][testreadme]を参照) +- googletest 1.10.0 以上 ([test/RADME.md][testreadme]を参照) #### WebPやAVIF画像の表示に必要なパッケージ インストールされていない環境では`.webp`や`.avif`で終わるURLは通常リンクになる。 diff --git a/meson.build b/meson.build index 5243c261d..b4cccee25 100644 --- a/meson.build +++ b/meson.build @@ -151,9 +151,9 @@ endif build_tests_opt = get_option('build_tests') if not build_tests_opt.disabled() # ディストロのパッケージとmeson wrapに対応 - gtest_main_dep = dependency('gtest', - main : true, + gtest_main_dep = dependency('gtest_main', fallback : ['gtest', 'gtest_main_dep'], + version : '>= 1.10.0', required : build_tests_opt) build_tests = gtest_main_dep.found() else