2014-04-29 :-)
_ 神木山等覚院つつじ寺 でつつじを見てきた
神奈川新聞を読んでいたら記事があったので思い立って行ってきた。自転車で 30 分くらい。駐車場は 8 台ぶんくらいしかないうえに狭いし割りと人が居るので自動車で行くのはオススメできない。
_ [NetBSD][sysbuild]sysbuild
The Julipedia: Introducing sysbuild for NetBSD
sysbuild の作業ディレクトリを変更する
% man sysbuild
何も表示されん。
ええい
% vim `which sysbuild`
この辺でデフォルトを設定している。
# Sets defaults for configuration variables and hooks that need to exist. # # This function should be before the configuration file has been loaded. This # means that the user can undefine a required configuration variable, but we let # him shoot himself in the foot if he so desires. sysbuild_set_defaults() { # Please remember to update sysbuild(1) if you change any default values. shtk_config_set BUILD_ROOT "${HOME}/sysbuild" shtk_config_set BUILD_TARGETS "release" shtk_config_set CVSROOT ":ext:anoncvs@anoncvs.NetBSD.org:/cvsroot" shtk_config_set INCREMENTAL_BUILD "false" shtk_config_set MACHINES "$(uname -m)" shtk_config_set RELEASEDIR "${HOME}/sysbuild/release" shtk_config_set SRCDIR "${HOME}/sysbuild/src" shtk_config_set UPDATE_SOURCES "true" pre_build_hook() { true; } post_build_hook() { true; } pre_fetch_hook() { true; } post_fetch_hook() { true; } }
デフォルト値はこちら
/usr/pkg/etc/sysbuild/default.conf
# $NetBSD: default.conf,v 1.7 2013/06/18 13:24:55 jmmv Exp $ # System-wide configuration file for sysbuild(1). # # This default configuration file tells sysbuild to use the source trees from # the standard locations documented by hier(7) and allows any user to easily # perform NetBSD builds on their home directories using those. # Place all build files in the user's home directory. BUILD_ROOT="${HOME}/sysbuild" # Store release files relative to the build root. RELEASEDIR="${BUILD_ROOT}/release" # Use the standard source trees as documented by hier(7), and honor if the # system has X installed or not. SRCDIR="/usr/src" [ ! -f /etc/mtree/set.xbase ] || XSRCDIR="/usr/xsrc" # Build for the current machine only. MACHINES="$(uname -m)" # What to build for every machine. BUILD_TARGETS="release" # Do not perform update builds by default. INCREMENTAL_BUILD="no" # Determine the CVS root and the current release. if [ -f "${SRCDIR}/CVS/Root" ]; then CVSROOT="$(cat ${SRCDIR}/CVS/Root)" else CVSROOT=":ext:anoncvs@anoncvs.NetBSD.org:/cvsroot" fi if [ -f "${SRCDIR}/CVS/Tag" ]; then CVSTAG="$(sed -e 's,^T,,' ${SRCDIR}/CVS/Tag)" else if ! head -n 1 /etc/release | grep 99 >/dev/null; then CVSTAG="$(head -n 1 /etc/release | cut -d . -f 1 \ | tr '[A-Z] ' '[a-z]-')" fi fi # Use as many CPUs as are available. NJOBS="$(/sbin/sysctl -n hw.ncpuonline)"
でも sysbuild 内で SRCDIR を上書きしている? 設定されてなかったらハードコーディングで上書きするんだろか。
とりあえず設定ファイルをコピー
% cp /usr/pkg/etc/sysbuild/default.conf ~/.sysbuild/default.conf
src を変更などすればどのユーザーでも作業できるけどまあその
ここだけ変更しとく。
BUILD_ROOT="/usr/sysbuild"
実行
% sysbuild build
4 時間後
make release started at: Tue Apr 29 15:56:33 JST 2014 make release finished at: Tue Apr 29 19:59:06 JST 2014 ===> Successful make release ===> build.sh ended: Tue Apr 29 19:59:07 JST 2014 ===> Summary of results: build.sh command: ./build.sh -D/usr/sysbuild/i386/destdir -M/usr/sysbuild/i386/obj -N2 -R/usr/sysbuild/release -T/usr/sysbuild/i386/tools -U -X/usr/xsrc -j1 -mi386 -x release build.sh started: Tue Apr 29 15:56:08 JST 2014 NetBSD version: 6.1_STABLE MACHINE: i386 MACHINE_ARCH: i386 Build platform: NetBSD 6.1.2 i386 HOST_SH: /bin/sh No $TOOLDIR/bin/nbmake, needs building. Bootstrapping nbmake TOOLDIR path: /usr/sysbuild/i386/tools DESTDIR path: /usr/sysbuild/i386/destdir RELEASEDIR path: /usr/sysbuild/release Created /usr/sysbuild/i386/tools/bin/nbmake Updated makewrapper: /usr/sysbuild/i386/tools/bin/nbmake-i386 Successful make release build.sh ended: Tue Apr 29 19:59:07 JST 2014 ===> . sysbuild: I: Command finished successfully