Просмотр исходного кода

package/libpciaccess: fix static build

Fix the following static build failure raised since bump to version 0.18
in commit 136d4dfbe6126b5ed20237c571f599dfc163d110:

/home/autobuild/autobuild/instance-0/output-1/host/bin/arceb-buildroot-linux-uclibc-gcc  -o src/libpciaccess.so.0.11.1 src/libpciaccess.so.0.11.1.p/common_bridge.c.o src/libpciaccess.so.0.11.1.p/common_iterator.c.o src/libpciaccess.so.0.11.1.p/common_init.c.o src/libpciaccess.so.0.11.1.p/common_interface.c.o src/libpciaccess.so.0.11.1.p/common_io.c.o src/libpciaccess.so.0.11.1.p/common_capability.c.o src/libpciaccess.so.0.11.1.p/common_device_name.c.o src/libpciaccess.so.0.11.1.p/common_map.c.o src/libpciaccess.so.0.11.1.p/linux_sysfs.c.o src/libpciaccess.so.0.11.1.p/linux_devmem.c.o src/libpciaccess.so.0.11.1.p/common_vgaarb.c.o -Wl,--as-needed -Wl,--no-undefined -Wl,-O1 -shared -fPIC -Wl,--start-group -Wl,-soname,libpciaccess.so.0 -static /home/autobuild/autobuild/instance-0/output-1/host/arceb-buildroot-linux-uclibc/sysroot/usr/lib/libz.a -Wl,--end-group
/home/autobuild/autobuild/instance-0/output-1/host/lib/gcc/arceb-buildroot-linux-uclibc/11.4.0/../../../../arceb-buildroot-linux-uclibc/bin/ld: /home/autobuild/autobuild/instance-0/output-1/host/lib/gcc/arceb-buildroot-linux-uclibc/11.4.0/crtbeginT.o: relocation R_ARC_32_ME against `__TMC_END__' can not be used when making a shared object; recompile with -fPIC

Fixes: 136d4dfbe6126b5ed20237c571f599dfc163d110
 - http://autobuild.buildroot.org/results/7604706f4f4ab96a485a1dabe7cb4c98a2ef27d4

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Arnout Vandecappelle <arnout@mind.be>
Fabrice Fontaine 1 год назад
Родитель
Сommit
1f418a6d14

+ 48 - 0
package/libpciaccess/0001-meson-allow-building-static-library-not-just-shared.patch

@@ -0,0 +1,48 @@
+From ad7e9cb4b291a46812eea321f0634cfc46fb94e2 Mon Sep 17 00:00:00 2001
+From: Alan Coopersmith <alan.coopersmith@oracle.com>
+Date: Thu, 14 Mar 2024 13:55:55 -0700
+Subject: [PATCH] meson: allow building static library, not just shared
+
+Lets builders specify -Ddefault_library={shared,static,both}
+to control which types of libpciaccess library are built
+
+Closes: #20
+Reported-by: Maxime Gauduin (@alucryd)
+Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
+
+Upstream: https://gitlab.freedesktop.org/xorg/lib/libpciaccess/-/commit/ad7e9cb4b291a46812eea321f0634cfc46fb94e2
+Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+---
+ .gitlab-ci.yml  | 2 +-
+ src/meson.build | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
+index bcb75cf..185edc2 100644
+--- a/.gitlab-ci.yml
++++ b/.gitlab-ci.yml
+@@ -91,7 +91,7 @@ meson:
+       - MESON_OPTIONS: ['-Dzlib=disabled', '-Dzlib=enabled']
+   script:
+     - mkdir -p ../_inst
+-    - meson setup builddir --prefix="$PWD/../_inst" -Dwarning_level=3 $MESON_OPTIONS
++    - meson setup builddir --prefix="$PWD/../_inst" -Dwarning_level=3 -Ddefault_library=both $MESON_OPTIONS
+     - meson configure builddir
+     - ninja -C builddir test
+     - ninja -C builddir install
+diff --git a/src/meson.build b/src/meson.build
+index 24eee04..e319688 100644
+--- a/src/meson.build
++++ b/src/meson.build
+@@ -38,7 +38,7 @@ endif
+ 
+ inc_src = include_directories('.')
+ 
+-libpciaccess = shared_library(
++libpciaccess = library(
+   'pciaccess',
+   [
+     'common_bridge.c',
+-- 
+GitLab
+