2.7. ソースコードを tarball へ追加
本セクションでは、「ソースコードの例」 で紹介されている 3 つの Hello World
プログラムをそれぞれ gzip で圧縮した tarball にまとめる方法を説明します。これは、後で配布用にパッケージ化するソフトウェアをリリースする一般的な方法です。
2.7.1. bello プロジェクトを tarball へ追加
bello プロジェクトは、bash で Hello World
を実装しています。この実装には bello
シェルスクリプトのみが含まれるため、生成される tar.gz
アーカイブには LICENSE
ファイルとは別のファイルのみが含まれます。
この手順では、配布用に bello を準備する方法を示しています。
前提条件
このプログラムのバージョンが 0.1
であることを考慮してください。
手順
必要なファイルをすべて 1 つのディレクトリーに追加します。
$ mkdir /tmp/bello-0.1 $ mv ~/bello /tmp/bello-0.1/ $ cp /tmp/LICENSE /tmp/bello-0.1/
配布用のアーカイブを作成し、これを
~/rpmbuild/SOURCES/
ディレクトリーに移動します。このディレクトリーは、rpmbuild
コマンドがパッケージを構築するファイルを保存するデフォルトディレクトリーです。$ cd /tmp/ $ tar -cvzf bello-0.1.tar.gz bello-0.1 bello-0.1/ bello-0.1/LICENSE bello-0.1/bello $ mv /tmp/bello-0.1.tar.gz ~/rpmbuild/SOURCES/
bash で書かれたサンプルソースコードの詳細は 「bash で書かれた Hello World」 を参照してください。
2.7.2. pello プロジェクトを tarball へ追加
pello プロジェクトは、Python に Hello World
を実装します。この実装には pello.py
プログラムのみが含まれるため、生成された tar.gz
アーカイブには LICENSE
ファイルとは異なる 1 つのファイルのみが含まれます。
この手順では、pello プロジェクトを配布するために準備する方法を示します。
前提条件
このプログラムのバージョンが 0.1.1
であることを考慮する。
手順
必要なファイルをすべて 1 つのディレクトリーに追加します。
$ mkdir /tmp/pello-0.1.2 $ mv ~/pello.py /tmp/pello-0.1.2/ $ cp /tmp/LICENSE /tmp/pello-0.1.2/
配布用のアーカイブを作成し、これを
~/rpmbuild/SOURCES/
ディレクトリーに移動します。このディレクトリーは、rpmbuild
コマンドがパッケージを構築するファイルを保存するデフォルトディレクトリーです。$ cd /tmp/ $ tar -cvzf pello-0.1.2.tar.gz pello-0.1.2 pello-0.1.2/ pello-0.1.2/LICENSE pello-0.1.2/pello.py $ mv /tmp/pello-0.1.2.tar.gz ~/rpmbuild/SOURCES/
Python で書かれたサンプルソースコードの詳細は 「Python で書かれた Hello World」 を参照してください。
2.7.3. cello プロジェクトを tarball へ追加
cello プロジェクトは、C の Hello World
を実装します。この実装には、cello.c
および Makefile
ファイルだけが含まれます。そのため、生成される tar.gz
アーカイブには、LICENSE
ファイル以外にファイルが 2 つ含まれます。
パッチ
ファイルは、プログラムとともにアーカイブで配布されません。RPM Packager は、RPM を構築する際にパッチを適用します。パッチは、.tar.gz
アーカイブとともに、~/rpmbuild/SOURCES/
ディレクトリーに配置されます。
この手順では、cello プロジェクトを配布するために準備する方法を示します。
前提条件
このプログラムのバージョンが 1.0
であることを考慮してください。
手順
必要なファイルをすべて 1 つのディレクトリーに追加します。
$ mkdir /tmp/cello-1.0 $ mv ~/cello.c /tmp/cello-1.0/ $ mv ~/Makefile /tmp/cello-1.0/ $ cp /tmp/LICENSE /tmp/cello-1.0/
配布用のアーカイブを作成し、これを
~/rpmbuild/SOURCES/
ディレクトリーに移動します。このディレクトリーは、rpmbuild
コマンドがパッケージを構築するファイルを保存するデフォルトディレクトリーです。$ cd /tmp/ $ tar -cvzf cello-1.0.tar.gz cello-1.0 cello-1.0/ cello-1.0/Makefile cello-1.0/cello.c cello-1.0/LICENSE $ mv /tmp/cello-1.0.tar.gz ~/rpmbuild/SOURCES/
パッチを追加します。
$ mv ~/cello-output-first-patch.patch ~/rpmbuild/SOURCES/
C で書かれたサンプルソースコードの詳細は 「C で書かれた Hello World」 を参照してください。