diff options
author | Sam James <sam@gentoo.org> | 2023-05-09 13:45:53 +0100 |
---|---|---|
committer | Sam James <sam@gentoo.org> | 2023-05-09 13:46:05 +0100 |
commit | bb9b11b116b5029003c55716d733a4bc9886ad66 (patch) | |
tree | 350e159ed9ca922830f4b4f826ceb0eda42a2ea6 /x11-libs/libpciaccess | |
parent | app-editors/jedit: Stabilize 5.6.0 ppc64, #905987 (diff) | |
download | gentoo-bb9b11b116b5029003c55716d733a4bc9886ad66.tar.gz gentoo-bb9b11b116b5029003c55716d733a4bc9886ad66.tar.bz2 gentoo-bb9b11b116b5029003c55716d733a4bc9886ad66.zip |
x11-libs/libpciaccess: fix build w/ musl-1.2.4
In theory these fixes can be okay without a revbump but it's best to be careful.
Closes: https://bugs.gentoo.org/905913
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'x11-libs/libpciaccess')
-rw-r--r-- | x11-libs/libpciaccess/files/libpciaccess-0.17-musl-lfs.patch | 40 | ||||
-rw-r--r-- | x11-libs/libpciaccess/libpciaccess-0.17-r1.ebuild | 33 |
2 files changed, 73 insertions, 0 deletions
diff --git a/x11-libs/libpciaccess/files/libpciaccess-0.17-musl-lfs.patch b/x11-libs/libpciaccess/files/libpciaccess-0.17-musl-lfs.patch new file mode 100644 index 000000000000..cfd7a1469b25 --- /dev/null +++ b/x11-libs/libpciaccess/files/libpciaccess-0.17-musl-lfs.patch @@ -0,0 +1,40 @@ +https://bugs.gentoo.org/905913 +https://gitlab.freedesktop.org/xorg/lib/libpciaccess/-/commit/833c86ce15cee2a84a37ae71015f236fd32615d9 + +From 833c86ce15cee2a84a37ae71015f236fd32615d9 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Fri, 11 Nov 2022 11:15:58 -0800 +Subject: [PATCH] linux_sysfs: Use pwrite/pread instead of 64bit versions + +pread64/pwrite64 are aliased to pread/pwrite when largefile support is +enabled e.g. using _FILE_OFFSET_BITS=64 macro + +This helps it compile on latest musl C library based systems where these +functions are put under _LARGEFILE64_SOURCE which is to be removed once +all packages start using 64bit off_t, it works with glibc becuase +_GNU_SOURCE feature macro also defines _LARGEFILE64_SOURCE, thats not +the case with musl + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- a/src/linux_sysfs.c ++++ b/src/linux_sysfs.c +@@ -462,7 +462,7 @@ pci_device_linux_sysfs_read( struct pci_device * dev, void * data, + + + while ( temp_size > 0 ) { +- const ssize_t bytes = pread64( fd, data_bytes, temp_size, offset ); ++ const ssize_t bytes = pread( fd, data_bytes, temp_size, offset ); + + /* If zero bytes were read, then we assume it's the end of the + * config file. +@@ -522,7 +522,7 @@ pci_device_linux_sysfs_write( struct pci_device * dev, const void * data, + + + while ( temp_size > 0 ) { +- const ssize_t bytes = pwrite64( fd, data_bytes, temp_size, offset ); ++ const ssize_t bytes = pwrite( fd, data_bytes, temp_size, offset ); + + /* If zero bytes were written, then we assume it's the end of the + * config file. +-- +GitLab diff --git a/x11-libs/libpciaccess/libpciaccess-0.17-r1.ebuild b/x11-libs/libpciaccess/libpciaccess-0.17-r1.ebuild new file mode 100644 index 000000000000..7191e10bbbb0 --- /dev/null +++ b/x11-libs/libpciaccess/libpciaccess-0.17-r1.ebuild @@ -0,0 +1,33 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +XORG_MULTILIB=yes +XORG_TARBALL_SUFFIX="xz" +inherit xorg-3 meson-multilib + +DESCRIPTION="Library providing generic access to the PCI bus and devices" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~sparc-solaris ~x64-solaris ~x86-solaris" +IUSE="zlib" + +DEPEND=" + zlib? ( >=sys-libs/zlib-1.2.8-r1:=[${MULTILIB_USEDEP}] )" +RDEPEND="${DEPEND} + sys-apps/hwdata" + +PATCHES=( + "${FILESDIR}"/${P}-musl-lfs.patch +) + +src_prepare() { + default +} + +multilib_src_configure() { + local emesonargs=( + -Dpci-ids="${EPREFIX}"/usr/share/hwdata + $(meson_feature zlib) + ) + meson_src_configure +} |