nix/14001.patch
2025-10-27 12:42:00 +08:00

246 lines
9.8 KiB
Diff

From 86bb7c958a4ed46411da74a4498581a0cdc454a0 Mon Sep 17 00:00:00 2001
From: Jens Petersen <petersen@redhat.com>
Date: Tue, 16 Sep 2025 12:54:30 +0800
Subject: [PATCH] meson: refactor nix_soversion into
nix-meson-build-support/common
This is a follow-on to #13995 which added soversion to the libraries
---
nix-meson-build-support/common/meson.build | 3 +++
src/libcmd/meson.build | 2 +-
src/libexpr-c/meson.build | 2 +-
src/libexpr-test-support/meson.build | 2 +-
src/libexpr/meson.build | 2 +-
src/libfetchers-c/meson.build | 2 +-
src/libfetchers/meson.build | 2 +-
src/libflake-c/meson.build | 2 +-
src/libflake/meson.build | 2 +-
src/libmain-c/meson.build | 2 +-
src/libmain/meson.build | 2 +-
src/libstore-c/meson.build | 2 +-
src/libstore-test-support/meson.build | 2 +-
src/libstore/meson.build | 2 +-
src/libutil-c/meson.build | 2 +-
src/libutil-test-support/meson.build | 2 +-
src/libutil/meson.build | 2 +-
17 files changed, 19 insertions(+), 16 deletions(-)
diff --git a/nix-meson-build-support/common/meson.build b/nix-meson-build-support/common/meson.build
index fd686f1407f..5a29ff61d94 100644
--- a/nix-meson-build-support/common/meson.build
+++ b/nix-meson-build-support/common/meson.build
@@ -40,3 +40,6 @@ if cxx.get_id() == 'clang' and ('address' in get_option('b_sanitize') or 'undefi
))
add_project_link_arguments('-shared-libasan', language : 'cpp')
endif
+
+# Darwin ld doesn't like "X.Y.Zpre"
+nix_soversion = meson.project_version().strip('pre')
diff --git a/src/libcmd/meson.build b/src/libcmd/meson.build
index b259182c266..f553afa0ba1 100644
--- a/src/libcmd/meson.build
+++ b/src/libcmd/meson.build
@@ -95,7 +95,7 @@ this_library = library(
'nixcmd',
sources,
config_priv_h,
- soversion : meson.project_version().replace('pre', ''),
+ soversion : nix_soversion,
dependencies : deps_public + deps_private + deps_other,
include_directories : include_dirs,
link_args : linker_export_flags,
diff --git a/src/libexpr-c/meson.build b/src/libexpr-c/meson.build
index 95c2c8ac92c..c47704ce411 100644
--- a/src/libexpr-c/meson.build
+++ b/src/libexpr-c/meson.build
@@ -50,7 +50,7 @@ subdir('nix-meson-build-support/windows-version')
this_library = library(
'nixexprc',
sources,
- soversion : meson.project_version().replace('pre', ''),
+ soversion : nix_soversion,
dependencies : deps_public + deps_private + deps_other,
include_directories : include_dirs,
link_args : linker_export_flags,
diff --git a/src/libexpr-test-support/meson.build b/src/libexpr-test-support/meson.build
index 1d874320a51..df28661b7e7 100644
--- a/src/libexpr-test-support/meson.build
+++ b/src/libexpr-test-support/meson.build
@@ -44,7 +44,7 @@ subdir('nix-meson-build-support/windows-version')
this_library = library(
'nix-expr-test-support',
sources,
- soversion : meson.project_version().replace('pre', ''),
+ soversion : nix_soversion,
dependencies : deps_public + deps_private + deps_other,
include_directories : include_dirs,
# TODO: Remove `-lrapidcheck` when https://github.com/emil-e/rapidcheck/pull/326
diff --git a/src/libexpr/meson.build b/src/libexpr/meson.build
index dc43a97420d..55a36c1bd58 100644
--- a/src/libexpr/meson.build
+++ b/src/libexpr/meson.build
@@ -181,7 +181,7 @@ this_library = library(
parser_tab,
lexer_tab,
generated_headers,
- soversion : meson.project_version().replace('pre', ''),
+ soversion : nix_soversion,
dependencies : deps_public + deps_private + deps_other,
include_directories : include_dirs,
link_args : linker_export_flags,
diff --git a/src/libfetchers-c/meson.build b/src/libfetchers-c/meson.build
index a381c792af9..db415d9173e 100644
--- a/src/libfetchers-c/meson.build
+++ b/src/libfetchers-c/meson.build
@@ -53,7 +53,7 @@ subdir('nix-meson-build-support/windows-version')
this_library = library(
'nixfetchersc',
sources,
- soversion : meson.project_version().replace('pre', ''),
+ soversion : nix_soversion,
dependencies : deps_public + deps_private + deps_other,
include_directories : include_dirs,
link_args : linker_export_flags,
diff --git a/src/libfetchers/meson.build b/src/libfetchers/meson.build
index e5f5bd19210..792a0fdbf41 100644
--- a/src/libfetchers/meson.build
+++ b/src/libfetchers/meson.build
@@ -61,7 +61,7 @@ subdir('nix-meson-build-support/windows-version')
this_library = library(
'nixfetchers',
sources,
- soversion : meson.project_version().replace('pre', ''),
+ soversion : nix_soversion,
dependencies : deps_public + deps_private + deps_other,
include_directories : include_dirs,
link_args : linker_export_flags,
diff --git a/src/libflake-c/meson.build b/src/libflake-c/meson.build
index 83729178693..fddb39bdf96 100644
--- a/src/libflake-c/meson.build
+++ b/src/libflake-c/meson.build
@@ -53,7 +53,7 @@ subdir('nix-meson-build-support/windows-version')
this_library = library(
'nixflakec',
sources,
- soversion : meson.project_version().replace('pre', ''),
+ soversion : nix_soversion,
dependencies : deps_public + deps_private + deps_other,
include_directories : include_dirs,
link_args : linker_export_flags,
diff --git a/src/libflake/meson.build b/src/libflake/meson.build
index a962258e723..58916ecd9ab 100644
--- a/src/libflake/meson.build
+++ b/src/libflake/meson.build
@@ -58,7 +58,7 @@ this_library = library(
'nixflake',
sources,
generated_headers,
- soversion : meson.project_version().replace('pre', ''),
+ soversion : nix_soversion,
dependencies : deps_public + deps_private + deps_other,
include_directories : include_dirs,
link_args : linker_export_flags,
diff --git a/src/libmain-c/meson.build b/src/libmain-c/meson.build
index 61ec4d54b53..36332fdb70a 100644
--- a/src/libmain-c/meson.build
+++ b/src/libmain-c/meson.build
@@ -45,7 +45,7 @@ subdir('nix-meson-build-support/windows-version')
this_library = library(
'nixmainc',
sources,
- soversion : meson.project_version().replace('pre', ''),
+ soversion : nix_soversion,
dependencies : deps_public + deps_private + deps_other,
include_directories : include_dirs,
link_args : linker_export_flags,
diff --git a/src/libmain/meson.build b/src/libmain/meson.build
index d465dd6a40f..2ac59924e59 100644
--- a/src/libmain/meson.build
+++ b/src/libmain/meson.build
@@ -77,7 +77,7 @@ this_library = library(
'nixmain',
sources,
config_priv_h,
- soversion : meson.project_version().replace('pre', ''),
+ soversion : nix_soversion,
dependencies : deps_public + deps_private + deps_other,
include_directories : include_dirs,
link_args : linker_export_flags,
diff --git a/src/libstore-c/meson.build b/src/libstore-c/meson.build
index b73822b0cb7..c6b6174c775 100644
--- a/src/libstore-c/meson.build
+++ b/src/libstore-c/meson.build
@@ -46,7 +46,7 @@ subdir('nix-meson-build-support/windows-version')
this_library = library(
'nixstorec',
sources,
- soversion : meson.project_version().replace('pre', ''),
+ soversion : nix_soversion,
dependencies : deps_public + deps_private + deps_other,
include_directories : include_dirs,
link_args : linker_export_flags,
diff --git a/src/libstore-test-support/meson.build b/src/libstore-test-support/meson.build
index 90fef8489ad..5873680eae2 100644
--- a/src/libstore-test-support/meson.build
+++ b/src/libstore-test-support/meson.build
@@ -44,7 +44,7 @@ subdir('nix-meson-build-support/windows-version')
this_library = library(
'nix-store-test-support',
sources,
- soversion : meson.project_version().replace('pre', ''),
+ soversion : nix_soversion,
dependencies : deps_public + deps_private + deps_other,
include_directories : include_dirs,
# TODO: Remove `-lrapidcheck` when https://github.com/emil-e/rapidcheck/pull/326
diff --git a/src/libstore/meson.build b/src/libstore/meson.build
index 95dcf08bd0d..556616181ae 100644
--- a/src/libstore/meson.build
+++ b/src/libstore/meson.build
@@ -363,7 +363,7 @@ this_library = library(
generated_headers,
sources,
config_priv_h,
- soversion : meson.project_version().replace('pre', ''),
+ soversion : nix_soversion,
dependencies : deps_public + deps_private + deps_other,
include_directories : include_dirs,
link_args : linker_export_flags,
diff --git a/src/libutil-c/meson.build b/src/libutil-c/meson.build
index b214266a13a..1806dbb6f9a 100644
--- a/src/libutil-c/meson.build
+++ b/src/libutil-c/meson.build
@@ -53,7 +53,7 @@ this_library = library(
'nixutilc',
sources,
config_priv_h,
- soversion : meson.project_version().replace('pre', ''),
+ soversion : nix_soversion,
dependencies : deps_public + deps_private + deps_other,
include_directories : include_dirs,
link_args : linker_export_flags,
diff --git a/src/libutil-test-support/meson.build b/src/libutil-test-support/meson.build
index da2b443ec54..64231107eb6 100644
--- a/src/libutil-test-support/meson.build
+++ b/src/libutil-test-support/meson.build
@@ -41,7 +41,7 @@ subdir('nix-meson-build-support/windows-version')
this_library = library(
'nix-util-test-support',
sources,
- soversion : meson.project_version().replace('pre', ''),
+ soversion : nix_soversion,
dependencies : deps_public + deps_private + deps_other,
include_directories : include_dirs,
# TODO: Remove `-lrapidcheck` when https://github.com/emil-e/rapidcheck/pull/326
diff --git a/src/libutil/meson.build b/src/libutil/meson.build
index ff8b042c7ec..f4b8dbb613b 100644
--- a/src/libutil/meson.build
+++ b/src/libutil/meson.build
@@ -197,7 +197,7 @@ subdir('nix-meson-build-support/windows-version')
this_library = library(
'nixutil',
sources,
- soversion : meson.project_version().replace('pre', ''),
+ soversion : nix_soversion,
dependencies : deps_public + deps_private + deps_other,
include_directories : include_dirs,
link_args : linker_export_flags,