source: projects/specs/trunk/a/acpica-tools/acpica-tools-vl.spec @ 8809

Revision 8809, 13.1 KB checked in by daisuke, 10 years ago (diff)

acpica-tools: new package (replace iasl)

Line 
1Name:           acpica-tools
2Version:        20140424
3Release:        1%{?_dist_release}
4Summary:        ACPICA tools for the development and debug of ACPI tables
5
6Group:          Development/Languages
7License:        GPLv2
8URL:            https://www.acpica.org/
9
10Source0:        https://acpica.org/sites/acpica/files/acpica-unix2-%{version}.tar.gz
11Source1:        https://acpica.org/sites/acpica/files/acpitests-unix-%{version}.tar.gz
12Source2:        README.Fedora
13Source3:        iasl.1
14Source4:        acpibin.1
15Source5:        acpidump.1
16Source6:        acpiexec.1
17Source7:        acpihelp.1
18Source8:        acpinames.1
19Source9:        acpisrc.1
20Source10:       acpixtract.1
21Source11:       badcode.asl.result
22Source12:       grammar.asl.result
23Source13:       run-misc-tests.sh
24Source14:       COPYING
25
26Patch0:         debian-big_endian.patch
27Patch1:         debian-unaligned.patch
28Patch2:         name-miscompare.patch
29Patch3:         aapits-linux.patch
30Patch4:         asllookup-miscompare.patch
31Patch5:         aapits-makefile.patch
32Patch6:         re-enable-big-endian.patch
33
34BuildRequires:  bison patchutils flex
35
36# The previous iasl package contained only a very small subset of these tools
37# and it produced only the iasl package listed below; further, the pmtools
38# package -- which provides acpidump -- also provides a /usr/sbin/acpixtract
39# that we don't really want to collide with
40Provides:       acpixtract >= 20120913-7
41Provides:       iasl = %{version}-%{release}
42Obsoletes:      iasl < 20120913-8
43
44# The pmtools package provides an obsolete and deprecated version of the
45# acpidump command from lesswatts.org which has now been taken off-line.
46# ACPICA, however, is providing a new version and we again do not want to
47# conflict with the command name.
48Provides:       acpidump >= 20100513-5
49Provides:       pmtools = %{version}-%{release}
50Obsoletes:      pmtools < 20100513-6
51
52%description
53The ACPI Component Architecture (ACPICA) project provides an OS-independent
54reference implementation of the Advanced Configuration and Power Interface
55Specification (ACPI).  ACPICA code contains those portions of ACPI meant to
56be directly integrated into the host OS as a kernel-resident subsystem, and
57a small set of tools to assist in developing and debugging ACPI tables.
58
59This package contains only the user-space tools needed for ACPI table
60development, not the kernel implementation of ACPI.  The following commands
61are installed:
62   -- iasl: compiles ASL (ACPI Source Language) into AML (ACPI Machine
63      Language), suitable for inclusion as a DSDT in system firmware.
64      It also can disassemble AML, for debugging purposes.
65   -- acpibin: performs basic operations on binary AML files (e.g.,
66      comparison, data extraction)
67   -- acpidump: write out the current contents of ACPI tables
68   -- acpiexec: simulate AML execution in order to debug method definitions
69   -- acpihelp: display help messages describing ASL keywords and op-codes
70   -- acpinames: display complete ACPI name space from input AML
71   -- acpisrc: manipulate the ACPICA source tree and format source files
72      for specific environments
73   -- acpixtract: extract binary ACPI tables from acpidump output (see
74      also the pmtools package)
75
76This version of the tools is being released under GPLv2 license.
77
78%prep
79%setup -q -n acpica-unix2-%{version}
80%setup -q -T -D -a 1 -n acpica-unix2-%{version}
81gzip -dc %{SOURCE1} | tar -x --strip-components=1 -f -
82
83%patch0 -p1 -b .debian-big_endian
84%patch1 -p1 -b .debian-unaligned
85%patch2 -p1 -b .name-miscompare
86%patch3 -p1 -b .aapits-linux
87%patch4 -p1 -b .asllookup-miscompare
88%patch5 -p1 -b .aapits-makefile
89%patch6 -p1 -b .re-enable-big-endian
90
91cp -p %{SOURCE2} README.Fedora
92cp -p %{SOURCE3} iasl.1
93cp -p %{SOURCE4} acpibin.1
94cp -p %{SOURCE5} acpidump.1
95cp -p %{SOURCE6} acpiexec.1
96cp -p %{SOURCE7} acpihelp.1
97cp -p %{SOURCE8} acpinames.1
98cp -p %{SOURCE9} acpisrc.1
99cp -p %{SOURCE10} acpixtract.1
100cp -p %{SOURCE11} badcode.asl.result
101cp -p %{SOURCE12} grammar.asl.result
102cp -p %{SOURCE13} tests/run-misc-tests.sh
103chmod a+x tests/run-misc-tests.sh
104cp -p %{SOURCE14} COPYING
105
106# spurious executable permissions on text files in upstream
107chmod a-x changes.txt
108chmod a-x source/compiler/new_table.txt
109
110
111%build
112make OPT_CFLAGS="%{optflags}"
113
114
115%install
116# Install the binaries
117mkdir -p %{buildroot}%{_bindir}
118install -pD generate/unix/bin*/* %{buildroot}%{_bindir}/
119mv %{buildroot}%{_bindir}/acpidump %{buildroot}%{_bindir}/acpidump-acpica
120mv %{buildroot}%{_bindir}/acpixtract %{buildroot}%{_bindir}/acpixtract-acpica
121
122# Install the man pages
123mkdir -p %{buildroot}%{_mandir}/man1
124install -pDm 0644 -p -D *.1 %{buildroot}%{_mandir}/man1/
125mv %{buildroot}%{_mandir}/man1/acpixtract.1 \
126   %{buildroot}%{_mandir}/man1/acpixtract-acpica.1
127mv %{buildroot}%{_mandir}/man1/acpidump.1 \
128   %{buildroot}%{_mandir}/man1/acpidump-acpica.1
129
130%check
131cd tests
132
133# ASL tests
134./aslts.sh                         # relies on non-zero exit
135[ $? -eq 0 ] || exit 1
136
137# API tests
138cd aapits
139make
140cd asl
141ASL=%{buildroot}%{_bindir}/iasl make
142cd ../bin
143./aapitsrun
144[ $? -eq 0 ] || exit 1
145cd ../..
146
147# misc tests
148./run-misc-tests.sh %{buildroot}%{_bindir} %{version}
149
150# Template tests
151cd templates
152make
153if [ -f diff.log ]
154then
155    if [ -s diff.log ]
156    then
157        exit 1                  # implies errors occurred
158    fi
159fi
160cd ..
161
162
163%post
164alternatives --install %{_bindir}/acpixtract acpixtract \
165                       %{_bindir}/acpixtract-acpica 120 \
166               --slave %{_mandir}/man1/acpixtract.1.gz acpixtract.1.gz \
167                       %{_mandir}/man1/acpixtract-acpica.1.gz
168
169alternatives --install %{_bindir}/acpidump acpidump \
170                       %{_bindir}/acpidump-acpica 120 \
171               --slave %{_mandir}/man1/acpidump.1.gz acpidump.1.gz \
172                       %{_mandir}/man1/acpidump-acpica.1.gz
173
174
175%postun
176if [ ! -e %{_bindir}/acpixtract-acpica ]
177then
178    alternatives --remove acpixtract %{_bindir}/acpixtract-acpica
179fi
180if [ ! -e %{_bindir}/acpidump-acpica ]
181then
182    alternatives --remove acpidump %{_bindir}/acpidump-acpica
183fi
184
185
186%files
187%doc changes.txt source/compiler/new_table.txt
188%doc README.Fedora COPYING
189%{_bindir}/*
190%{_mandir}/*/*
191
192
193%changelog
194* Sun Jul 13 2014 Daisuke SUZUKI <daisuke@vinelinux.org> 20140424-1
195- initial build for Vine Linux
196
197* Fri Jun 6 2014 Dan Horák <dan[at]danny.cz> - 20140424-3
198- refresh the big endian patch so it applies correctly, fixes build on big endians
199
200* Thu May 22 2014 Al Stone <ahs3@redhat.com> - 20140424-2
201- Add ppc64le as a 64-bit arch in run-misc-tests.sh.  Closes BZ#1098614.
202- Re-enable big-endian support in iasl.
203
204* Wed May 7 2014 Al Stone <ahs3@redhat.com> - 20140424-1
205- Update to latest upstream.  Closes BZ#1091189.
206
207* Fri Apr 4 2014 Al Stone <ahs3@redhat.com> - 20140325-1
208- Update to latest upstream.  Closes BZ#1080791.
209- Incorporated patch to fix broken symlinks.  Closes BZ#1074256.
210- Add patch to fix missing .o files in aapits tests.
211
212* Wed Feb 26 2014 Al Stone <ahs3@redhat.com> - 20140214-1
213- Update to latest upstream.  Closes BZ#1053396.
214- Remove temporary patch so that AAPITS will build and run.
215- Add patch to print asllookup.c warning properly on big endian;
216  Closes BZ#1069178.
217
218* Tue Jan 21 2014 Al Stone <ahs3@redhat.com> - 20140114-1
219- Update to latest upstream.  Closes BZ#1053396.
220- Remove temporary patch to add Makefile missing from upstream tarball.
221- Add temporary patch so that AAPITS will build and run.
222
223* Tue Jan 7 2014 Al Stone <ahs3@redhat.com> - 20131218-1
224- Update to latest upstream.  Closes BZ#1044951.
225- Add temporary patch to add Makefile missing from upstream tarball.
226
227* Mon Nov 25 2013 Al Stone <ahs3@redhat.com> - 20131115-1
228- Update to latest upstream.  Closes BZ#1031255.
229- Add a little code to workaround build problems that can occur (the tests
230  will fail) when a build starts before midnight, but ends after midnight
231- Remove patch to include Makefile.config that was missing from tarball.
232
233* Wed Oct 09 2013 Al Stone <ahs3@redhat.com> - 20130927-1
234- Update to latest upstream.  Closes BZ#1013090.
235- Add temporary patch to include Makefile.config being missing from tarball.
236
237* Fri Sep 13 2013 Michael Schwendt <mschwendt@fedoraproject.org> - 20130823-5
238- correct iasl obs_ver
239
240* Tue Sep 10 2013 Dean Nelson <dnelson@redhat.com> - 20130823-4
241- Fix run-misc-tests.sh script to properly set the number of BITS to 64
242  when run on a s390x system.
243
244* Tue Sep 10 2013 Michael Schwendt <mschwendt@fedoraproject.org> - 20130823-3
245- correct pmtools obs_ver
246
247* Tue Aug 27 2013 Al Stone <ahs3@redhat.com> - 20130823-2
248- Add in a copy of the GPLv2 text in order to comply with the requirement
249  to always redistribute the terms of the license.
250
251* Mon Aug 26 2013 Al Stone <ahs3@redhat.com> - 20130823-1
252- Update to latest upstream source.
253
254* Tue Aug 20 2013 Al Stone <ahs3@redhat.com> - 20130725-2
255- Fix several rpmlint items (listed below)
256- Add versions to explicit provides for acpixtract, acpidump
257- Not all setup steps used -q
258- Setup executable test script (run-misc-tests.sh) differently
259- Removed unneeded commented out line with macros in it
260- Removed mixed use of spaces and tabs (all spaces now)
261- Corrected source URLs (upstream moved)
262
263* Sun Aug 18 2013 Al Stone <ahs3@redhat.com> - 20130725-1
264- Update to latest upstream source.
265
266* Wed Jul 24 2013 Al Stone <ahs3@redhat.com> - 20130626-1
267- Update to latest upstream source.
268- Move acpidump to acpidump-acpica so it be an alternative properly
269- Add basic man page for acpidump
270- Enable use of AAPITS tests during the check step
271
272* Sun Jun 02 2013 Al Stone <ahs3@redhat.com> - 20130517-2
273- Correct an oversight: we provide an acpidump in conflict with the
274  version in pmtools (which appears to be dead upstream) but had not
275  made it an alternative before
276
277* Tue May 28 2013 Al Stone <ahs3@redhat.com> - 20130517-1
278- Update to latest upstream source.
279- Remove acpica-tools-config.patch -- now in upstream
280- Remove iasl-signed-char.patch -- now in upstream
281- Updated debian-big_endian.patch
282- Updated debian-unaligned.patch
283
284* Mon May 13 2013 Al Stone <ahs3@redhat.com> - 20130328-1
285- Update to latest upstream source.
286
287* Wed Mar 20 2013 Al Stone <ahs3@redhat.com> - 20130214-2
288- Incorporate use of optflags macro in the build.
289- Remove extraneous rm -rf of buildroot.
290- Remove extraneous use of defattr in the files section.
291- Incorporate use of parallel make.
292- Remove extraneous use of the clean section.
293- Use simpler globbing in the files section.
294- Use simpler globbing in the install section.
295- Remove obsolete git notes from README.Fedora.
296- Remove ExcludeArch restrictions.
297
298* Mon Feb 18 2013 Al Stone <ahs3@redhat.com> - 20130214-1
299- New upstream.
300- Remove most of the config file patch; still need to remove -m{32,64}.
301- Clarify the licensing; this source is dual-licensed and is being released
302  under the GPLv2 as allowed by the original Intel license.
303- Redo the misc tests so they compare results properly.
304
305* Wed Feb 06 2013 Al Stone <ahs3@redhat.com> - 20130117-6
306- Added a zero-fill to a date used in comparing testing results so that the
307  comparison would be correct on days numbered < 10.
308
309* Thu Jan 31 2013 Al Stone <ahs3@redhat.com> - 20130117-5
310- Simplify versioning scheme and revert to the original scheme in use by
311  iasl, which is use the latest official tarball date (2013017) as the
312  version and 1%{?dist} as the release, to be incremented for packaging
313  and bug fixes as needed.
314
315* Wed Jan 30 2013 Al Stone <ahs3@redhat.com> - 20130117-4
316- Do a little reset: go back to using just the original upstream tarball
317  instead of the latest git; the snapshot approach was more complicated
318  than needed.
319- Upstream tarballs split commands from test suites, so had to add the
320  test suite back in as another Source: file.
321- Change versioning scheme to include the APCI specification level (5.0),
322  the latest official tarball date (2013017) and a revision level  (the
323  .1 at the end) for packaging and bug fixes as needed.
324- Changed the License field to reflect the source tarball change; the release
325  tarball is dual-licensed, Intel ACPI or GPLv2.
326- Updated patches to apply cleanly as needed.
327- Corrected Obsoletes and Provides version numbers.
328
329* Mon Jan 28 2013 Al Stone <ahs3@redhat.com> - 20130117-3
330- Reconcile Fedora and Debian patches to be as alike as possible
331
332* Mon Jan 28 2013 Al Stone <ahs3@redhat.com> - 20130117-2
333- Verify ExcludeArch restrictions -- the architectures excluded can have
334  no use for these tools.  Hardware support for ACPI is simply not
335  implemented for them.
336- Corrected versioning to note this source came from a git pull.
337- Add License file as upstream has not yet provided one (and has not for
338  many years).
339- Insert properly versioned Provides and Obsoletes for iasl.
340- Corrected files to use man.1* (vs man.1.gz) to allow flexibility in the
341  compression being used.
342
343* Wed Jan 23 2013 Al Stone <ahs3@redhat.com> - 20130117-1
344- Clone from the current iasl package, with the intent of replacing it
345- Update source to latest upstream
346- NB: ACPICA documentation would normally be included in a source tarball.
347  But, since it is not clearly redistributable, it is not included in the
348  source RPM for this package.
349- Build all ACPICA tools, not just iasl (and hence the package replacement)
350- Add in brief man pages
351- Set up acpixtract from this package as an alternative to the same command
352  in the pmtools package
353- Run the check step once built
354
Note: See TracBrowser for help on using the repository browser.