diff options
Diffstat (limited to 'x11-libs/libxkbcommon/files')
-rw-r--r-- | x11-libs/libxkbcommon/files/libxkbcommon-1.7.0-symbol-ver.patch | 104 |
1 files changed, 104 insertions, 0 deletions
diff --git a/x11-libs/libxkbcommon/files/libxkbcommon-1.7.0-symbol-ver.patch b/x11-libs/libxkbcommon/files/libxkbcommon-1.7.0-symbol-ver.patch new file mode 100644 index 000000000000..6defb3563b78 --- /dev/null +++ b/x11-libs/libxkbcommon/files/libxkbcommon-1.7.0-symbol-ver.patch @@ -0,0 +1,104 @@ +Avoid breaking with older binutils (silently not having versioned symbols). + +https://github.com/xkbcommon/libxkbcommon/commit/621e31014cbc985bd99d778260ad11a5fee783da +https://github.com/xkbcommon/libxkbcommon/commit/1d8a25d6f10ecfc638d7a889bf7d42f79c692a40 + +From 621e31014cbc985bd99d778260ad11a5fee783da Mon Sep 17 00:00:00 2001 +From: Pierre Le Marre <dev@wismill.eu> +Date: Tue, 16 Jul 2024 07:00:53 +0200 +Subject: [PATCH] build: Require meson >= 0.58 + +This will enable f-strings and allow us to simplify the build file. +--- + meson.build | 14 ++++---------- + 2 files changed, 5 insertions(+), 10 deletions(-) + create mode 100644 changes/build/+meson_bump.breaking.md + +--- a/meson.build ++++ b/meson.build +@@ -7,7 +7,7 @@ project( + 'warning_level=2', + 'b_lundef=true', + ], +- meson_version : '>= 0.52.0', ++ meson_version : '>= 0.58.0', # Released on May 2021 + ) + pkgconfig = import('pkgconfig') + cc = meson.get_compiler('c') +@@ -270,9 +270,7 @@ dep_libxkbcommon = declare_dependency( + link_with: libxkbcommon, + include_directories: include_directories('include'), + ) +-if meson.version().version_compare('>= 0.54.0') +- meson.override_dependency('xkbcommon', dep_libxkbcommon) +-endif ++meson.override_dependency('xkbcommon', dep_libxkbcommon) + pkgconfig.generate( + libxkbcommon, + name: 'xkbcommon', +@@ -341,9 +339,7 @@ You can disable X11 support with -Denable-x11=false.''') + link_with: libxkbcommon_x11, + include_directories: include_directories('include'), + ) +- if meson.version().version_compare('>= 0.54.0') +- meson.override_dependency('xkbcommon-x11', dep_libxkbcommon_x11) +- endif ++ meson.override_dependency('xkbcommon-x11', dep_libxkbcommon_x11) + pkgconfig.generate( + libxkbcommon_x11, + name: 'xkbcommon-x11', +@@ -409,9 +405,7 @@ if get_option('enable-xkbregistry') + link_with: libxkbregistry, + include_directories: include_directories('include'), + ) +- if meson.version().version_compare('>= 0.54.0') +- meson.override_dependency('xkbregistry', dep_libxkbregistry) +- endif ++ meson.override_dependency('xkbregistry', dep_libxkbregistry) + endif + + man_pages = [] + +From 1d8a25d6f10ecfc638d7a889bf7d42f79c692a40 Mon Sep 17 00:00:00 2001 +From: Pierre Le Marre <dev@wismill.eu> +Date: Fri, 12 Jul 2024 11:10:46 +0200 +Subject: [PATCH] build: Check for --undefined-version support + +Gate the use of `--undefined-version` in the linker because it breaks on +older GNU `ld`: https://gnats.netbsd.org/cgi-bin/query-pr-single.pl?number=58272. +--- + meson.build | 11 +++++++++-- + 2 files changed, 11 insertions(+), 2 deletions(-) + +diff --git a/meson.build b/meson.build +index e8451b69..d0738468 100644 +--- a/meson.build ++++ b/meson.build +@@ -142,10 +142,17 @@ configh_data.set('_CRT_NONSTDC_NO_DEPRECATE', 1) + # Reduce unnecessary includes on MSVC. + configh_data.set('WIN32_LEAN_AND_MEAN', 1) + ++xkbcommon_map = meson.current_source_dir() / 'xkbcommon.map' ++ + # Supports -Wl,--version-script? ++if cc.has_link_argument('-Wl,--undefined-version') ++ extra_linker_args = ',--undefined-version' ++else ++ extra_linker_args = '' ++endif + have_version_script = cc.links( + 'int main(){}', +- args: '-Wl,--undefined-version,--version-script=' + meson.current_source_dir()/'xkbcommon.map', ++ args: f'-Wl,--version-script=@xkbcommon_map@@extra_linker_args@', + name: '-Wl,--version-script', + ) + +@@ -235,7 +242,7 @@ libxkbcommon_sources = [ + libxkbcommon_link_args = [] + libxkbcommon_link_deps = [] + if have_version_script +- libxkbcommon_link_args += '-Wl,--version-script=' + meson.current_source_dir()/'xkbcommon.map' ++ libxkbcommon_link_args += f'-Wl,--version-script=@xkbcommon_map@' + libxkbcommon_link_deps += 'xkbcommon.map' + elif cc.get_argument_syntax() == 'msvc' + libxkbcommon_def = custom_target('xkbcommon.def', |