[Momonga-devel.ja:01858] Re: Momonga Linux のリリースへ向けた spec ファイルの見直し
- From: Kenta MURATA <muraken2@xxxxxxxxx>
- Date: Mon, 07 Jul 2003 01:33:42 +0900
むらけんです.
今回新たに提案されたマクロ群については賛成ですが,多少意見があ
るので,下の patch の部分に書きます.
In message <20030706160616.435DF2853C@xxxxxxxxxxxxxxxxxxxx> at Mon, 7 Jul 2003 01:05:14 +0900,
KOMATSU Shinichiro <koma2@xxxxxxxxxxxxxxxxxxxx> wrote:
> > * [Momonga-devel.ja:00492] で小松さんが作成された %NoSource と,
> > %NoPatch マクロを使用した形式に変更します.specopt における
> > オプションの定義で扱われている
> >
> > %{?!with_hoge:%define with_hoge 1}
> >
> > のような記述は
> >
> > %{?!with_hoge:%global with_hoge 1}
> >
> > というように,%define を %global に変更することで,%NoSource
> > の使用によるマクロの無効化を回避する (以下で詳細を述べます).
>
> あれ以降深く追及できなくて申し訳ない…
> これで問題ないようなら是非入れましょう。
> 少なくとも定義するだけなら(使わなければ)問題ないと思うので
> とりあえず入れてしまってもいいかも。
そうですね.では,入れる方向で.
# これを入れるために tetex に md5sum の結果を埋め込んでおいた
# のでした.
> あと、この先いろんな macro を定義しようと思っているのですが、
> そのたびに rpm を rebuild するのもアホらしいので、
> momonga 特有な macro は rpm からは切離そうと思うのですが、
> いかがでしょう?
そうですね.名前は何が良いでしょうかね?それとも,何か既存の
spec ファイルで新たなパッケージ定義しますかね?
> %makeinstall_args \\\
> prefix=%{?buildroot:%{buildroot}}%{_prefix} \\\
> exec_prefix=%{?buildroot:%{buildroot}}%{_exec_prefix} \\\
> bindir=%{?buildroot:%{buildroot}}%{_bindir} \\\
> sbindir=%{?buildroot:%{buildroot}}%{_sbindir} \\\
> sysconfdir=%{?buildroot:%{buildroot}}%{_sysconfdir} \\\
> datadir=%{?buildroot:%{buildroot}}%{_datadir} \\\
> includedir=%{?buildroot:%{buildroot}}%{_includedir} \\\
> libdir=%{?buildroot:%{buildroot}}%{_libdir} \\\
> libexecdir=%{?buildroot:%{buildroot}}%{_libexecdir} \\\
> localstatedir=%{?buildroot:%{buildroot}}%{_localstatedir} \\\
> sharedstatedir=%{?buildroot:%{buildroot}}%{_sharedstatedir} \\\
> mandir=%{?buildroot:%{buildroot}}%{_mandir} \\\
> infodir=%{?buildroot:%{buildroot}}%{_infodir}
これと
> %configure_env \\\
> CFLAGS="${CFLAGS:-%optflags}" \\\
> CXXFLAGS="${CXXFLAGS:-%optflags}" \\\
> FFLAGS="${FFLAGS:-%optflags}"
>
> %configure_args \\\
> --prefix=%{_prefix} \\\
> --exec-prefix=%{_exec_prefix} \\\
> --bindir=%{_bindir} \\\
> --sbindir=%{_sbindir} \\\
> --sysconfdir=%{_sysconfdir} \\\
> --datadir=%{_datadir} \\\
> --includedir=%{_includedir} \\\
> --libdir=%{_libdir} \\\
> --libexecdir=%{_libexecdir} \\\
> --localstatedir=%{_localstatedir} \\\
> --sharedstatedir=%{_sharedstatedir} \\\
> --mandir=%{_mandir} \\\
> --infodir=%{_infodir}
これですが,make install におけるディレクトリ変数の指定と,
configure におけるコンパイルオプション変数とディレクトリ引数は
できれば,他の変数・引数とは別扱いにしたいです.そもそも,これ
らは新たに定義し直す事も稀ですし,これらの引数や変数は,不要な
のに定義されていても悪さはしないので,足りないのに気付かずに不
幸になるよりは,無条件で指定されていてもらいたいです.
ということで,
%makeinstall_args %{_nil}
%makeinstall_directory_args \\\
prefix=%{?buildroot:%{buildroot}}%{_prefix} \\\
exec_prefix=%{?buildroot:%{buildroot}}%{_exec_prefix} \\\
bindir=%{?buildroot:%{buildroot}}%{_bindir} \\\
sbindir=%{?buildroot:%{buildroot}}%{_sbindir} \\\
sysconfdir=%{?buildroot:%{buildroot}}%{_sysconfdir} \\\
datadir=%{?buildroot:%{buildroot}}%{_datadir} \\\
includedir=%{?buildroot:%{buildroot}}%{_includedir} \\\
libdir=%{?buildroot:%{buildroot}}%{_libdir} \\\
libexecdir=%{?buildroot:%{buildroot}}%{_libexecdir} \\\
localstatedir=%{?buildroot:%{buildroot}}%{_localstatedir} \\\
sharedstatedir=%{?buildroot:%{buildroot}}%{_sharedstatedir} \\\
mandir=%{?buildroot:%{buildroot}}%{_mandir} \\\
infodir=%{?buildroot:%{buildroot}}%{_infodir}
%makeinstall \
%{makeinstall_env} %__make \
%{makeinstall_directory_args} %{makeinstall_args} %{makeinstall_target}
%configure_env %{_nil}
%configure_optflags_env \\\
CFLAGS="${CFLAGS:-%optflags}" \\\
CXXFLAGS="${CXXFLAGS:-%optflags}" \\\
FFLAGS="${FFLAGS:-%optflags}"
%configure_args %{_nil}
%configure_directory_args \\\
--prefix=%{_prefix} \\\
--exec-prefix=%{_exec_prefix} \\\
--bindir=%{_bindir} \\\
--sbindir=%{_sbindir} \\\
--sysconfdir=%{_sysconfdir} \\\
--datadir=%{_datadir} \\\
--includedir=%{_includedir} \\\
--libdir=%{_libdir} \\\
--libexecdir=%{_libexecdir} \\\
--localstatedir=%{_localstatedir} \\\
--sharedstatedir=%{_sharedstatedir} \\\
--mandir=%{_mandir} \\\
--infodir=%{_infodir}
%configure \
%{?__libtoolize:[ -f configure.in ] && %{__libtoolize} --copy --force ;} \
%{configure_optflags_env} %{configure_env} %{configure_cmd} \
%{_target_platform} %{configure_directory_args} %{configure_args}
とするのはどうでしょう?
--
1024D/2A3FDBE6 2001-08-26 Kenta MURATA (muraken) <muraken2@xxxxxxxxx>
Key fingerprint = 622A 61D3 280F 4991 4833 5724 8E2D C5E1 2A3F DBE6