Provide script 'midori-dev' for building from git
This commit is contained in:
parent
539cdaa47e
commit
8c9461c1ea
1 changed files with 87 additions and 0 deletions
87
tools/midori-dev
Executable file
87
tools/midori-dev
Executable file
|
@ -0,0 +1,87 @@
|
|||
#! /bin/bash
|
||||
|
||||
# Copyright (C) 2010 David Mohr <david@mcbf.net>
|
||||
#
|
||||
# This library is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU Lesser General Public
|
||||
# License as published by the Free Software Foundation; either
|
||||
# version 2.1 of the License, or (at your option) any later version.
|
||||
#
|
||||
# See the file COPYING for the full license text.
|
||||
#
|
||||
# midori-dev: Run, update or debug Midori from git.
|
||||
|
||||
# Adjust this to where you have your git sources
|
||||
DEVDIR=~/src/xfce/midori/git
|
||||
|
||||
# Location of stdout and stderr from running midori
|
||||
LOG=~/.midori.out
|
||||
|
||||
#-----------------------------------------------------------------------------
|
||||
|
||||
BIN=_build_/default/midori/midori
|
||||
BASENAME=`basename $0`
|
||||
|
||||
ulimit -c unlimited
|
||||
|
||||
cd $DEVDIR
|
||||
|
||||
CMD=`echo $BASENAME | sed 's/^midori-//'`
|
||||
if [ -z $CMD ]; then
|
||||
echo "I'm confused, basename $BASENAME is not in the midori-<FOO> format"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ $CMD == "dev" ]; then
|
||||
# No command was given through a symlink,
|
||||
# so check the first parameter instead
|
||||
CMD=$1
|
||||
shift
|
||||
fi
|
||||
|
||||
case $CMD in
|
||||
git)
|
||||
exec ./waf build --run "$@" >& $LOG
|
||||
;;
|
||||
gdb)
|
||||
gdb $BIN core
|
||||
;;
|
||||
save)
|
||||
NAME=`date '+%Y%m%d-%H%M%S'`
|
||||
DESC="$1"
|
||||
CAT="$2"
|
||||
if [ -z "$1" ]; then
|
||||
echo "It is recommended to save a description of the cause of the crash"
|
||||
echo "Enter one line now, or press <ENTER> to continue"
|
||||
read DESC
|
||||
fi
|
||||
CRASH=crash/$NAME
|
||||
|
||||
echo "Saving crash info..."
|
||||
mkdir -p $CRASH
|
||||
echo $DESC > $CRASH/description
|
||||
echo " (gdb will take some time)"
|
||||
gdb $BIN core --batch -ex 'thread apply all bt' >& $CRASH/backtrace
|
||||
echo " Backtrace is in $DEVDIR/$CRASH/backtrace."
|
||||
cp $BIN $CRASH
|
||||
cp core $CRASH
|
||||
cp $LOG $CRASH/output
|
||||
|
||||
if [ -n "$CAT" ]; then
|
||||
cat $CRASH/backtrace
|
||||
fi
|
||||
;;
|
||||
pull)
|
||||
git pull
|
||||
;;
|
||||
*)
|
||||
cat << EOM
|
||||
Usage: Create a symlink midori-<CMD>, or run 'midori-dev <CMD>'
|
||||
where CMD can be
|
||||
git: run the current git version
|
||||
gdb: open the last core dump in gdb
|
||||
save: saves relevant information about the last crash
|
||||
so that it can be analyzed later
|
||||
pull: pulls the latest updates from the repository
|
||||
EOM
|
||||
esac
|
Loading…
Reference in a new issue