2
我有這種構建過程,可以爲一組linux分發創建rpms。如何使用源代替tarball構建rpm
這個創作花費了很多時間,爲此我正在優化它。我學習了rpmbuild,並意識到rpmbuild需要一個tar包並將其解壓以開始構建過程。
有一種方法可以避免使用tarball?因爲我已經與源開始的過程,然後我壓縮它的壓縮包,自的rpmbuild工作在源這似乎沒用,不壓縮檔
我有這種構建過程,可以爲一組linux分發創建rpms。如何使用源代替tarball構建rpm
這個創作花費了很多時間,爲此我正在優化它。我學習了rpmbuild,並意識到rpmbuild需要一個tar包並將其解壓以開始構建過程。
有一種方法可以避免使用tarball?因爲我已經與源開始的過程,然後我壓縮它的壓縮包,自的rpmbuild工作在源這似乎沒用,不壓縮檔
三種基本方式去了解這一點:
--short-circuit
切換到rpmbuild
直接跳到構建步驟。SourceXX:
每一個文件列表,並將其放置在rpmbuild/SOURCES/
目錄%setup
宏觀與一些情報所有這些文件選項1,您可以暫時解決其每次提取tarball,這是開發的理想選擇。選項2繞過了開始使用tarball的概念,但是當您擁有大量文件時會變得非常麻煩。選項3是在發生包的常規構建時發生的,它是一個很大的源文件,比如linux內核。 EL6內核.spec文件執行以下操作:
if [ ! -d kernel-%{kversion}/vanilla-%{kversion}/ ]; then
%setup -q -n kernel-%{kversion} -c
mv linux-2.6.32 vanilla-%{kversion};
else
cd kernel-%{kversion}/;
fi
cp -rl vanilla-%{kversion} linux-%{KVERREL}
cd linux-%{KVERREL}
基本上,提取內核源並將其命名爲其他內容。在下一次構建時,檢查一下。如果它在那裏,請不要提取源代碼,只需複製一份。