W mojej organizacji wdrażamy całe nasze oprogramowanie na naszych maszynach produkcyjnych przy użyciu RPM. Nasz proces kompilacji (który jest zautomatyzowany) polega na sprawdzeniu źródła z kontroli wersji, tarowaniu katalogu źródłowego w górę, a następnie uruchamianiu rpmbuild przy użyciu tego źródłowego archiwum. rpmbuild używa tego archiwum do rozpakowywania źródeł, aby nad nimi pracować. Wygląda więc na to, że cały proces tarowania i rozjaśniania jest po prostu niepotrzebnym dodatkowym krokiem w procesie kompilacji. Czy istnieje sposób, aby po prostu określić katalog źródłowy w pliku spec, unikając tych dodatkowych kroków?
14
To pytanie jest nieco stare, ale w przypadku, gdy inne osoby znajdą je w wyszukiwaniu, istnieje bardziej poprawny sposób, który pozwala to również na utworzenie SRPM.
W sekcji przygotowawczej zamiast makra instalacyjnego powinieneś po prostu wpisać sam, co chcesz, a mianowicie skopiować katalog źródłowy z ŹRÓDŁA do BUILD, zamiast rozpakowywać archiwum. Odkryłem, że musisz także dodać płytę CD do katalogu źródłowego w sekcjach kompilacji i instalacji.
Przykładowy fragment
źródło
%{_topdir}/SOURCES
być%{_sourcedir}
? I%{_topdir}/BUILD
może być%{buildroot}
? ( Nawiasem mówiąc , w podobnych, ale różnych sytuacjach, w których próbujesz dodać dodatkowe pliki, aby zastąpić pliki wyodrębnione%setup
, doktorzy Fedory zalecają użycie%{SOURCE2}
etc - fedoraproject.org/wiki/Packaging:RPM_Source_Dir )