]>
Commit | Line | Data |
---|---|---|
0a76862c | 1 | # |
2 | # TODO | |
3 | # - burgemu notes | |
4 | # --enable-burg-emu-usb conflicts with --enable-burg-emu-pci, emu-pci seems experimental | |
5 | # - to build and install the `burg-emu' debugging utility we need to re-run build with --target=emu | |
6 | # - put burg-emu to subpackage if it is fixed | |
7 | # - merge more from grub2.spec | |
8 | # - desc | |
ff192759 | 9 | # - how to enable themes? |
0a76862c | 10 | # |
11 | # Conditional build: | |
12 | %bcond_with burgemu # build burg-emu debugging utility | |
13 | # | |
14 | %define rev r1844 | |
a90bd0f0 | 15 | Summary: Brand-new Universal loadeR from Grub |
0a76862c | 16 | Name: burg |
17 | Version: 1.98.%{rev} | |
18 | Release: 0.%{rev}.1 | |
19 | License: GPL v3+ | |
20 | Group: Base | |
21 | Source0: %{name}-%{version}-bzr.tar.gz | |
22 | # Source0-md5: 19b8ec2fe6208788bcf877c5a3b7e91d | |
23 | Source3: burg.sysconfig | |
24 | Source4: burg-custom.cfg | |
25 | Patch0: pld-initrd.patch | |
26 | Patch1: pld-sysconfdir.patch | |
27 | Patch2: %{name}-garbage.patch | |
28 | Patch3: %{name}-shelllib.patch | |
29 | Patch4: %{name}-install.in.patch | |
30 | Patch5: %{name}-lvmdevice.patch | |
31 | Patch6: pld-mkconfigdir.patch | |
32 | # TODO: needs updates | |
33 | Patch7: %{name}-mkconfig-diagnostics.patch | |
a90bd0f0 | 34 | URL: https://launchpad.net/burg |
0a76862c | 35 | BuildRequires: autoconf |
36 | BuildRequires: automake | |
37 | BuildRequires: bison | |
38 | BuildRequires: gawk | |
39 | BuildRequires: help2man | |
40 | BuildRequires: ruby | |
41 | BuildRequires: texinfo | |
42 | %ifarch %{ix86} %{x8664} | |
43 | BuildRequires: lzo-devel >= 1.0.2 | |
44 | %endif | |
45 | %ifarch %{x8664} | |
46 | BuildRequires: /usr/lib/libc.so | |
47 | %if "%{pld_release}" == "ac" | |
48 | BuildRequires: libgcc32 | |
49 | %else | |
50 | BuildRequires: gcc-multilib | |
51 | %endif | |
52 | %endif | |
53 | BuildRequires: ncurses-devel | |
54 | BuildRequires: rpm >= 4.4.9-56 | |
55 | BuildRequires: rpmbuild(macros) >= 1.213 | |
56 | Requires: which | |
57 | Suggests: cdrkit-mkisofs | |
58 | Suggests: os-prober | |
59 | Provides: bootloader | |
60 | Conflicts: grub | |
0a76862c | 61 | ExclusiveArch: %{ix86} %{x8664} ppc sparc64 |
62 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) | |
63 | ||
64 | %define _sbindir /sbin | |
65 | %define _bindir %{_sbindir} | |
66 | %define _libdir /boot | |
67 | %define _libexecdir %{_libdir}/burg | |
68 | ||
69 | %description | |
a90bd0f0 AF |
70 | burg is a brand-new boot loader based on GRUB. It uses a new object |
71 | format which allows it to be built in a wider range of OS, including | |
72 | Linux/Windows/OSX/FreeBSD, etc. It also has a highly configurable menu | |
73 | system which works in both text and graphic mode. Additional features | |
74 | like stream support and multiple input/output device are also planned. | |
0a76862c | 75 | |
76 | %prep | |
77 | %setup -q -n %{name}-%{version}-bzr | |
78 | %patch0 -p1 | |
79 | %patch1 -p1 | |
80 | %patch2 -p1 | |
81 | %patch3 -p1 | |
82 | %patch4 -p1 | |
83 | %patch5 -p1 | |
84 | %patch6 -p1 | |
85 | %patch7 -p1 | |
86 | ||
87 | %build | |
88 | ./autogen.sh | |
89 | export CFLAGS="-Os %{?debug:-g}" | |
90 | %configure \ | |
91 | %if %{with burgemu} | |
92 | --enable-grub-emu-usb \ | |
93 | --enable-grub-emu-sdl \ | |
94 | --enable-grub-emu-pci \ | |
95 | %endif | |
96 | BUILD_CFLAGS="$CFLAGS" | |
97 | %{__make} -j1 \ | |
98 | pkgdatadir=%{_libexecdir} \ | |
99 | pkglibdir=%{_libexecdir} | |
100 | ||
101 | %install | |
102 | rm -rf $RPM_BUILD_ROOT | |
103 | install -d $RPM_BUILD_ROOT{/etc/sysconfig,%{_sysconfdir}/burg.d} | |
104 | ||
105 | %{__make} install \ | |
106 | pkgdatadir=%{_libexecdir} \ | |
107 | pkglibdir=%{_libexecdir} \ | |
108 | DESTDIR=$RPM_BUILD_ROOT | |
109 | ||
110 | cp -a docs/grub.cfg $RPM_BUILD_ROOT%{_libexecdir} | |
111 | cp -a %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/burg | |
112 | cp -a %{SOURCE4} $RPM_BUILD_ROOT%{_sysconfdir}/burg.d/custom.cfg | |
113 | cp -a grub-mkconfig_lib $RPM_BUILD_ROOT/lib/burg-mkconfig_lib | |
114 | %{__rm} $RPM_BUILD_ROOT%{_infodir}/dir | |
115 | ||
116 | # deprecated. we don't need it | |
117 | %{__rm} $RPM_BUILD_ROOT/lib/update-burg_lib | |
118 | ||
119 | # no junk to %{_libdir}/grub (put to -devel?) | |
120 | %{__rm} $RPM_BUILD_ROOT%{_libexecdir}/*.h | |
121 | %{__rm} $RPM_BUILD_ROOT%{_libexecdir}/*.mk | |
122 | ||
123 | # core.img - bootable image generated by burg-mkimage(1) via burg-install(1) | |
124 | touch $RPM_BUILD_ROOT%{_libexecdir}/core.img | |
125 | touch $RPM_BUILD_ROOT%{_libexecdir}/device.map | |
126 | ||
127 | %clean | |
128 | rm -rf $RPM_BUILD_ROOT | |
129 | ||
130 | %post -p %{_sbindir}/postshell | |
131 | -/usr/sbin/fix-info-dir -c %{_infodir} | |
132 | ||
133 | %postun -p %{_sbindir}/postshell | |
134 | -/usr/sbin/fix-info-dir -c %{_infodir} | |
135 | ||
136 | %files | |
137 | %defattr(644,root,root,755) | |
138 | %doc AUTHORS NEWS README THANKS TODO | |
139 | %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/burg | |
140 | %attr(755,root,root) %{_sbindir}/burg-adduser | |
141 | %attr(755,root,root) %{_sbindir}/burg-bin2h | |
142 | %attr(755,root,root) %{_sbindir}/burg-deluser | |
143 | %attr(755,root,root) %{_sbindir}/burg-editenv | |
144 | %attr(755,root,root) %{_sbindir}/burg-fstest | |
145 | %attr(755,root,root) %{_sbindir}/burg-install | |
146 | %attr(755,root,root) %{_sbindir}/burg-mkconfig | |
147 | %attr(755,root,root) %{_sbindir}/burg-mkelfimage | |
148 | %attr(755,root,root) %{_sbindir}/burg-mkfont | |
149 | %attr(755,root,root) %{_sbindir}/burg-mkimg | |
150 | %attr(755,root,root) %{_sbindir}/burg-mkisofs | |
151 | %attr(755,root,root) %{_sbindir}/burg-mkmod | |
152 | %attr(755,root,root) %{_sbindir}/burg-mkpasswd-pbkdf2 | |
153 | %attr(755,root,root) %{_sbindir}/burg-mkrelpath | |
154 | %attr(755,root,root) %{_sbindir}/burg-mkrescue | |
155 | %attr(755,root,root) %{_sbindir}/burg-objdump | |
156 | %attr(755,root,root) %{_sbindir}/burg-reboot | |
157 | %attr(755,root,root) %{_sbindir}/burg-script-check | |
158 | %attr(755,root,root) %{_sbindir}/burg-set-default | |
159 | %attr(755,root,root) %{_sbindir}/burg-symdb | |
160 | %ifarch %{ix86} %{x8664} | |
161 | %attr(755,root,root) %{_sbindir}/burg-mkimage | |
162 | %{_mandir}/man1/burg-mkimage.1* | |
163 | %else | |
164 | %attr(755,root,root) %{_sbindir}/burg-probe | |
165 | %attr(755,root,root) %{_sbindir}/burg-mkdevicemap | |
166 | %{_mandir}/man8/burg-probe.8* | |
167 | %{_mandir}/man8/burg-mkdevicemap.8* | |
168 | %endif | |
169 | %{_mandir}/man1/burg-bin2h.1* | |
170 | %{_mandir}/man1/burg-editenv.1* | |
171 | %{_mandir}/man1/burg-fstest.1* | |
172 | %{_mandir}/man1/burg-mkelfimage.1* | |
173 | %{_mandir}/man1/burg-mkfont.1* | |
174 | %{_mandir}/man1/burg-mkimg.1* | |
175 | %{_mandir}/man1/burg-mkisofs.1* | |
176 | %{_mandir}/man1/burg-mkmod.1* | |
177 | %{_mandir}/man1/burg-mkpasswd-pbkdf2.1* | |
178 | %{_mandir}/man1/burg-mkrelpath.1* | |
179 | %{_mandir}/man1/burg-mkrescue.1* | |
180 | %{_mandir}/man1/burg-objdump.1* | |
181 | %{_mandir}/man1/burg-script-check.1* | |
182 | %{_mandir}/man1/burg-symdb.1* | |
183 | %{_mandir}/man8/burg-adduser.8* | |
184 | %{_mandir}/man8/burg-deluser.8* | |
185 | %{_mandir}/man8/burg-install.8* | |
186 | %{_mandir}/man8/burg-mkconfig.8* | |
187 | %{_mandir}/man8/burg-reboot.8* | |
188 | %{_mandir}/man8/burg-set-default.8* | |
189 | %if %{with burgemu} | |
190 | %attr(755,root,root) %{_sbindir}/burg-emu | |
191 | %{_mandir}/man8/burg-emu.8* | |
192 | %endif | |
193 | /lib/burg-mkconfig_lib | |
194 | ||
195 | %dir %{_libexecdir} | |
196 | %config(noreplace) %verify(not md5 mtime size) %{_libexecdir}/grub.cfg | |
197 | %{_libexecdir}/*.mod | |
198 | %{_libexecdir}/*.lst | |
199 | %ifarch %{ix86} %{x8664} sparc sparc64 | |
200 | %{_libexecdir}%{_libdir}.img | |
201 | %{_libexecdir}/cdboot.img | |
202 | %{_libexecdir}/diskboot.img | |
203 | %{_libexecdir}/lnxboot.img | |
204 | %{_libexecdir}/pxeboot.img | |
205 | %endif | |
206 | ||
207 | # generated by grub at runtime | |
208 | %ghost %{_libexecdir}/device.map | |
209 | %ghost %{_libexecdir}/core.img | |
210 | ||
211 | %dir /lib/burg.d | |
212 | %doc /lib/burg.d/README | |
213 | %attr(755,root,root) /lib/burg.d/00_header | |
214 | %attr(755,root,root) /lib/burg.d/10_linux | |
215 | %attr(755,root,root) /lib/burg.d/30_os-prober | |
216 | %attr(755,root,root) /lib/burg.d/40_custom | |
217 | ||
218 | %dir %attr(750,root,root) %{_sysconfdir}/burg.d | |
219 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/burg.d/custom.cfg | |
220 | ||
221 | %ifarch %{ix86} %{x8664} | |
222 | %attr(755,root,root) %{_sbindir}/burg-mkdevicemap | |
223 | %attr(755,root,root) %{_sbindir}/burg-probe | |
224 | %attr(755,root,root) %{_sbindir}/burg-setup | |
225 | %{_mandir}/man8/burg-mkdevicemap.8* | |
226 | %{_mandir}/man8/burg-probe.8* | |
227 | %{_mandir}/man8/burg-setup.8* | |
228 | %endif | |
229 | ||
230 | %{_infodir}/burg*.info* |