スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

[探] GNU globalその3

前回、GNU globalを使ってソースのhtmlを出力するスクリプトを作ったが、
そのときはtar-ballなりzipを展開したディレクトリを入力としていた。

これを、gitで取得してきたソースを食わせて出力するようにする。
つまらない修正ではあるが、gitを使っているソフトウェアは多いので
こっちのほうがなにかと使いそうではある。


■前提
・OS : ubuntu 14.04 trusty 64bit
 → windows上、vagrantで用意

●instGlobal.sh
globalをインストールするところをスクリプトにしておく。

#!/bin/bash
# instGlobal.sh

echo "instGlobal.sh ...."

echo "package for global install..."
sudo apt-get update
sudo apt-get -y install curl
sudo apt-get -y install wget
sudo apt-get -y install ncurses-dev
sudo apt-get -y install exuberant-ctags

sudo apt-get -y install python

CUR=`pwd`
echo "global install..."
wget http://tamacom.com/global/global-6.4.tar.gz
tar zxvf global-6.4.tar.gz
cd global-6.4
./configure
make
sudo make install
cd $CUR

echo "pip install..."
curl -kL https://raw.github.com/pypa/pip/master/contrib/get-pip.py | sudo python


echo "pygments install..."
sudo pip install pygments==1.6

echo "instGlobal.sh done."


●getOpst.sh
たとえばOpenStackをソースとして指定してみる

#!/bin/bash
# getOpst.sh

sudo apt-get update
sudo apt-get -y install curl
sudo apt-get -y install wget
sudo apt-get -y install git
git config --global user.name "hoge"
git config --global user.email "hoge@example.com"

if [ ! -f /home/vagrant/.ssh/id_rsa ]; then
ssh-keygen -t rsa
fi

CUR=`pwd`
COMPLIST="ceilometer heat"
if [ ! -d ./openstack ]; then
mkdir $CUR/openstack
fi

for comp in $COMPLIST
do
cd $CUR/openstack
if [ ! -d ./$comp ]; then
url="https://github.com/openstack/${comp}.git"
git clone $url
cd ./$comp
git checkout stable/juno
# git checkout stable/kilo
fi

cd $CUR/openstack
if [ ! -d ./$comp-html ]; then
mkdir ./${comp}-html
$CUR/wrapGtags.sh $CUR/openstack/$comp $CUR/openstack/$comp
$CUR/wrapHtags.sh $CUR/openstack/$comp $CUR/openstack/$comp "$comp" $CUR/openstack/${comp}-html
fi
done



●wrapGtags.sh
gtagsによるタグ生成

#!/bin/bash
# wrapGtags.sh

conf=/usr/local/share/gtags/gtags.conf
label=pygments

CUR=`pwd`
srcpath=""
dbpath=""

if [ $# -eq 2 ]; then
srcpath=$1
dbpath=$2
else
echo "$0 [src-path] [db-path]"
exit 0
fi

gtags_opt=" --gtagsconf=$conf --gtagslabel=$label $dbpath "

if [ ! -d $dbpath ]; then
mkdir -p $dbpath
fi

cd $srcpath
gtags $gtags_opt
cd $CUR

echo "done."
exit 0


●wrapHtags.sh
htagsによるHTML生成

#!/bin/bash
# wrapHtags.sh

conf=/usr/local/share/gtags/gtags.conf
label=pygments

CUR=`pwd`
srcpath=""
dbpath=""
title=""
destpath=""

if [ $# -eq 4 ]; then
srcpath=$1
dbpath=$2
title=$3
destpath=$4
else
echo "$0 [src-path] [db-path] [title] [dest-path]"
exit 0
fi

htags_opt=" -sanhF --gtagsconf=$conf --gtagslabel=$label -d $dbpath -t $title $destpath "

if [ ! -d $destpath ]; then
mkdir -p $destpath
fi

cd $srcpath
htags $htags_opt
cd $CUR

echo "done."
exit 0




■おまけ

MAAS Stableをみると、5/29に
1.7.5+bzr3369-0ubuntu1~trusty1
がリリースされているようだった。また少し試してみよう。



■おまけその2
gistで書くと見た目はこんな感じ。





関連記事
スポンサーサイト

コメントの投稿

非公開コメント

プロフィール

kr2

Author:kr2
ネコと音楽が好き。
CD紹介、技術ネタ
などの雑記帳。

カレンダー
10 | 2017/11 | 12
- - - 1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 - -
月別アーカイブ
カテゴリー
ブログ内検索
RSSフィード
最近の記事
最近のコメント
最近のトラックバック
リンク
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。