はじめに
連載最後となる今回は、
実践例の注意
本連載の実践例では、
ファームウェア作成定義の用意
カスタムのサンプルとして
SSD/Linuxへのソフトウェアの追加
公開しているSSD/
今回は、
include "${.CURDIR}/../../share/mk/bsd.own.mk"
.include "${.CURDIR}/../Makefile.inc"
DISTNAME= lighttpd-
DISTVERSION= 1.4.23
DISTRELEASE= 0
EXTRACT_SUFX= tar.bz2
MASTER_SITES= http://www.lighttpd.net/download/
DEPENDENT= usr.sbin/lighttpd
.include "${.CURDIR}/../../share/mk/bsd.mkdist.mk"
.include
DISTNAME= lighttpd
DIST= ${.CURDIR}/../../dist/lighttpd
.PATH: ${DIST}
CPPFLAGS+= -I${.CURDIR}/../../dist/zlib
CPPFLAGS+= -I${.CURDIR}/../../dist/bzip2
LDFLAGS+= -L${.CURDIR}/../../lib/libz
LDFLAGS+= -L${.CURDIR}/../../lib/libbz2
HAVE_DESTDIR= 1
CONFIGURE_ENV= CPPFLAGS="${CPPFLAGS}" LDFLAGS="${LDFLAGS}" LIBS="${LIBS}"
CONFIGURE_FULL_PREFIX= 1
CONFIGURE_OPTIONS+= --program-transform-name='‘
CONFIGURE_OPTIONS+= --without-pcre
GNU_TARGET= ${TARGET_MACHTYPE}
GNU_HOST= ${TARGET_MACHTYPE}
GNU_BUILD= ${MACHTYPE}
.include
追加ソフトウェアのファームウェアへの組込
ソースツリーに追加したソフトウェアを、
ここで作成したリストを、
BCOPY @SRCTOPDIR@/bin/bash/src/bash bin/bash
BCOPY @SRCTOPDIR@/bin/cat/cat bin/cat
BCOPY @SRCTOPDIR@/bin/chmod/chmod bin/chmod
# コンパイルした物を、RAMディスクイメージに直接インストール
SPECIAL cd @SRCTOPDIR@/contrib/lighttpd; bmake install DESTDIR=@MOUNT_POINT@
.include
.include "../Makefile.inc"
.include "${.CURDIR}/../../standard/initrd/Makefile.inc"
# include した standard の内容に lighttpd を追加
LIST_S+= lighttpd
初期設定ファイルの変更
ファームウェアにもともと含まれている/etc/
ここに用意した変更後のファイルは、
# cd distrib/powerpc-obs600/custom0/initrd # cp etc/common/rc.conf etc/ # vi etc/rc.conf
カーネルコンフィグレーションの変更
カーネルコンフィグレーションの変更は、
# mkdist/kernel/2.6.29/dot.config.powerpc-obs600.ipv6
KERNEL_CONFIG?= /root/my_kernel_config
# cd /usr/src # bmake menuconfig BACKUP_CONFIG=yes (cd linux/include/; rm -f asm; ln -s linux/arch/powerpc/include/asm) cp /root/my_kernel_config linux/.config cd linux && make ARCH=powerpc INSTALL_MOD_PATH=/home/dest-powerpc CROSS_COMPILE=powerpc-ssdlinux- gnu- menuconfig ……(省略)……
変更個所を加えたファームウェアの構築
前回では、
以上の手順でオリジナルファームウェアの作成は完了です。細かな解説は省いていますが、
# cd mkdist/lighttpd # bmake ……(省略)…… # cd contrib/lighttpd # bmake ……(省略)…… # cd /usr/src # bmake build_kernel -DNOCLEAN ……(省略)…… # cd distrib/powerpc-obs600/custom0 # bmake clean && bmake ……(省略)……
あとがき
これまで6回にわたり、