diff --git a/pciutils-2.2.1-idpath.patch b/pciutils-2.2.1-idpath.patch deleted file mode 100644 index edb58d7..0000000 --- a/pciutils-2.2.1-idpath.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up pciutils-3.0.0/Makefile.idpath pciutils-3.0.0/Makefile ---- pciutils-3.0.0/Makefile.idpath 2008-04-10 21:19:43.000000000 +0200 -+++ pciutils-3.0.0/Makefile 2008-09-01 15:16:19.000000000 +0200 -@@ -27,7 +27,7 @@ ABI_VERSION=.3 - PREFIX=/usr/local - SBINDIR=$(PREFIX)/sbin - SHAREDIR=$(PREFIX)/share --IDSDIR=$(SHAREDIR) -+IDSDIR=$(SHAREDIR)/hwdata - MANDIR:=$(shell if [ -d $(PREFIX)/share/man ] ; then echo $(PREFIX)/share/man ; else echo $(PREFIX)/man ; fi) - INCDIR=$(PREFIX)/include - LIBDIR=$(PREFIX)/lib diff --git a/pciutils-3.1.0-pcimodules.patch b/pciutils-3.1.0-pcimodules.patch deleted file mode 100644 index f7c66f1..0000000 --- a/pciutils-3.1.0-pcimodules.patch +++ /dev/null @@ -1,18 +0,0 @@ ---- pciutils-3.1.0/Makefile -+++ pciutils-3.1.0/Makefile -@@ -62,6 +62,7 @@ - lib/config.h lib/config.mk: - cd lib && ./configure - -+pcimodules: pcimodules.o common.o lib/$(PCILIB) - lspci: lspci.o ls-vpd.o ls-caps.o ls-ecaps.o ls-kernel.o ls-tree.o ls-map.o common.o lib/$(PCILIB) - setpci: setpci.o common.o lib/$(PCILIB) - -@@ -74,6 +75,7 @@ - ls-tree.o: ls-tree.c $(LSPCIINC) - ls-map.o: ls-map.c $(LSPCIINC) - -+pcimodules.o: pcimodules.c pciutils.h $(PCIINC) - setpci.o: setpci.c pciutils.h $(PCIINC) - common.o: common.c pciutils.h $(PCIINC) - diff --git a/pciutils-3.1.2-pcimodules.patch b/pciutils-3.1.2-pcimodules.patch deleted file mode 100644 index 599fff2..0000000 --- a/pciutils-3.1.2-pcimodules.patch +++ /dev/null @@ -1,284 +0,0 @@ -diff -Naur pciutils-3.0.3.orig/pcimodules.c pciutils-3.0.3/pcimodules.c ---- pciutils-3.0.3.orig/pcimodules.c 1970-01-01 07:00:00.000000000 +0700 -+++ pciutils-3.0.3/pcimodules.c 2008-12-01 13:38:39.000000000 +0700 -@@ -0,0 +1,184 @@ -+/* -+ * pcimodules: Load all kernel modules for PCI device currently -+ * plugged into any PCI slot. -+ * -+ * Copyright 2000 Yggdrasil Computing, Incorporated -+ * This file may be copied under the terms and conditions of version -+ * two of the GNU General Public License, as published by the Free -+ * Software Foundation (Cambridge, Massachusetts, USA). -+ * -+ * This file is based on pciutils/lib/example.c, which has the following -+ * authorship and copyright statement: -+ * -+ * Written by Martin Mares and put to public domain. You can do -+ * with it anything you want, but I don't give you any warranty. -+ */ -+ -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+ -+#define _GNU_SOURCE -+#include -+ -+#include "pciutils.h" -+ -+#define MODDIR "/lib/modules" -+#define PCIMAP "modules.pcimap" -+ -+#define LINELENGTH 8000 -+ -+#define DEVICE_ANY 0xffffffff -+#define VENDOR_ANY 0xffffffff -+ -+#include "lib/pci.h" -+ -+struct pcimap_entry { -+ unsigned int vendor, subsys_vendor, dev, subsys_dev, class, class_mask; -+ char *module; -+ struct pcimap_entry *next; -+}; -+ -+static struct pcimap_entry *pcimap_list = NULL; -+ -+const char program_name[] = "pcimodules"; -+ -+#define OPT_STRING "h" -+static struct option long_options[] = { -+ {"class", required_argument, NULL, 'c'}, -+ {"classmask", required_argument, NULL, 'm'}, -+ {"help", no_argument, NULL, 'h'}, -+ { 0, 0, 0, 0} -+}; -+ -+static unsigned long desired_class; -+static unsigned long desired_classmask; /* Default is 0: accept all classes.*/ -+ -+static void -+read_pcimap(void) -+{ -+ struct utsname utsname; -+ char filename[MAXPATHLEN]; -+ FILE *pcimap_file; -+ char line[LINELENGTH]; -+ struct pcimap_entry *entry; -+ unsigned int driver_data; -+ char *prevmodule = ""; -+ char module[LINELENGTH]; -+ -+ if (uname(&utsname) < 0) { -+ perror("uname"); -+ exit(1); -+ } -+ sprintf(filename, "%s/%s/%s", MODDIR, utsname.release, PCIMAP); -+ if ((pcimap_file = fopen(filename, "r")) == NULL) { -+ perror(filename); -+ exit(1); -+ } -+ -+ while(fgets(line, LINELENGTH, pcimap_file) != NULL) { -+ if (line[0] == '#') -+ continue; -+ -+ entry = xmalloc(sizeof(struct pcimap_entry)); -+ -+ if (sscanf(line, "%s 0x%x 0x%x 0x%x 0x%x 0x%x 0x%x 0x%x", -+ module, -+ &entry->vendor, &entry->dev, -+ &entry->subsys_vendor, &entry->subsys_dev, -+ &entry->class, &entry->class_mask, -+ &driver_data) != 8) { -+ fprintf (stderr, -+ "modules.pcimap unparsable line: %s.\n", line); -+ free(entry); -+ continue; -+ } -+ -+ /* Optimize memory allocation a bit, in case someday we -+ have Linux systems with ~100,000 modules. It also -+ allows us to just compare pointers to avoid trying -+ to load a module twice. */ -+ if (strcmp(module, prevmodule) != 0) { -+ prevmodule = xmalloc(strlen(module)+1); -+ strcpy(prevmodule, module); -+ } -+ entry->module = prevmodule; -+ entry->next = pcimap_list; -+ pcimap_list = entry; -+ } -+ fclose(pcimap_file); -+} -+ -+/* Return a filled in pci_access->dev tree, with the device classes -+ stored in dev->aux. -+*/ -+static void -+match_pci_modules(void) -+{ -+ struct pci_access *pacc; -+ struct pci_dev *dev; -+ unsigned int class, subsys_dev, subsys_vendor; -+ struct pcimap_entry *map; -+ const char *prevmodule = ""; -+ -+ pacc = pci_alloc(); /* Get the pci_access structure */ -+ /* Set all options you want -- here we stick with the defaults */ -+ pci_init(pacc); /* Initialize the PCI library */ -+ pci_scan_bus(pacc); /* We want to get the list of devices */ -+ for(dev=pacc->devices; dev; dev=dev->next) { -+ pci_fill_info(dev, PCI_FILL_IDENT | PCI_FILL_BASES); -+ class = (pci_read_word(dev, PCI_CLASS_DEVICE) << 8) -+ | pci_read_byte(dev, PCI_CLASS_PROG); -+ subsys_dev = pci_read_word(dev, PCI_SUBSYSTEM_ID); -+ subsys_vendor = pci_read_word(dev,PCI_SUBSYSTEM_VENDOR_ID); -+ for(map = pcimap_list; map != NULL; map = map->next) { -+ if (((map->class ^ class) & map->class_mask) == 0 && -+ ((desired_class ^ class) & desired_classmask)==0 && -+ (map->dev == DEVICE_ANY || -+ map->dev == dev->device_id) && -+ (map->vendor == VENDOR_ANY || -+ map->vendor == dev->vendor_id) && -+ (map->subsys_dev == DEVICE_ANY || -+ map->subsys_dev == subsys_dev) && -+ (map->subsys_vendor == VENDOR_ANY || -+ map->subsys_vendor == subsys_vendor) && -+ prevmodule != map->module) { -+ printf("%s\n", map->module); -+ prevmodule = map->module; -+ } -+ } -+ -+ } -+ pci_cleanup(pacc); -+} -+ -+int -+main (int argc, char **argv) -+{ -+ int opt_index = 0; -+ int opt; -+ -+ while ((opt = getopt_long(argc, argv, OPT_STRING, long_options, -+ &opt_index)) != -1) { -+ switch(opt) { -+ case 'c': -+ desired_class = strtol(optarg, NULL, 0); -+ break; -+ case 'm': -+ desired_classmask = strtol(optarg, NULL, 0); -+ break; -+ case 'h': -+ printf ("Usage: pcimodules [--help]\n" -+ " Lists kernel modules corresponding to PCI devices currently plugged" -+ " into the computer.\n"); -+ } -+ } -+ -+ read_pcimap(); -+ match_pci_modules(); -+ return 0; -+} -diff -Naur pciutils-3.0.3.orig/pcimodules.man pciutils-3.0.3/pcimodules.man ---- pciutils-3.0.3.orig/pcimodules.man 1970-01-01 07:00:00.000000000 +0700 -+++ pciutils-3.0.3/pcimodules.man 2008-12-01 13:38:39.000000000 +0700 -@@ -0,0 +1,92 @@ -+.TH pcimodules 8 "@TODAY@" "@VERSION@" "Linux PCI Utilities" -+.IX pcimodules -+.SH NAME -+pcimodules \- List kernel driver modules available for all currently plugged -+in PCI devices -+.SH SYNOPSIS -+.B pcimodules -+.RB [ --class class_id ] -+.RB [ --classmask mask ] -+.RB [ --help ] -+.SH DESCRIPTION -+.B pcimodules -+lists all driver modules for all currently plugged in PCI devices. -+.B pcimodules -+should be run at boot time, and whenever a PCI device is "hot plugged" -+into the system. This can be done by the following Bourne shell syntax: -+.IP -+ for module in $(pcimodules) ; do -+.IP -+ modprobe -s -k "$module" -+.IP -+ done -+.PP -+When a PCI device is removed from the system, the Linux kernel will -+decrement a usage count on PCI driver module. If this count drops -+to zero (i.e., there are no PCI drivers), then the -+.B modprobe -r -+process that is normally configured to run from cron every few minutes -+will eventually remove the unneeded module. -+.PP -+The --class and --classmask arguments can be used to limit the search -+to certain classes of PCI devices. This is useful, for example, to -+generate a list of ethernet card drivers to be loaded when the kernel -+has indicated that it is trying to resolve an unknown network interface. -+.PP -+Modules are listed in the order in which the PCI devices are physically -+arranged so that the computer owner can arrange things like having scsi -+device 0 be on a controller that is not alphabetically the first scsi -+controller. -+.SH OPTIONS -+.TP -+.B --class class --classmask mask -+.PP -+--class and --classmask limit the search to PCI -+cards in particular classes. These arguments are always used together. -+The arguments to --class and --classmask -+can be given as hexadecimal numbers by prefixing a leading "0x". -+Note that the classes used by pcimodules are in "Linux" format, -+meaning the class value that you see with lspci would be shifted -+left eight bits, with the new low eight bits programming interface ID. -+An examples of how to use class and classmask is provided below. -+.B --help, -h -+Print a help message and exit. -+.SH EXAMPLES -+.TP -+pcimodules -+lists all modules corresponding to currently plugged in PCI devices. -+.TP -+pcimodules --class 0x200000 --classmask 0xffff00 -+lists all modules corresponding to currently plugged in ethernet PCI devices. -+.SH FILES -+.TP -+.B /lib/modules//modules.pcimap -+This file is automatically generated by -+.B depmod, -+and used by -+.B pcimodules -+to determine which modules correspond to which PCI ID's. -+.TP -+.B /proc/bus/pci -+An interface to PCI bus configuration space provided by the post-2.1.82 Linux -+kernels. Contains per-bus subdirectories with per-card config space files and a -+.I devices -+file containing a list of all PCI devices. -+ -+.SH SEE ALSO -+.BR lspci (8) -+ -+.SH MAINTAINER -+The Linux PCI Utilities are maintained by Martin Mares . -+ -+.SH AUTHOR -+.B pcimodules -+was written by Adam J. Richter , based on public -+domain example code by Martin Mares . -+ -+.SH COPYRIGHT -+.B pcimodules -+is copyright 2000, Yggdrasil Computing, Incorporated, and may -+be copied under the terms and conditions of version 2 of the GNU -+General Public License as published by the Free Software Foundation -+(Cambrige, Massachusetts, United States of America). diff --git a/pciutils.spec b/pciutils.spec index 317d64c..6514747 100644 --- a/pciutils.spec +++ b/pciutils.spec @@ -1,7 +1,7 @@ %define libmajver %(echo %version | cut -d. -f1) Name: pciutils -Version: 3.10.0 +Version: 3.11.1 Release: 1mamba Summary: A library for portable access to PCI bus configuration space Group: System/Kernel and Hardware @@ -10,16 +10,13 @@ Distribution: openmamba Packager: Silvan Calarco URL: https://mj.ucw.cz/sw/pciutils/ Source: https://www.kernel.org/pub/software/utils/pciutils/pciutils-%{version}.tar.xz -Patch1: %{name}-3.1.0-pcimodules.patch -Patch2: %{name}-3.1.2-pcimodules.patch -Patch3: %{name}-2.2.1-idpath.patch License: GPL ## AUTOBUILDREQ-BEGIN BuildRequires: glibc-devel BuildRequires: libkmod-devel BuildRequires: libudev-devel ## AUTOBUILDREQ-END -Requires: libpci = %{version}-%{release} +Requires: libpci = %{?epoch:%epoch:}%{version}-%{release} Requires: hwdata %description @@ -41,21 +38,19 @@ A library for inspecting and setting devices connected to the PCI bus. %package -n libpci-devel Summary: Linux PCI development library Group: Development/Libraries -Requires: libpci = %{version}-%{release} +Requires: libpci = %{?epoch:%epoch:}%{version}-%{release} Obsoletes: %{name}-devel < 3.8.0 %description -n libpci-devel A library for inspecting and setting devices connected to the PCI bus. This package contains the static library and include files for development. +%debug_package + %prep %setup -q -#%patch1 -p1 -#%patch2 -p1 -#%patch3 -p1 %build -# disable zlib as long as HAL wants pci.id uncompressed %make \ %if "%{_host}" != "%{_build}" CROSS_COMPILE=%{_host}- \ @@ -65,7 +60,7 @@ This package contains the static library and include files for development. %endif PREFIX=%{_prefix} \ LIBDIR=%{_libdir} \ - SBINDIR=%{_sbindir} \ + SBINDIR=%{_bindir} \ SHAREDIR=%{_datadir} \ MANDIR=%{_mandir} \ ZLIB=no \ @@ -85,7 +80,7 @@ make clean %endif PREFIX=%{_prefix} \ LIBDIR=%{_libdir} \ - SBINDIR=%{_sbindir} \ + SBINDIR=%{_bindir} \ SHAREDIR=%{_datadir} \ MANDIR=%{_mandir} \ SHARED=yes \ @@ -100,19 +95,15 @@ make clean install-lib \ SHARED=no \ PREFIX=%{_prefix} \ + SBINDIR=%{_bindir} \ LIBDIR=%{_libdir} \ IDSDIR=%{_datadir}/hwdata -#install -m0755 pcimodules %{buildroot}%{_sbindir} -#install -m0644 pcimodules.man %{buildroot}%{_mandir}/man8/pcimodules.8 install lib/libpci.a.toinstall %{buildroot}%{_libdir}/libpci.a ln -s libpci.so.%{version} %{buildroot}%{_libdir}/libpci.so ln -s libpci.so.%{version} %{buildroot}%{_libdir}/libpci.so.%{libmajver} chmod +x %{buildroot}%{_libdir}/libpci.so.* -#install -d %{buildroot}%{_bindir} -#ln -s ../sbin/lspci %{buildroot}%{_bindir}/lspci - rm -rf %{buildroot}%{_datadir}/hwdata %clean @@ -121,10 +112,9 @@ rm -rf %{buildroot}%{_datadir}/hwdata %files %defattr(-,root,root) %{_bindir}/lspci -#%{_sbindir}/lspci -#%{_sbindir}/pcimodules -%{_sbindir}/setpci -%{_sbindir}/update-pciids +%{_bindir}/pcilmr +%{_bindir}/setpci +%{_bindir}/update-pciids %{_mandir}/man5/pci.ids.5* %{_mandir}/man7/pcilib.* %{_mandir}/man8/* @@ -144,6 +134,9 @@ rm -rf %{buildroot}%{_datadir}/hwdata %doc README ChangeLog pciutils.lsm %changelog +* Tue Feb 27 2024 Automatic Build System 3.11.1-1mamba +- automatic version update by autodist + * Tue May 02 2023 Automatic Build System 3.10.0-1mamba - automatic version update by autodist