TATEISHI Katsuyuki
k.t****@nttco*****
2013年 7月 12日 (金) 14:53:39 JST
たていしです。 On Fri, 12 Jul 2013 14:44:34 +0900 (JST), TATEISHI Katsuyuki <k.t****@nttco*****> wrote: >> >> --with-l7vsadm-sockdir と --with-l7vs-config-dir あるから、 >> こいつらだけ生path指定して、rpmbuild時はこのオプションに >> RPM_BUILD_ROOTを付与するしかないかな? >> でも、v2のconfigure.acとMakefile.amを見ると、sysconfdirや >> localstatedirを使っているんですよね。 >> >> v2のときはどう乗り切ったんだろう? > > v2では --with-l7... のデフォルト値を > > ============================================================ > AC_ARG_WITH( > l7vsadm-sockdir, > [ --with-l7vsadm-sockdir=DIR l7vsadm sockfile path. > [default="${localstatedir}/run/l7vs"] ], > [ l7vsadm_sockdir="$withval" ], > # XXX: Should be [ l7vsadm_sockdir="${localstatedir}/run/${PACKAGE}" ] > [ l7vsadm_sockdir="${localstatedir}/run/l7vs" ] > ) > ============================================================ > のようにしています > # XXX が残ってますが今回は関係なさげ > > なので、 --prefix を指定しただけだと同様に /usr/local/var 配 > 下とかになる仕様です。 > > 前述のとおり rpm にするときは rpmbuild がこのへんの場所を指定 > してくれるので、Makefile.am が install 先を生で埋め込んでない > 限りうまく動作するはずです。 補足です。 v2 は spec ファイルでも ============================================================ %define l7vs_moddir %{_libdir}/l7vs %define l7vs_logdir %{_localstatedir}/log/l7vs %define l7vsadm_sockdir %{_localstatedir}/run/l7vs (中略) %build %configure \ --with-l7vs-moddir=%{l7vs_moddir} \ --with-l7vs-logdir=%{l7vs_logdir} \ --with-l7vsadm-sockdir=%{l7vsadm_sockdir} \ --with-l7vs-maxvs=%{l7vs_maxvs} ============================================================ のように指定してました。 -- TATEISHI Katsuyuki <k.t****@nttco*****> > > -- > TATEISHI Katsuyuki <k.t****@nttco*****> > > > >> >> (2013/07/12 11:14), TATEISHI Katsuyuki wrote: >>> たていしです。 >>> >>> On Thu, 11 Jul 2013 16:19:02 +0900, >>> 中野 宏朗 <nakan****@nttco*****> wrote: >>>> # ./configure --prefix=/hoge >>>> >>>> とかやってインストール先を変えようとしても変わらない。 >>>> configure使ってる意味を一つ潰してて、そのせいでrpmbuildのときに >>>> 仮インストール先を変更できない・・・ >>>> make exe_prefix=/hoge >>>> とかやると変えられるかもだけど、configure使ってて、configure.inを解読 >>>> しないとmake変数がわからないとか、configureで変えられないとか、非一般的です。 >>>> >>>> というわけで、AC_SUBST(exec_prefix,[/usr])とか、libdirとかincludeとかの >>>> 直でフルパス指定しているところを削除したいです。 >>>> # libdirやincludeは、%prefix/libとかになるかな。 >>>> そうすると、ソースを直接configure;makeしたときのデフォルトprefixが >>>> automake標準の/usr/localになるんですが、それでもいいでしょうか。 >>>> >>>> rpmのときはprefixを$RPM_BUILD_ROOT/usrにして、/usr 配下にインストール >>>> されるようにしようと思っています。 >>>> その方が一般的だと思うのですが。 >>> >>> ./configure のときに何も指定しなければ /usr/local へ、 RPM >>> は (rpmbuild が --prefix とかを /usr に指定するので) /usr へ >>> インストールされるというかたちで良いと思います。 >>> >>> # v2 のときも、たしかそうしたはずですし。 補足です。