Kernel リリースについて Edit

  • 本サイトでは、本家Kernelソースに、LinuxSH最新パッチを適用したLinuxSHベースのカーネルを
    LANDISK版としてリリースしています。

    以下参考までに、LinuxSH版カーネルとそこから派生するLANDISK版カーネルの作成方法を記しておきます。

LinuxSH版カーネルの作り方 Edit

  • 本家ソースの取得
    • 取得の仕方は省略します。
    • 取得後カーネルソースを展開します。

  • SH版最新パッチの取得
    • tla
      本ツールを使用してSH版最新カーネルのパッチ群である sh--stable--2.6 を取得します。
      (tlaはdebian26で使用可能です。「apt-get install tla」)
      landisk:~/kernel# tla register-archive http://www.stampede.org/~lethal/{archive}/linux
      landisk:~/kernel# tla get lethal@linux-sh.org--linux/sh--stable--2.6
      
    • treecp.sh
      (正規の方法ではないのですが、)ソースをマージするために、次のようなスクリプトを用意します。
      #!/bin/sh
      #
      # treecp.sh - Tree copy Script
      #
      # Copyright (C) 2001 Paul Mundt <lethal@xxxxxx>
      #
      # Modified by M. R. Brown <mrbrown@xxxxxx>
      #
      # A simple shell script for linking a drop in tree into a stock
      # kernel tree. Usable for drop in trees such as the linux-mips
      # and linuxconsole trees.
      #
      # Released under the terms of the GNU GPL v2
      #
      [ "$#" -ne "2" ] && echo "Usage: $0 <drop in tree> <kernel tree>" && exit 1
      
      ODIR=${PWD}
      cd $1 || exit 1
      LDIR=${PWD}
      echo -n "Building file list ... "
      LIST=`find * \( -type d -name CVS -prune \) -o -type f -print`
      echo -e "done."
      cd ${ODIR}
      
      cd $2 || exit 1
      
      echo -n "Copying files ........ "
      for file in $LIST; do
      	DIR=`dirname $file`
      	[ ! -d $DIR ] && mkdir -p $DIR
      	cp $LDIR/$file $file
      done
      echo -e "done."
      
      ※ http://www.m17n.org/linux-sh/ml/linux-sh-ja/2003-09/msg00052.html

    • ソースのマージ
      先ほど作成したtreecp.shを用いて、本家ソースとSH版パッチをマージして、LinuxSH版カーネルを作成します。
      landisk:~/kernel# treecp.sh sh--stable--2.6--patch-xxx linux-2.6.x
      
    • 趣味の問題ですが
      マージされたカーネルには、非常に多くのパッチ履歴情報が含まれます。
      個人的には不必要な情報なので、次のコマンドで一括削除しています。
      landisk:~/kernel# cd linux-2.6.x
      landisk:~/kernel/linux-2.6.x# find . -name .arch-ids -exec rm -rf {} \;
      landisk:~/kernel/linux-2.6.x# rm -rf \{arch\}/
      
  • 以上で、LinuxSH版カーネルソースができあがりました
    次に、本LinuxSHカーネルをベースに、いくつかのパッチを当てて、LANDISK版カーネルを作成します。

LANDISK版Kernelの作り方 Edit

  • パッチ
    本サイトでは、下記の追加パッチを当てたカーネルをリリースしています。


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2006-06-13 (火) 20:02:26 (6529d)