flashrom.spec

Bartosz Świątek shadzik w gmail.com
Pon, 8 Cze 2009, 15:08:45 CEST


W dniu 8 czerwca 2009 14:52 użytkownik Daniel Dawid Majewski
<light-i w o2.pl> napisał:
> Pewnego dnia wpadła wieść od Daniel Dawid Majewski i powiedziała :
>> Oto nowy spec dla narzędzia do flashowania BIOSU i nie tylko. Spec i łatka dla linux w załączniku. Sugestie mile widziane.
> A teraz wersja minimalistyczna ;)
> --
> Pozdrawiam,
> Daniel Dawid Majewski
> jabber:light-i/jid.pl
>
> # $Revision:$, $Date:$
> Summary:        Tool Flashing your BIOS from the Unix/Linux command line
> Summary(pl.UTF-8):      Narzędzie do upgrade BIOS z lini poleceń Unix/Linux
> Name:           flashrom
> Version:        0.9.0
> Release:        1
> License:        GPL v2
> Group:          Applications/Communications
> Source0:        http://qa.coreboot.org/releases/%{name}-%{version}.tar.gz
> Patch0:         %{name}-%{version}-linux-make.patch
> URL:            http://www.coreboot.org/Flashrom
> BuildRequires:  coreutils
> BuildRequires:  glibc-headers
> BuildRequires:  pciutils-devel
> BuildRequires:  rpm-build >= 4.3-0.20030610.21
> BuildRequires:  zlib-devel
> ExclusiveArch:  %{ix86} %{x8664}
> BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
>
> %define         _sbindir                /sbin
>
> %description
> flashrom is a utility for identifying, reading, writing, verifying and
> erasing flash chips. It's often used to flash BIOS / EFI / coreboot /
> firmware images.
>    - Supports more than 160 flash chips, 75 chipsets, 100 mainboards, and
>      10 PCI devices which can be used as external programmers.
>    - Supports parallel, LPC, FWH and SPI flash interfaces and various
>      chip packages (DIP32, PLCC32, DIP8, SO8/SOIC8, TSOP32, TSOP40 and
>      more)
>    - No physical access needed, root access is sufficient.
>    - No bootable floppy disk, bootable CD-ROM or other media needed.
>    - No keyboard or monitor needed. Simply reflash remotely via SSH.
>    - No instant reboot needed. Reflash your chip in a running system,
>      verify it, be happy. The new firmware will be present next time you
>      boot.
>    - Crossflashing and hotflashing is possible as long as the flash chips
>      are electrically and logically compatible (same protocol). Great for
>      recovery.
>    - Scriptability. Reflash a whole pool of identical machines at the
>      same time from the command line. It is recommended to check flashrom
>      output and error codes.
>    - Speed. flashrom is often much faster than most vendor flash tools.
>    - Portability. Supports Linux, FreeBSD, DragonFly BSD, Solaris, Mac OS
>      X, and other Unix-like OSes.
>
> %description -l pl.UTF-8
> flashrom to narzędzie do identyfikacji, odczytu, zapisu, weryfikacji i
> kasowania układów flash. Jest często używany do programowania BIOS /
> EFI / coreboot / firmware z pliku.
>     - Obsługuje ponad 160 chipów flash, 75 chipsetów, 100 płyt głównych i
>       10 urządzeń PCI, które mogą być wykorzystane jako zewnętrzne
>       programatory.
>     - Wspiera układy flash równoległe, LPC, SPI i FWH o różnych
>       obudowach/wyprowadzeniach (DIP32, PLCC32, DIP8, SO8/SOIC8, TSOP32,
>       TSOP40 i inne)
>     - Nie potrzeba fizycznego dostępu, wystarczy dostęp do konta root.
>     - Nie potrzebuje bootowalnej dyskietki, rozruchowego dysku CD-ROM lub
>       innych nośników.
>     - Niekonieczne ani klawiatura lub monitor. Wystarczy przeprogramować
>       zdalnie poprzez SSH.
>     - Nie ma potrzeby ponownego uruchamiania komputera. Zaprogramuj swój
>       chip w uruchomionym systemie, zweryfikuj, bądź szczęśliwy. Nowy
>       firmware będzie dostępny przy następnym bootowaniu.
>     - Crossflashing i hotflashing jest możliwe tak długo, jak układy flash
>       są elektrycznie i logicznie kompatybilne (ten sam protokół). Świetna
>       metoda do przywracania sprzętu z źle zaprogramowanym firmware/BIOS.
>     - Prosta możliwość tworzenia skryptów do wielokrotnego programowania.
>       Programowanie identycznych maszyn w tym samym czasie z linii poleceń.
>       Zaleca się sprawdzanie komunikatów programu flashrom i kodów błędów.
>     - Szybkość. flashrom jest często znacznie szybszy niż większość
>       sprzedawanych narzędzi dp flashowania.
>     - Wszechstronność. Wspiera Linux, FreeBSD, Dragonfly BSD, Solaris, Mac
>       OS X i inne systemy operacyjne oparte na Unix.
>
> %prep
> %setup -q
> %patch0 -p1
> sed -i -e 's,__LIB_DIR_,%{_libdir},g' \
>        ./Makefile
>
> %build
> %{__make}
>
> %install
> rm -rf $RPM_BUILD_ROOT
> install -d $RPM_BUILD_ROOT%{_sbindir}
> install %{name} $RPM_BUILD_ROOT%{_sbindir}
> install -d $RPM_BUILD_ROOT%{_mandir}/man8
> install %{name}.8 $RPM_BUILD_ROOT%{_mandir}/man8
>
> %clean
> rm -rf $RPM_BUILD_ROOT
>
> %files
> %defattr(644,root,root,755)
> %doc README COPYING
> %attr(755,root,root) %{_sbindir}/flashrom
> %{_mandir}/man8/flashrom.8*
>
> %define date    %(echo `LC_ALL="C" date +"%a %b %d %Y"`)
> %changelog
> * %{date} PLD Team <feedback w pld-linux.org>
> All persons listed below can be reached at <cvs_login>@pld-linux.org
>
> $Log:$
>
> --- flashrom-0.9.0/Makefile.oryg        2009-05-04 01:37:07.000000000 +0200
> +++ flashrom-0.9.0/Makefile     2009-06-08 14:25:38.000000000 +0200
> @@ -26,6 +26,10 @@
>  CFLAGS += -I/usr/local/include
>  LDFLAGS += -L/usr/local/lib
>  endif
> +ifeq ($(OS_ARCH), Linux)
> +CFLAGS += -I/usr/include
> +LDFLAGS += -L__LIB_DIR_
> +endif
>
>  LDFLAGS += -lpci -lz

Hej,

patch wydaje sie byc zmienny. To samo uzyskasz uyzwajac w sekcji %build
%{__make} CFLAGS="%{rpmcflags} +jakies_dodatkowe"
LDFLAGS='${rpmldflags} +jakies_dodatkowe'

poza tym w drugiej wersji nic mi sie juz nie rzucilo w oczy.



-- 
"I'm living proof if you do one thing right in your career, you can
coast for a long time. A LOOOOONG time." -Guy Kawasaki


Więcej informacji o liście dyskusyjnej pld-devel-pl