]> git.pld-linux.org Git - packages/bootchart.git/blob - bootchart.spec
- use %banner when no grubby present
[packages/bootchart.git] / bootchart.spec
1 Summary:        Boot Process Performance Visualization
2 Summary(pl):    Wizualizacja wydajno¶ci procesu startu systemu
3 Name:           bootchart
4 Version:        0.9
5 Release:        1.9
6 Epoch:          0
7 License:        GPL
8 Group:          Base
9 Source0:        http://dl.sourceforge.net/bootchart/%{name}-%{version}.tar.bz2
10 # Source0-md5:  4be91177d19069e21beeb106f2f77dff
11 Patch0:         %{name}-bash.patch
12 Patch1:         %{name}-initscript.patch
13 URL:            http://www.bootchart.org/
14 BuildRequires:  ant
15 BuildRequires:  jakarta-commons-cli >= 0:1.0
16 BuildRequires:  jaxp_parser_impl
17 BuildRequires:  jpackage-utils >= 0:1.5
18 BuildRequires:  rpmbuild(macros) >= 1.294
19 Requires:       jakarta-commons-cli >= 0:1.0
20 Requires:       jpackage-utils >= 0:1.5
21 BuildArch:      noarch
22 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
23
24 %define boottitle "Bootchart logging"
25
26 %description
27 A tool for performance analysis and visualization of the GNU/Linux
28 boot process. Resource utilization and process information are
29 collected during the boot process and are later rendered in a PNG, SVG
30 or EPS encoded chart.
31
32 %description -l pl
33 Narzêdzie do analizy i wizualizacji wydajno¶ci procesu startu systemu
34 GNU/Linux. Podczas startu systemu zbirane s± informacje o procesach i
35 wykorzystaniu zasobów, a nastêpnie s± przedstawiane w postaci wykresu
36 w formacie PNG, SVG lub EPS.
37
38 %package javadoc
39 Summary:        Javadoc for %{name}
40 Summary(pl):    Dokumentacja Javadoc dla bootcharta
41 Group:          Documentation
42 Requires:       jpackage-utils
43
44 %description javadoc
45 Javadoc for %{name}.
46
47 %description javadoc -l pl
48 Dokumentacja Javadoc dla bootcharta.
49
50 %package logger
51 Summary:        Boot logging script for %{name}
52 Summary(pl):    Skrypt loguj±cy proces startu dla bootcharta
53 Group:          Base
54 Requires:       coreutils
55 Requires:       grep
56 Requires:       gzip
57 Requires:       mktemp
58 Requires:       mount
59 Requires:       sed
60 Requires:       tar
61
62 %description logger
63 Boot logging script for %{name}.
64
65 %description logger -l pl
66 Skrypt loguj±cy proces startu dla bootcharta.
67
68 %prep
69 %setup -q
70 %patch0 -p1
71 %patch1 -p1
72
73 %build
74 # Remove the bundled commons-cli
75 rm -rf lib/org/apache/commons/cli lib/org/apache/commons/lang
76
77 required_jars="commons-cli"
78 export CLASSPATH="`/usr/bin/build-classpath $required_jars`"
79
80 %ant
81
82 %install
83 rm -rf $RPM_BUILD_ROOT
84
85 # jar
86 install -D %{name}.jar $RPM_BUILD_ROOT%{_javadir}/%{name}-%{version}.jar
87 ln -s %{name}-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/%{name}.jar
88
89 # script
90 install -D script/%{name} $RPM_BUILD_ROOT%{_bindir}/%{name}
91
92 # javadoc
93 install -d $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version}
94 cp -pr javadoc/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version}
95 ln -s %{name}-%{version} $RPM_BUILD_ROOT%{_javadocdir}/%{name} # ghost symlink
96
97 # logger
98 install -D script/bootchartd $RPM_BUILD_ROOT/sbin/bootchartd
99 install -D script/bootchartd.conf $RPM_BUILD_ROOT%{_sysconfdir}/bootchartd.conf
100
101 %clean
102 rm -rf $RPM_BUILD_ROOT
103
104 %post javadoc
105 ln -sf %{name}-%{version} %{_javadocdir}/%{name}
106
107 %postun javadoc
108 if [ "$1" = "0" ]; then
109         rm -f %{_javadocdir}/%{name}
110 fi
111
112 %post logger
113 # Add a new grub/lilo entry
114 if [ -x /sbin/grubby ]; then
115         kernel=$(/sbin/grubby --default-kernel)
116         info=$(/sbin/grubby --info=$kernel)
117         initrd=$(echo "$info" | sed -n '/^initrd=/{s/^initrd=//;p;q;}')
118         init=$(echo "$info" |sed -n '/^args=.*init=/{s/^args=.*init=//;s/"$//;p;q;}')
119         [ -n "$initrd" ] && initrd="--initrd=$initrd"
120         [ -n "$init" ] && init="bootchart_init=$init"
121         /sbin/grubby --remove-kernel TITLE=%{boottitle}
122         /sbin/grubby --copy-default --add-kernel=$kernel $initrd --args="init=/sbin/bootchartd $init" --title=%{boottitle} || :
123 else
124         %banner -e %{name}-logger <<-EOF
125 You should adjust your bootloader to boot with
126  init=/sbin/bootchartd
127 EOF
128 fi
129
130 %preun logger
131 if [ "$1" = 0 ]; then
132         # Remove the grub/lilo entry
133         if [ -x /sbin/grubby ]; then
134                 /sbin/grubby --remove-kernel TITLE=%{boottitle} || :
135         fi
136 fi
137
138 %files
139 %defattr(644,root,root,755)
140 %doc ChangeLog COPYING INSTALL README TODO lib/LICENSE.cli.txt lib/LICENSE.compress.txt lib/LICENSE.epsgraphics.txt lib/NOTICE.txt
141 %{_javadir}/*
142 %dir %{_bindir}/bootchart
143
144 %files javadoc
145 %defattr(644,root,root,755)
146 %doc %{_javadocdir}/%{name}-%{version}
147 %ghost %doc %{_javadocdir}/%{name}
148
149 %files logger
150 %defattr(644,root,root,755)
151 %doc README.logger
152 %attr(755,root,root) /sbin/bootchartd
153 %config(noreplace) %{_sysconfdir}/bootchartd.conf
This page took 0.15025 seconds and 3 git commands to generate.