Sekcja %prep
W sekcji %prep źródła programu są przygotowywane do kompilacji. Cała
sekcja, podobnie jak %build, %install, pre(un)
i %post(un) jest po prostu skryptem shell'a. Żeby uprościć
najczęściej wykonywane operacje w tej sekcji istnieją dwa makra:
- %setup
- Makro %setup służy do rozpakowania źródeł i przejścia do ich
głównego katalogu. Może mieć następujące parametry:
- -a N
- Parametr -a jest potrzebny kiedy musimy rozpakować
większą ilość plików ze źródłami. Jako wartość tego parametru
podajemy numer źródła.
- -c
- ???
- -n nazwa
- Po rozpakowaniu źródeł RPM usiłuje przejść do katalogu
%{name}-%{version} zakładając, że tak się nazywa główny katalog
rozpakowanych źródeł. Niektóre programy jednak po rozpakowaniu mają
inną nazwę i należy o tym poinformować RPMa podając jako
wartość parametru -n faktyczną nazwę tego katalogu. Na
przykład główny katalog ze źródłami programu fetchpop nazywa
się %{name}%{version} (bez myślnika), dlatego w pliku fetchpop.spec
możemy znaleźć:
%setup -n %{name}%{version}
- -q
- Parametr -q (od ang. quiet) powoduje, że w
trakcie rozpakowywania źródeł przy budowaniu pakietu na ekranie nie
pojawiają się komunikaty o rozpakowywanych plikach. Pakiety dla
PLD powinny stosować parametr -q.
- %patchN -pX
- Makro %patch ułatwia nakładanie łatek na źródła. Ma następujące
parametry:
- N
- Przy wywołaniu makra należy zamiast N wstaiwć
numer łatki (lub nic, jeżeli pierwszej łatce NIE nadaliśmy
numeru 0). Jeżeli w preambule zadeklarowaliśmy istnienie dwóch
łatek:
Patch0: %{name}-make.patch
Patch1: %{name}-secure.patch
to, aby je zaaplikować należy w sekcji %prep wpisać
następujące liniji:
%patch0 -p1
%patch1 -p1
- -pX
- Parametr -p spełnia taką samą rolę jak w standardowym
poleceniu UNIXowym patch - 'man patch' :->.
Dalej |
Cofnij |
Do góry |
Spis treści