basebuilder_pel7ppc64bebuilder0
7 years ago
3 changed files with 343 additions and 0 deletions
@ -0,0 +1,73 @@ |
|||||||
|
diff --git a/src/linux_sysfs.c b/src/linux_sysfs.c |
||||||
|
index 8c3cf67..2ea78c1 100644 |
||||||
|
--- a/src/linux_sysfs.c |
||||||
|
+++ b/src/linux_sysfs.c |
||||||
|
@@ -227,6 +227,7 @@ pci_device_linux_sysfs_probe( struct pci_device * dev ) |
||||||
|
pciaddr_t bytes; |
||||||
|
unsigned i; |
||||||
|
int err; |
||||||
|
+ struct stat st; |
||||||
|
|
||||||
|
|
||||||
|
err = pci_device_linux_sysfs_read( dev, config, 0, 256, & bytes ); |
||||||
|
@@ -293,11 +294,28 @@ pci_device_linux_sysfs_probe( struct pci_device * dev ) |
||||||
|
flags = strtoull( next, & next, 16 ); |
||||||
|
if ( low_addr != 0 ) { |
||||||
|
priv->rom_base = low_addr; |
||||||
|
- dev->rom_size = (high_addr - low_addr) + 1; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
+ snprintf( name, 255, "%s/%04x:%02x:%02x.%1u/rom", |
||||||
|
+ SYS_BUS_PCI, |
||||||
|
+ dev->domain, |
||||||
|
+ dev->bus, |
||||||
|
+ dev->dev, |
||||||
|
+ dev->func ); |
||||||
|
+ |
||||||
|
+ fd = open( name, O_RDWR ); |
||||||
|
+ if ( fd == -1 ) { |
||||||
|
+ dev->rom_size = 0x10000; |
||||||
|
+ } else if ( fstat( fd, & st ) == -1 ) { |
||||||
|
+ close( fd ); |
||||||
|
+ dev->rom_size = 0x10000; |
||||||
|
+ } else { |
||||||
|
+ close( fd ); |
||||||
|
+ dev->rom_size = st.st_size == 0 ? 0x10000 : st.st_size; |
||||||
|
+ } |
||||||
|
+ |
||||||
|
return err; |
||||||
|
} |
||||||
|
|
||||||
|
@@ -309,7 +327,6 @@ pci_device_linux_sysfs_read_rom( struct pci_device * dev, void * buffer ) |
||||||
|
int fd; |
||||||
|
struct stat st; |
||||||
|
int err = 0; |
||||||
|
- size_t rom_size; |
||||||
|
size_t total_bytes; |
||||||
|
|
||||||
|
|
||||||
|
@@ -334,10 +351,6 @@ pci_device_linux_sysfs_read_rom( struct pci_device * dev, void * buffer ) |
||||||
|
return errno; |
||||||
|
} |
||||||
|
|
||||||
|
- rom_size = st.st_size; |
||||||
|
- if ( rom_size == 0 ) |
||||||
|
- rom_size = 0x10000; |
||||||
|
- |
||||||
|
/* This is a quirky thing on Linux. Even though the ROM and the file |
||||||
|
* for the ROM in sysfs are read-only, the string "1" must be written to |
||||||
|
* the file to enable the ROM. After the data has been read, "0" must be |
||||||
|
@@ -346,9 +359,9 @@ pci_device_linux_sysfs_read_rom( struct pci_device * dev, void * buffer ) |
||||||
|
write( fd, "1", 1 ); |
||||||
|
lseek( fd, 0, SEEK_SET ); |
||||||
|
|
||||||
|
- for ( total_bytes = 0 ; total_bytes < rom_size ; /* empty */ ) { |
||||||
|
+ for ( total_bytes = 0 ; total_bytes < dev->rom_size ; /* empty */ ) { |
||||||
|
const int bytes = read( fd, (char *) buffer + total_bytes, |
||||||
|
- rom_size - total_bytes ); |
||||||
|
+ dev->rom_size - total_bytes ); |
||||||
|
if ( bytes == -1 ) { |
||||||
|
err = errno; |
||||||
|
break; |
@ -0,0 +1,41 @@ |
|||||||
|
#!/bin/sh |
||||||
|
|
||||||
|
DATE=$( date +%Y%m%d ) |
||||||
|
DIRNAME=libpciaccess |
||||||
|
REV=${1:-master} |
||||||
|
|
||||||
|
if test -e $DIRNAME.git; then |
||||||
|
GIT_DIR=$DIRNAME.git git fetch git://git.freedesktop.org/git/xorg/lib/libpciaccess |
||||||
|
else |
||||||
|
git clone --bare git://git.freedesktop.org/git/xorg/lib/libpciaccess $DIRNAME.git |
||||||
|
GIT_DIR=$DIRNAME.git git archive --prefix=$DIRNAME-$DATE/ --format=tar $REV | \ |
||||||
|
bzip2 -c > $DIRNAME-$DATE.tar.bz2 |
||||||
|
fi |
||||||
|
|
||||||
|
HASH=$(GIT_DIR=$DIRNAME.git git show-ref -s $REV) |
||||||
|
|
||||||
|
echo $HASH |
||||||
|
|
||||||
|
exit |
||||||
|
|
||||||
|
# the rest of this is supposed to work? i guess. |
||||||
|
|
||||||
|
version=$(sed -n -e "s/^Version: *\(.*\)/\1/p" < libpciaccess.spec) |
||||||
|
release=$(sed -n -e "s/^Release: *\([^.]*\).*/\1/p" < libpciaccess.spec) |
||||||
|
release=$(($release + 1)) |
||||||
|
|
||||||
|
user=$(id -un) |
||||||
|
IFS=: info=($(grep ^$user: /etc/passwd)) |
||||||
|
|
||||||
|
msg="* $(date +'%a %b %d %Y') ${info[4]} <$user@redhat.com> $version-$release.$DATE\\ |
||||||
|
- New snapshot, git revision $HASH.\\ |
||||||
|
" |
||||||
|
|
||||||
|
sed -i -e "s/^%define gitdate.*/%define gitdate $DATE/" \ |
||||||
|
-e "s/^%define gitrev.*/%define gitrev $HASH/" \ |
||||||
|
-e "s/^Source0:.*/Source0: $DIRNAME-$DATE.tar.bz2/" \ |
||||||
|
-e "s/^Release:.*/Release: $release.%{gitdate}%{?dist}/" \ |
||||||
|
-e "/%changelog/ a $msg" \ |
||||||
|
libpciaccess.spec |
||||||
|
|
||||||
|
make new-sources FILES=$DIRNAME-$DATE.tar.bz2 |
@ -0,0 +1,229 @@ |
|||||||
|
#define gitdate 20111109 |
||||||
|
#define gitrev a0a53a67c91c698007dcac3e7aba27c999c4f6ed |
||||||
|
|
||||||
|
Name: libpciaccess |
||||||
|
Version: 0.14 |
||||||
|
Release: 1%{?dist} |
||||||
|
Summary: PCI access library |
||||||
|
|
||||||
|
Group: System Environment/Libraries |
||||||
|
License: MIT |
||||||
|
URL: http://gitweb.freedesktop.org/?p=xorg/lib/libpciaccess.git |
||||||
|
|
||||||
|
# git snapshot. To recreate, run |
||||||
|
# % ./make-libpciaccess-snapshot.sh %{gitrev} |
||||||
|
#Source0: libpciaccess-%{gitdate}.tar.bz2 |
||||||
|
Source0: https://xorg.freedesktop.org/archive/individual/lib/%{name}-%{version}.tar.bz2 |
||||||
|
Source1: make-libpciaccess-snapshot.sh |
||||||
|
|
||||||
|
Patch2: libpciaccess-rom-size.patch |
||||||
|
|
||||||
|
BuildRequires: autoconf automake libtool pkgconfig xorg-x11-util-macros |
||||||
|
Requires: hwdata |
||||||
|
|
||||||
|
%description |
||||||
|
libpciaccess is a library for portable PCI access routines across multiple |
||||||
|
operating systems. |
||||||
|
|
||||||
|
%package devel |
||||||
|
Summary: PCI access library development package |
||||||
|
Group: Development/Libraries |
||||||
|
Requires: %{name} = %{version}-%{release} |
||||||
|
Requires: pkgconfig |
||||||
|
|
||||||
|
%description devel |
||||||
|
Development package for libpciaccess. |
||||||
|
|
||||||
|
%prep |
||||||
|
%setup -q -n %{name}-%{?gitdate:%{gitdate}}%{!?gitdate:%{version}} |
||||||
|
%patch2 -p1 -b .rom-size |
||||||
|
|
||||||
|
%build |
||||||
|
# autoreconf -v --install |
||||||
|
%configure --disable-static |
||||||
|
make %{?_smp_mflags} |
||||||
|
|
||||||
|
%install |
||||||
|
rm -rf $RPM_BUILD_ROOT |
||||||
|
make install DESTDIR=$RPM_BUILD_ROOT |
||||||
|
rm -f $RPM_BUILD_ROOT/%{_libdir}/*.la |
||||||
|
|
||||||
|
%clean |
||||||
|
rm -rf $RPM_BUILD_ROOT |
||||||
|
|
||||||
|
%post -p /sbin/ldconfig |
||||||
|
%postun -p /sbin/ldconfig |
||||||
|
|
||||||
|
%files |
||||||
|
%defattr(-,root,root,-) |
||||||
|
%doc COPYING AUTHORS |
||||||
|
%{_libdir}/libpciaccess.so.0 |
||||||
|
%{_libdir}/libpciaccess.so.0.11.* |
||||||
|
|
||||||
|
%files devel |
||||||
|
%defattr(-,root,root,-) |
||||||
|
%{_includedir}/pciaccess.h |
||||||
|
%{_libdir}/libpciaccess.so |
||||||
|
%{_libdir}/pkgconfig/pciaccess.pc |
||||||
|
|
||||||
|
%changelog |
||||||
|
* Mon Oct 23 2017 Adam Jackson <ajax@redhat.com> - 0.14-1 |
||||||
|
- libpciaccess 0.14 |
||||||
|
|
||||||
|
* Mon Nov 14 2016 Dave Airlie <airlied@redhat.com> - 0.13.4-3 |
||||||
|
- add support to ignore 32-bit domains (#1380184) |
||||||
|
|
||||||
|
* Fri May 22 2015 Dave Airlie <airlied@redhat.com> 0.13.4-2 |
||||||
|
- rebuild due to ppc64le relro issue |
||||||
|
|
||||||
|
* Thu May 21 2015 Dave Airlie <airlied@redhat.com> 0.13.4-1 |
||||||
|
- rebase libpciaccess 0.13.4 |
||||||
|
|
||||||
|
* Wed Feb 12 2014 Adam Jackson <ajax@redhat.com> 0.13.1-4.1 |
||||||
|
- Mass rebuild |
||||||
|
|
||||||
|
* Fri Dec 27 2013 Daniel Mach <dmach@redhat.com> - 0.13.1-4 |
||||||
|
- Mass rebuild 2013-12-27 |
||||||
|
|
||||||
|
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.13.1-3 |
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild |
||||||
|
|
||||||
|
* Thu Jul 19 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.13.1-2 |
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild |
||||||
|
|
||||||
|
* Tue Apr 10 2012 Adam Jackson <ajax@redhat.com> 0.13.1-1 |
||||||
|
- libpciaccess 0.13.1 |
||||||
|
|
||||||
|
* Wed Mar 28 2012 Adam Jackson <ajax@redhat.com> 0.13-2 |
||||||
|
- libpciaccess-macros.patch: Fix out* macros again |
||||||
|
|
||||||
|
* Wed Mar 28 2012 Adam Jackson <ajax@redhat.com> 0.13-1 |
||||||
|
- libpciaccess 0.13 |
||||||
|
|
||||||
|
* Wed Feb 29 2012 Dan Horák <dan[at]danny.cz> - 0.12.902-6 |
||||||
|
- fix the out[bwl] compatibility macros |
||||||
|
|
||||||
|
* Thu Feb 16 2012 Peter Robinson <pbrobinson@fedoraproject.org> - 0.12.902-5 |
||||||
|
- Add ARM arch to libpciaccess-lol-dev-port patch |
||||||
|
|
||||||
|
* Wed Feb 08 2012 Adam Jackson <ajax@redhat.com> 0.12.902-4 |
||||||
|
- libpciaccess-lol-dev-port.patch: Don't use /dev/port since the kernel insists |
||||||
|
that it remain unusably broken. |
||||||
|
|
||||||
|
* Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.12.902-3 |
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild |
||||||
|
|
||||||
|
* Mon Nov 28 2011 Daniel Drake <dsd@laptop.org> 0.12.902-2 |
||||||
|
- Add upstream patch to fix ios deletion; fixes X crash on OLPC XO-1.5 |
||||||
|
|
||||||
|
* Wed Nov 09 2011 Adam Jackson <ajax@redhat.com> 0.12.902-1 |
||||||
|
- libpciaccess 0.12.902 |
||||||
|
|
||||||
|
* Wed Nov 09 2011 Peter Hutterer <peter.hutterer@redhat.com> 0.12.901-1 |
||||||
|
- Today's git snapshot |
||||||
|
|
||||||
|
* Wed Feb 09 2011 Adam Jackson <ajax@redhat.com> 0.12.1-1 |
||||||
|
- libpciaccess 0.12.1 |
||||||
|
|
||||||
|
* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.12.0-2 |
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild |
||||||
|
|
||||||
|
* Wed Jul 21 2010 Dave Airlie <airlied@redhat.com> 0.12.0-1 |
||||||
|
- libpciaccess 0.12 |
||||||
|
|
||||||
|
* Tue Mar 16 2010 Adam Jackson <ajax@redhat.com> 0.11.0-1 |
||||||
|
- libpciaccess 0.11 |
||||||
|
|
||||||
|
* Wed Dec 09 2009 Adam Jackson <ajax@redhat.com> 0.10.9-2.20091209 |
||||||
|
- New git snapshot |
||||||
|
- Drop the fd cache patch |
||||||
|
|
||||||
|
* Fri Sep 25 2009 Dave Airlie <airlied@redhat.com> 0.10.9-1 |
||||||
|
- rebase to latest upstream release - drop patches |
||||||
|
|
||||||
|
* Thu Aug 06 2009 Dave Airlie <airlied@redhat.com> 0.10.6-7 |
||||||
|
- disable rom reading fallbacks |
||||||
|
|
||||||
|
* Wed Aug 05 2009 Adam Jackson <ajax@redhat.com> 0.10.6-6 |
||||||
|
- D'oh. Fix obvious sense inversion in the previous patch. |
||||||
|
|
||||||
|
* Wed Aug 05 2009 Adam Jackson <ajax@redhat.com> 0.10.6-5 |
||||||
|
- libpciaccess-0.10.6-rom-sanity.patch: If we hit the /dev/mem path for |
||||||
|
reading a device's ROM, verify that it looks like it at least might belong |
||||||
|
to the device in question by checking vendor and device ID match. Fixes |
||||||
|
vbetool post hanging forever (and thus blocking boot) on some dual-gpu |
||||||
|
laptops. |
||||||
|
|
||||||
|
* Mon Aug 03 2009 Dave Airlie <airlied@redhat.com> 0.10.6-4 |
||||||
|
- Add support for default vga arb device selection |
||||||
|
- Update libpciaccess VGA arb code for newer kernel API |
||||||
|
|
||||||
|
* Fri Jul 31 2009 Dave Airlie <airlied@redhat.com> 0.10.6-3 |
||||||
|
- enable autoreconf to rebuild configure properly |
||||||
|
|
||||||
|
* Fri Jul 31 2009 Dave Airlie <airlied@redhat.com> 0.10.6-2 |
||||||
|
- libpciaccess-vga-arbiter.patch: add vga arbiter support to libpciaccess |
||||||
|
|
||||||
|
* Mon Jul 27 2009 Dave Airlie <airlied@redhat.com> 0.10.6-1 |
||||||
|
- rebase to latest release (will do release with VGA bits later) |
||||||
|
- libpciaccess-boot-vga.patch: add boot vga patch from upstream |
||||||
|
|
||||||
|
* Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.10.5-2 |
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild |
||||||
|
|
||||||
|
* Tue Apr 21 2009 Adam Jackson <ajax@redhat.com> 0.10.5-1 |
||||||
|
- libpciaccess 0.10.5 |
||||||
|
|
||||||
|
* Wed Feb 25 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.10.3-6 |
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild |
||||||
|
|
||||||
|
* Sun Feb 15 2009 Kristian Høgsberg <krh@redhat.com> - 0.10.3-5 |
||||||
|
- Unbreak the rom-size patch. |
||||||
|
|
||||||
|
* Sun Feb 15 2009 Kristian Høgsberg <krh@redhat.com> - 0.10.3-4 |
||||||
|
- Don't read more than the advertised rom_size. |
||||||
|
|
||||||
|
* Thu Aug 28 2008 Adam Jackson <ajax@redhat.com> 0.10.3-3 |
||||||
|
- Rediff for --fuzz=0 |
||||||
|
|
||||||
|
* Wed Jul 02 2008 Adam Jackson <ajax@redhat.com> 0.10.3-2 |
||||||
|
- Fix file access mode in config fd cache. (#452910) |
||||||
|
|
||||||
|
* Tue Jul 01 2008 Adam Jackson <ajax@redhat.com> 0.10.3-1 |
||||||
|
- libpciaccess 0.10.3 |
||||||
|
|
||||||
|
* Tue May 20 2008 Adam Jackson <ajax@redhat.com> 0.10-3 |
||||||
|
- libpciaccess-no-pci-fix.patch: Fix init when /sys/bus/pci is empty or |
||||||
|
nonexistent. |
||||||
|
|
||||||
|
* Mon Apr 21 2008 Dave Airlie <airlied@redhat.com> 0.10-2 |
||||||
|
- fix major problem with libpciaccess and write combining. |
||||||
|
|
||||||
|
* Thu Mar 06 2008 Adam Jackson <ajax@redhat.com> 0.10-1 |
||||||
|
- libpciaccess 0.10 |
||||||
|
|
||||||
|
* Mon Feb 18 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 0.9.1-4.20071031 |
||||||
|
- Autorebuild for GCC 4.3 |
||||||
|
|
||||||
|
* Wed Jan 23 2008 Adam Jackson <ajax@redhat.com> 0.9.1-3.20071031 |
||||||
|
- libpciaccess-fd-cache.patch: Cache sysfs PCI config space file |
||||||
|
descriptors for great boot speed justice. |
||||||
|
|
||||||
|
* Wed Oct 31 2007 Kristian Høgsberg <krh@redhat.com> 0.9.1-2.20071031 |
||||||
|
- New snapshot, git revision e392082abb5696c8837224da86cc0af4f21d7010. |
||||||
|
- Pick up new .so file. |
||||||
|
|
||||||
|
* Mon Sep 24 2007 Adam Jackson <ajax@redhat.com> 0.9.1-1 |
||||||
|
- libpciaccess 0.9.1 |
||||||
|
|
||||||
|
* Mon Aug 27 2007 Adam Jackson <ajax@redhat.com> 0.8-0.4.20070827git |
||||||
|
- New snapshot. |
||||||
|
|
||||||
|
* Fri Aug 24 2007 Adam Jackson <ajax@redhat.com> 0.8-0.3.20070712git |
||||||
|
- Rebuild for PPC toolchain bug |
||||||
|
|
||||||
|
* Thu Jul 12 2007 Adam Jackson <ajax@redhat.com> 0.8-0.2.20070712git |
||||||
|
- New snapshot. Adds VGA ROM support. |
||||||
|
|
||||||
|
* Thu May 24 2007 Adam Jackson <ajax@redhat.com> 0.8-0.1.20070524git |
||||||
|
- Initial revision. |
Loading…
Reference in new issue