In meiner Organisation stellen wir unsere gesamte Software mithilfe von RPM auf unseren Produktionsmaschinen bereit. Unser (automatisierter) Erstellungsprozess umfasst das Auschecken der Quelle aus der Versionskontrolle, das Teern des Quellverzeichnisses und das Ausführen von rpmbuild mit diesem Quell-Tarball. rpmbuild verwendet diesen Tarball nur, um die Quellen zu entpacken, um daran zu arbeiten. Es scheint also, dass das gesamte Taring- und Untaring-Geschäft nur ein unnötiger zusätzlicher Schritt im Build-Prozess ist. Gibt es eine Möglichkeit, nur das Quellverzeichnis in der Spezifikationsdatei anzugeben und diese zusätzlichen Schritte zu vermeiden?
12
Diese Frage ist etwas alt, aber falls andere Leute sie bei der Suche finden, gibt es einen korrekteren Weg, der auch die Erstellung eines SRPM ermöglicht.
Anstatt das Setup- Makro zu verwenden, sollten Sie im Vorbereitungsabschnitt einfach selbst eingeben, was Sie tun möchten, nämlich das Quellverzeichnis von SOURCES nach BUILD zu kopieren, anstatt ein Archiv zu entpacken. Ich habe festgestellt, dass Sie dann auch eine CD in Ihr Quellverzeichnis in den Abschnitten Erstellen und Installieren einfügen müssen.
Beispiel-Snippet
quelle
%{_topdir}/SOURCES
sein%{_sourcedir}
? Und%{_topdir}/BUILD
könnte sein%{buildroot}
? (Abgesehen davon%setup
empfehlen die Fedora-Dokumente für ähnliche, aber unterschiedliche Situationen, in denen Sie versuchen, zusätzliche Dateien hinzuzufügen, um die extrahierten zu überschreiben , die Verwendung von%{SOURCE2}
etc - fedoraproject.org/wiki/Packaging:RPM_Source_Dir )