第8章 環境変数とマクロの活用

8.1. 環境変数

スクリプト部の各タグからはじまる部分は、先にも述べた通り独立したbash scriptとして働くので、 その範囲内で、

TEXMF="/usr/share/texmf"

と変数を定義して用いることができます。

定義した変数は ${ } で囲んで

${TEXMF}

のようにすると利用できます。 $TEXMF のように { } を省略することもできます。

/usr/share というディレクトリは標準で %{_datadir} というマクロが定義されているので

TEXMF="%{_datadir}/texmf"

とすることができます。 マクロについては、次節以降で説明します。

また、以下の変数は各タグ毎に環境変数として定義されます。

RPM_SOURCE_DIR

ディレクトリSOURCESを表す。表2.1「パッケージ作成に必要なディレクトリ名と使用目的」参照。 デフォルトは、

RPM_SOURCE_DIR="/usr/src/redhat/SOURCES"

RPM_BUILD_DIR

ディレクトリBUILDを表す。表2.1「パッケージ作成に必要なディレクトリ名と使用目的」参照。 デフォルトは、

RPM_BUILD_DIR="/usr/src/redhat/BUILD"

RPM_DOC_DIR

%docで指定されたドキュメントファイルをインストールするためのディレクトリを表す。 rpmrcファイルの、defaultdocdirで指定する。デフォルトは、

RPM_DOC_DIR="/usr/doc"

RPM_OPT_FLAGS

コンパイル時にコンパイラにわたすデフォルトのオプション指定を表す。 rpmrcファイルの、optflagsで指定する。 アーキテクチャ毎に指定ができる。 例えば、%buildにおいて以下のように使う

make CFLAGS=${RPM_OPT_FLAGS}

デフォルトはarchitectureがi386のときには、

RPM_OPT_FLAGS="-O2 -m486 -fno-strength-reduce"

RPM_ARCH_FLAGS

buildを行なっているシステムのアーキテクチャを表す変数。 アーキテクチャがi386なら、

RPM_ARCH_FLAGS="i386"

RPM_OS

buildを行なっているシステムのOSをあらわす変数。Linuxなら、

RPM_OS="Linux"

RPM_BUILD_ROOT

BuildRootで設定された仮想インストールのためのディレクトリを表す。 (「パッケージ情報の記述」のBuildRootの項参照)

RPM_PACKAGE_NAME

Nameで設定されたパッケージ名を表す。 (「パッケージ情報の記述」のNameの項参照)

RPM_PACKAGE_VERSION

Versionで設定されたバージョン名を表す。 (「パッケージ情報の記述」のVersionの項参照)

RPM_PACKAGE_RELEASE

Releaseで設定されたリリース番号を表す。 (「パッケージ情報の記述」のReleaseの項参照)