From f1666a3e9808f77894ef8134f42c730ad68c4974 Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Fri, 16 Jun 2023 18:55:14 +1100 Subject: [PATCH] ensure `libre2-{{ soversion }}` is not co-installable for different soversions because any new soversion (which is validated also by the pkg-config check) will then have a non-overlapping constraint for the allowed re2-version --- recipe/meta.yaml | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/recipe/meta.yaml b/recipe/meta.yaml index 790bd40..7331c24 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -4,6 +4,8 @@ # see https://github.com/google/re2/blob/2023-06-01/CMakeLists.txt#L32-L34 # changes more rarely than version {% set soversion = "11" %} +# if you change the soversion, you MUST update the below to avoid broken metadata +{% set soversion_last_updated = "2023.06.02" %} package: name: re2-split @@ -91,8 +93,12 @@ outputs: - {{ compiler('cxx') }} host: - libabseil - run_constrained: - - re2 {{ version }} *_{{ PKG_BUILDNUM }} + run: + # keep expanding the valid range until the soversion gets bumped; + # this is a run-dep (not just a constraint) to avoid that different + # libre2-{X,Y} builds can be co-installed (because any new soversion + # will then have a non-overlapping range for the allowed re2-version) + - re2 >={{ soversion_last_updated }},<={{ dotversion }} test: commands: # presence of versioned shared lib (unix) & plain dll (win)