Jak zachować zawartość BuildRoot?


11

Stare dobre rpm podczas budowania pakietu krokami po prostu zachowywało zawartość BuildRoot - było to dla mnie bardzo przydatne, ponieważ jeśli jakieś oprogramowanie było trudne do utworzenia, mogłem sprawdzić BuildRoot, czy wszystko jest w porządku.

Teraz, przy wszystkich „ulepszonych” obrotach na minutę - zawartość BuildRoot jest automatycznie usuwana, więc tak naprawdę nie mogę się w nią zanurzyć (krok instalacji nie jest tak długi).

Jeden hack, o którym wiem, to dodanie jakiegoś snu na końcu instalacji do specyfikacji rpm. Ale to jest brzydkie.

Więc - PYTANIE - jak ładnie zachować zawartość BuildRoot - innymi słowy, jak raz na zawsze wyłączyć automatyczne usuwanie?

Odpowiedzi:


6

Czy próbowałeś używać rpmbuild -biw testach, aby uzyskać wszystko zbudowane przez %installfazę? To powinno pokazać ci, co się dzieje bez automatycznego czyszczenia później.

Następnie, gdy będziesz zadowolony, buduj jak zwykle.


Dziękuję Ci. Jest to najmniej inwazyjne podejście i działa.
greenoldman


3

Spróbuj dodać manekina %cleando pliku specyfikacji. Coś jak:

%clean
echo NOOP

nie działa, ponieważ BUILDROOT jest usuwany na początku% install - jest częścią inicjalizacji% install.
smcg

Jeśli celem jest zachowanie wersji buildroot po kompilacji, do sprawdzenia, to działa.
ederag

0

To jest irytujące, zgadzam się. Jeśli nie masz nic przeciwko modyfikowaniu swojego rpm, sugeruję pójście do źródła rpm i dowiedzieć się, gdzie usunięto BuildRoot, wyłącz tę linię (prawdopodobnie jest to tylko jedna linia) i ponownie skompiluj. Inną rzeczą, którą zasugerowałbym, jest zgłoszenie błędu na liście życzeń, aby przywrócić stare zachowanie, które moim zdaniem można skonfigurować.

Pytanie: w jakiej wersji RPM to zachowanie się zmieniło?


Nie wiem o wersji, ale zmiana oficjalnych rpm byłaby trudna: lists.rpm.org/pipermail/rpm-list/2008-December/000040.html Wyjaśnienie wskazuje, że idelogia odgrywa ogromną rolę. Możliwe byłoby łatanie rpm, dziękuję za podpowiedź. Może mógłbym również przywrócić automatyczne tworzenie BuildRoot.
greenoldman

@macias: Przejrzałem źródła rpm na Debianie (4.9.0-2), ale nie znalazłem nic przydatnego. Jednak nawet jeśli programiści nie są skłonni go zmienić, spodziewam się, że chętnie powiedzą ci, jak to zrobić dla siebie.
Faheem Mitha

na szczęście przełącznik -bi działa w tym przypadku, więc jeśli mogę, pomijam łatanie - lista programów z regresjami i tak się wydłuża.
greenoldman
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.