File bootchart-0.9.diff of Package bootchart

Index: bootchart-0.9/script/bootchart
===================================================================
--- bootchart-0.9.orig/script/bootchart
+++ bootchart-0.9/script/bootchart
@@ -13,8 +13,8 @@ fi
 
 # Configuration
 MAIN_CLASS="org.bootchart.Main"
-BASE_JARS="commons-cli.jar bootchart.jar"
-FLAGS="-Djava.awt.headless=true -Dgnu.java.awt.peer.gtk.Graphics=Graphics2D"
+BASE_JARS="bootchart-commons-cli.jar bootchart.jar"
+FLAGS="-Xmx300m -Djava.awt.headless=true -Dgnu.java.awt.peer.gtk.Graphics=Graphics2D"
 
 # Set parameters
 set_jvm
Index: bootchart-0.9/script/bootchartd
===================================================================
--- bootchart-0.9.orig/script/bootchartd
+++ bootchart-0.9/script/bootchartd
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
 #
 # Bootchart logger script
 # Ziga Mahkovec  <ziga.mahkovec@klika.si>
@@ -45,7 +45,7 @@ start()
 	# directory.
 	LOG_DIR="$( mktemp -d /tmp/bootchart.XXXXXX 2>/dev/null )"
 	if [ -z "$LOG_DIR" ]; then
-		LOG_DIR="/mnt"
+		LOG_DIR="/lib/bootchart/mnt"
 		LAZY_UMOUNT="yes"
 		mount -n -t tmpfs -o size=$TMPFS_SIZE none "$LOG_DIR" >/dev/null 2>&1
 	fi
@@ -71,7 +71,7 @@ start()
 	# /proc/diskstats is available in 2.6 kernels
 	[ -f /proc/diskstats ] && log_output "cat /proc/diskstats" proc_diskstats.log &
 
-	log_output "cat /proc/*/stat" proc_ps.log &
+	log_output "cat /proc/*/task/*/stat" proc_ps.log &
 	#log_output "ps -eww -o pid,ppid,s,pcpu,comm,cmd" ps.log &
 
 	if [ -n "$IN_INIT" ]; then
@@ -108,7 +108,7 @@ log_output()
 		eval $cmd 2>/dev/null
 		echo
 		sleep $SAMPLE_PERIOD
-	done  >> "$logfile" || stop
+	done  >> "$LOG_DIR/$logfile" || stop
 }
 
 # Wait for the boot process to end.
@@ -117,22 +117,31 @@ wait_boot()
 	local runlevel=$( sed -n 's/.*:\(.*\):initdefault:.*/\1/gp' /etc/inittab )
 
 	# The processes we have to wait for
-	local exit_proc="gdmgreeter gdm-binary kdm_greet kdm"
+	local exit_proc="gdmgreeter gdm-binary kdm_greet xterm konsole gnome-terminal stopinitrd icewm-session"
 	# early_login in FC4 starts gdm early, so fall back to mingetty
 	local early_login="no"
 	grep -q early_login /proc/cmdline && early_login="yes"
-	if [ "$runlevel" -eq "2" -o "$runlevel" -eq "3" -o "$early_login" = "yes" ]; then
+	if [ "x$runlevel" = "x2" -o "x$runlevel" = "x3" -o "$early_login" = "yes" ]; then
 		exit_proc="mingetty agetty rungetty getty"
 	fi
 	while [ -f "$BOOTLOG_LOCK" ]; do
 		if [ -n "$( pidof $exit_proc )" ]; then
 			# Give the exit process some time to start
-			sleep 5
+			stopinitrd=$( pidof stopinitrd )
+			if [ -n "$stopinitrd" ] ; then
+				mv $LOG_DIR/* /dev/shm/
+				rm -f "$BOOTLOG_LOCK"
+				wait
+				kill $stopinitrd
+				exit 0
+			else
+				sleep 2
+			fi
 			# Flush the log files
 			stop
 			return
 		fi
-		sleep 2
+		usleep 200000
 	done;
 }
 
@@ -162,6 +171,13 @@ stop()
 	log_header
 
 	# Package log files
+        for i in *.log; do
+		if test -f /dev/shm/$i; then
+			cat /dev/shm/$i $i > $i.new && mv $i.new $i
+              		rm /dev/shm/$i
+		fi
+	done
+
 	tar -zcf "$BOOTLOG_DEST" header $pacct *.log
 	if [ -z "$LAZY_UMOUNT" ]; then
 		rm "$LOG_DIR"/*
@@ -169,8 +185,10 @@ stop()
 	fi
 
 	# Render the chart if configured (and the renderer is installed)
-	[ "$AUTO_RENDER" = "yes" -a -x /usr/bin/bootchart ] && \
-		/usr/bin/bootchart -o "$AUTO_RENDER_DIR" -f $AUTO_RENDER_FORMAT "$BOOTLOG_DEST"
+	if [ "$AUTO_RENDER" = "yes" -a -x /usr/bin/pybootchartgui ]; then
+                cd $AUTO_RENDER_DIR
+		/usr/bin/pybootchartgui -o "$AUTO_RENDER_DIR"/bootchart.$AUTO_RENDER_FORMAT -f $AUTO_RENDER_FORMAT "$BOOTLOG_DEST"
+        fi
 }
 
 
@@ -226,6 +244,13 @@ if [ $$ -eq 1 ]; then
 			init="${i#*=}"
 			break
 		fi
+                if [ "${i%%=*}" = "init" ]; then
+			_init=${i#*=}
+			if test "$_init" != "/sbin/bootchartd"; then
+                           init="$_init"
+                        fi
+                        break
+                fi
 	done
 	exec $init $*
 fi
Index: bootchart-0.9/script/bootchartd.conf
===================================================================
--- bootchart-0.9.orig/script/bootchartd.conf
+++ bootchart-0.9/script/bootchartd.conf
@@ -16,7 +16,7 @@ SAMPLE_PERIOD=0.2
 # kernel needs to be configured to enable v3 accounting
 # (CONFIG_BSD_PROCESS_ACCT_V3). accton from the GNU accounting utilities
 # is also required.
-PROCESS_ACCOUNTING="no"
+PROCESS_ACCOUNTING="yes"
 
 # Tarball for the various boot log files
 BOOTLOG_DEST=/var/log/bootchart.tgz
@@ -24,7 +24,7 @@ BOOTLOG_DEST=/var/log/bootchart.tgz
 # Whether to automatically generate the boot chart once the boot logger
 # completes.  The boot chart will be generated in $AUTO_RENDER_DIR.
 # Note that the bootchart package must be installed.
-AUTO_RENDER="no"
+AUTO_RENDER="yes"
 
 # Image format to use for the auto-generated boot chart
 # (choose between png, svg and eps).
openSUSE Build Service is sponsored by