Sync from SUSE:SLFO:Main libpciaccess revision 4f9bec93668a6b72fec38d97c45fbe3d

This commit is contained in:
Adrian Schröter 2024-05-03 15:28:10 +02:00
commit e891cb66e8
6 changed files with 353 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

1
baselibs.conf Normal file
View File

@ -0,0 +1 @@
libpciaccess0

BIN
libpciaccess-0.17.tar.xz (Stored with Git LFS) Normal file

Binary file not shown.

193
libpciaccess.changes Normal file
View File

@ -0,0 +1,193 @@
-------------------------------------------------------------------
Tue Oct 18 10:43:25 UTC 2022 - Stefan Dirsch <sndirsch@suse.com>
- Update to version 0.17
* Fix spelling/wording issues
* meson: install man page in mandir/man1/, not mandir/1/
* gitlab CI: add a basic build test for both autotools and meson
* gitlab CI: stop requiring Signed-off-by in commits
* configure.ac: Use pkg-config to find zlib dependency info
* Obtain correct value of is_64 and is_prefetchable PCI device fields
* hurd_pci: Use __pci_conf_ variants of pci_conf_
* x86: Use gnumach device instead of /dev/mem on GNU systems && factorise ifdefs
* x86: Remove mapping of regions during probe - otherwise remapping later fails
* x86: Remove probe during create, other backends don't do this
* hurd: device_open(pci), /servers/bus/pci fallback
* x86: Sort devices by B/D/F due to recursive scan
* hurd: Don't necessarily look up _SERVERS_BUS_PCI
* Add a meson build system
* autoconf: Add meson files to dist tarball
* pciaccess.pc.in: add Libs.Private
* Hurd: avoid using the deprecated RPC pci_get_ndevs()
* hurd: Implement device memory mapping
* Hurd: Fix initialization order
* Add pci_device_disable() function
* missed library installation in meson
* hurd: Add missing round up size in map_dev_mem
* hurd: Fix letting map_dev_mem map anywhere
* hurd: Fix map_dev_mem from non-zero address
* hurd: Restore initialization order
* hurd: Fix pci_device_hurd_map_legacy
* Add support for building on macOS w/o X11, using endian code from "portable_endian.h"...
* Add parentheses to the macro definition
* pci_sys set NULL after free
* Add header protection macro in linux_devmem.h
* Delete redundant symbols ';'
- switched to meson build system
-------------------------------------------------------------------
Mon Jul 22 15:02:17 UTC 2019 - Stefan Dirsch <sndirsch@suse.com>
- Update to version 0.16
* This release brings a compilation fix on 32-bit arm with newer
glibc, and fixes the raw x86 backend's memory mapping to handle
writes correctly.
-------------------------------------------------------------------
Fri Jul 12 10:35:30 UTC 2019 - Stefan Dirsch <sndirsch@suse.com>
- Update to version 0.15
* Updates for FreeBSD and Hurd support
* Fixed multifunction bridge enumeration
* Fixed a crash when no PCI bus exists
-------------------------------------------------------------------
Mon Oct 23 18:22:58 UTC 2017 - tobias.johannes.klausmann@mni.thm.de
- Update to version 0.14:
This release adds support for 32-bit PCI domain IDs, which are common in
virtualized environments. This support has been tested on Linux, and probably
also "just works" on FreeBSD and Solaris, to the extent that the underlying
OS supports it.
-------------------------------------------------------------------
Sat Apr 8 12:47:00 UTC 2017 - tobias.johannes.klausmann@mni.thm.de
- Update to version 0.13.5:
This release includes musl build fixes, improvements to the
Solaris backend and allows parsing separate sysfs files rather
than reading the config file on newer kernels.
-------------------------------------------------------------------
Mon May 4 14:08:32 UTC 2015 - sndirsch@suse.com
- Update to version 0.13.4
* Add missing guards around config.h inclusion
* Check for __linux__ instead of linux during compilation
* Include the POSIX fcntl.h instead of sys/fcntl.h
* Include config.h before any other headers.
* Bug 89151: Fix build on NetBSD/alpha and NetBSD/sparc64.
-------------------------------------------------------------------
Mon Feb 9 12:56:45 UTC 2015 - sndirsch@suse.com
- Update to version 0.13.3
* This release provides a number of platform-specific improvements
for various platforms, including Linux, Solaris, OpenBSD, NetBSD,
and Hurd, plus the addition of some support for Cygwin.
- added baselibs.conf as source to specfile in order to make factory
checkin policy happy
-------------------------------------------------------------------
Sat Aug 17 22:19:13 UTC 2013 - zaitor@opensuse.org
- Update to version 0.13.2:
+ Fix Sun bug #7035791: scanpci should report 64 bit registers.
+ Resync COPYING file with copyrights/licenses from code.
+ pci_device_solx_devfs_probe: implicit conversion changes
signedness warnings.
+ pci_device_solx_devfs_read: fix sign conversion/comparison
warnings.
+ Support more pci functions on NetBSD.
+ Update NetBSD support and fix build on NetBSD-4.
+ Enable boot_vga support only if WSDISPLAYIO_GET_BUSID is
defined. Fixes build on NetBSD-5.
+ Add legacy IO routines for FreeBSD (fdo#63583).
+ pci_id_file_open: move variable inside the #ifndef that uses
it.
+ Define PCI_MATCH_ANY as an unsigned int.
+ Move 'const' to correct place, so it has meaning.
+ Protect config.h like usual.
+ autogen.sh: Implement GNOME Build API
+ configure: Remove AM_MAINTAINER_MODE
+ PCI: set correct mask value when matching for bridges.
+ scanpci: print meaningful info on BASEROM
+ libpciaccess:
- sparc rom read fix
- implementation of boot_vga in Solaris
- fix memory usage errors
+ Implement legacy io & map for x86 backend
+ Solaris:
- Refactor pci_device_solx_devfs_map_range to reduce code
duplication.
- Implement map_legacy & legacy_io functions.
- Probe improvement.
- Add domain support for sparc platform.
- Remove #defines for Ultra 45 southbridge device ids.
-------------------------------------------------------------------
Fri Aug 2 12:38:30 UTC 2013 - sndirsch@suse.com
- u_libpciaccess-vgaarb-add-function-to-get-default-vga-device-and-it.patch:
Reenable default device when shutting down VGA arbitration.
(bnc#714677, bnc#832973).
-------------------------------------------------------------------
Sun Feb 17 17:21:53 UTC 2013 - jengelh@inai.de
- Use more robust make install call
-------------------------------------------------------------------
Thu Apr 12 07:13:04 UTC 2012 - vuntz@opensuse.org
- Update to version 0.13.1:
+ linux: Fix out[bwl] macros on non-I/O architectures
+ Fix pci_io_handle allocation routines to provide sound stable
memory allocation
+ Fix in OpenBSD support
- Changes from version 0.13:
+ linux: Don't use /dev/port
+ Use O_CLOEXEC for internal file descriptors
+ delete_io_handle: fix deletion of last handle causing crash
+ Fix leak and compiler warnings
+ Improvements to OpenBSD and Solaris support
-------------------------------------------------------------------
Mon Feb 13 02:40:46 UTC 2012 - jengelh@medozas.de
- Update to new upstream release 0.12.902
* ships new map_legacy APIs required by the current development
version of xorg-server as well as miscelaneous bug fixes.
- Rename main package from libpciaccess0 to libpciaccess.
Do away with the 0 in libpciaccess0-devel, since the devel
package is not actually versioned and only one can be installed.
- Parallel build with %_smp_mflags
-------------------------------------------------------------------
Tue Jan 10 11:47:22 UTC 2012 - sndirsch@suse.com
- added libtool to Buildrequires to fix build on factory
-------------------------------------------------------------------
Thu Dec 1 17:06:34 UTC 2011 - coolo@suse.com
- add automake as buildrequire to avoid implicit dependency
-------------------------------------------------------------------
Wed Nov 2 13:27:29 UTC 2011 - eich@suse.com
- Add ./ to the %_configure define - just to be on the safe side.
-------------------------------------------------------------------
Tue Nov 1 13:30:06 UTC 2011 - johannesobermayr@gmx.de
- update to 0.12.901
* use autogen.sh not ./configure
* needs pkgconfig(xorg-macros) >= 1.8
* general X11 is 7.6 not 7.4
-------------------------------------------------------------------
Tue Aug 30 12:47:57 UTC 2011 - sndirsch@suse.com
- created package

93
libpciaccess.spec Normal file
View File

@ -0,0 +1,93 @@
#
# spec file for package libpciaccess
#
# Copyright (c) 2022 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
Name: libpciaccess
%define lname libpciaccess0
Version: 0.17
Release: 0
Summary: Generic PCI access library
License: MIT
Group: Development/Libraries/C and C++
URL: http://cgit.freedesktop.org/xorg/lib/libpciaccess/
#Git-Clone: git://anongit.freedesktop.org/xorg/lib/libpciaccess
#Git-Web: http://cgit.freedesktop.org/xorg/lib/libpciaccess/
Source: http://xorg.freedesktop.org/releases/individual/lib/%{name}-%{version}.tar.xz
Source1: baselibs.conf
Patch0: u_libpciaccess-vgaarb-add-function-to-get-default-vga-device-and-it.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
#git#BuildRequires: autoconf >= 2.60, automake, libtool
BuildRequires: cmake
BuildRequires: meson
BuildRequires: pkgconfig
BuildRequires: pkgconfig(xorg-macros) >= 1.8
BuildRequires: pkgconfig(zlib)
%description
Provides functionality for X to access the PCI bus and devices in a
platform-independent way.
%package -n %lname
Summary: Generic PCI access library
Group: System/Libraries
%description -n %lname
Provides functionality for X to access the PCI bus and devices in a
platform-independent way.
%package devel
Summary: Development files for the Generic PCI access library
Group: Development/Libraries/C and C++
Requires: %lname = %version
# O/P added for 12.2
Provides: libpciaccess0-devel = 7.6_%version-%release
Obsoletes: libpciaccess0-devel < 7.6_%version-%release
%description devel
Provides functionality for X to access the PCI bus and devices in a
platform-independent way.
This package contains the development headers for the library found
in %lname.
%prep
%setup -q
%patch0 -p1
%build
%meson -Dpci-ids=%_datadir
%meson_build
%install
%meson_install
%post -n %lname -p /sbin/ldconfig
%postun -n %lname -p /sbin/ldconfig
%files -n %lname
%defattr(-,root,root)
%_libdir/libpciaccess.so.0*
%files devel
%defattr(-,root,root)
%_includedir/pciaccess.h
%_libdir/libpciaccess.so
%_libdir/pkgconfig/pciaccess.pc
%changelog

View File

@ -0,0 +1,40 @@
From: Egbert Eich <eich@freedesktop.org>
Author: Egbert Eich <eich@suse.de>
Date: Sun, 28 Aug 2011 19:53:02 +0200
Patch-Mainline: "To be upstreamed."
Subject: [PATCH] vgaarb: add function to get default vga device and it's decodes.
Signed-off-by: Egbert Eich <eich@freedesktop.org>
---
src/common_vgaarb.c | 11 ++++++++++-
1 files changed, 10 insertions(+), 1 deletions(-)
Index: libpciaccess-0.13.1/src/common_vgaarb.c
===================================================================
--- libpciaccess-0.13.1.orig/src/common_vgaarb.c
+++ libpciaccess-0.13.1/src/common_vgaarb.c
@@ -153,7 +153,11 @@ pci_device_vgaarb_fini(void)
{
if (!pci_sys)
return;
-
+ if (pci_device_vgaarb_set_target(NULL) < 0 ||
+ pci_device_vgaarb_lock() < 0 ||
+ pci_device_vgaarb_unlock() < 0) {
+ fprintf(stderr, "VGA Arbitration: Cannot restore default device.\n");
+ }
close(pci_sys->vgaarb_fd);
}
@@ -331,6 +335,11 @@ pci_device_vgaarb_unlock(void)
int pci_device_vgaarb_get_info(struct pci_device *dev, int *vga_count, int *rsrc_decodes)
{
*vga_count = pci_sys->vga_count;
+
+ if (!rsrc_decodes)
+ return 0;
+ if (!dev)
+ dev = pci_sys->vga_default_dev;
if (!dev)
return 0;