7.0Rのmake {build,install}world時のmake.confとsrc.confの扱い
先日ezjailのパッチを書きましたが、7.0Rでezjailをお使いの方はあのパッチは使わないでください。
7.0Rからはsrc.confでKNOBを指定して不必要なソフトウェアをビルド&インストールしないようにします。
今まではmake {build,install}world時にmake.confを指定すればそれで事足りていたんですが、7.0Rからはsrc.conf(5)にもある通り、make __MAKE_CONF=/etc/make.conf SRCCONF=/etc/src.conf {build,install}worldがデフォルトです。つまり今までのmake.confの指定はそのままで、KNOBの設定だけ分離させた訳です。
これがなぜ7.0R環境下のezjailで使ってはいけないかというと、あのパッチでは__MAKE_CONFとSRCCONFの指定を一緒にしてしまった為です。例えばmake.confでCPUTYPE等の指定をしていてもあのパッチを使ってしまうと、どちらか一つしか使えないのでどちらかが無駄になってしまいます。
現在VMware環境下でパッチを作成中ですが、7.0Rをお使いの方はezjail-adminではなく、手動でmake buildworldを行ってください。
以前にbuildworld等をした事がある場合は/usr/obj以下を削除します。
# chflags -R noschg /usr/obj/* # rm -rf /usr/obj/*
buildworldします。
# make __MAKE_CONF=/etc/make.conf SRCCONF=/etc/src.conf buildworld
installworld(ezjail-admin update -i)します。
# ezjail-admin update -i
make.confやsrc.confは各自manを参照してください。
私が使っているsrc.confは以下のようなものです。
WITHOUT_ATM=yes WITHOUT_BIND_DNSSEC=yes WITHOUT_BIND_ETC=yes WITHOUT_BIND_LIBS_LWRES=yes WITHOUT_BIND_MTREE=yes WITHOUT_BIND_NAMED=yes WITHOUT_BLUETOOTH=yes WITHOUT_CALENDAR=yes WITHOUT_DICT=yes WITHOUT_GAMES=yes WITHOUT_GCOV=yes WITHOUT_GPIB=yes WITHOUT_I4B=yes WITHOUT_INET6=yes WITHOUT_INFO=yes WITHOUT_IPFILTER=yes WITHOUT_IPX=yes WITHOUT_KERBEROS=yes WITHOUT_LPR=yes WITHOUT_NCP=yes WITHOUT_NIS=yes WITHOUT_OBJC=yes WITHOUT_PROFILE=yes WITHOUT_RCMDS=yes WITHOUT_SHAREDOCS=yes WITHOUT_USB=yes