diff --git a/SOURCES/iasl-README.Fedora b/SOURCES/iasl-README.Fedora new file mode 100644 index 00000000..c55b29fc --- /dev/null +++ b/SOURCES/iasl-README.Fedora @@ -0,0 +1,6 @@ +License: http://www.intel.com/technology/iapc/acpi/license2.htm +Some documentation can be found here: http://www.intel.com/technology/iapc/acpi/downloads.htm +You can download it directly with: +wget http://www.intel.com/technology/iapc/acpi/downloads/ACPICA-ProgRef.pdf \ +http://www.intel.com/technology/iapc/acpi/downloads/AslCompiler.pdf \ +http://download.intel.com/technology/IAPC/acpi/downloads/30222305.pdf diff --git a/SOURCES/iasl-config.patch b/SOURCES/iasl-config.patch new file mode 100644 index 00000000..5e74787a --- /dev/null +++ b/SOURCES/iasl-config.patch @@ -0,0 +1,46 @@ +Remove -D_FORTIFY_SOURCE=2 because it only works with -O. Upstream +disables -O because (they claim) it leads to miscompilation. + +Remove -Wstrict-aliasing=0. If these warnings happen, they are +serious. + +Remove -Wredundant-decls. This happens several times, and is not +serious. + +Remove -m32/-m64 flags. The buildsystem is native and thus correct and -m32 doesn't work on s390. + +diff -up acpica-unix-20120913/generate/unix/Makefile.config.opts acpica-unix-20120913/generate/unix/Makefile.config +--- acpica-unix-20120913/generate/unix/Makefile.config.opts 2012-09-13 21:37:42.000000000 +0200 ++++ acpica-unix-20120913/generate/unix/Makefile.config 2012-11-23 12:23:01.000000000 +0100 +@@ -104,14 +104,10 @@ ACPICA_HEADERS = \ + # automatically included in -Wall. + # + CFLAGS += \ +- $(BITSFLAG) \ + -D$(HOST) \ + -D_GNU_SOURCE \ +- -D_FORTIFY_SOURCE=2 \ + -I$(ACPICA_INCLUDE) + +-LDFLAGS += $(BITSFLAG) +- + CWARNINGFLAGS = \ + -ansi \ + -Wall \ +@@ -121,7 +117,6 @@ CWARNINGFLAGS = \ + -Wformat=2 \ + -Wmissing-declarations \ + -Wmissing-prototypes \ +- -Wstrict-aliasing=0 \ + -Wstrict-prototypes \ + -Wswitch-default \ + -Wpointer-arith \ +@@ -142,7 +137,7 @@ CWARNINGFLAGS += \ + -Wnested-externs \ + -Wold-style-declaration \ + -Wold-style-definition \ +- -Wredundant-decls \ ++ -Wno-redundant-decls \ + -Wtype-limits + + # diff --git a/SOURCES/iasl-signed-char.patch b/SOURCES/iasl-signed-char.patch new file mode 100644 index 00000000..381e12a2 --- /dev/null +++ b/SOURCES/iasl-signed-char.patch @@ -0,0 +1,20 @@ +--- a/source/compiler/dtio.c.schar 2012-10-17 07:25:42.050504291 -0400 ++++ b/source/compiler/dtio.c 2012-10-17 07:27:14.530504054 -0400 +@@ -486,7 +486,7 @@ + UINT32 State = DT_NORMAL_TEXT; + UINT32 CurrentLineOffset; + UINT32 i; +- char c; ++ int c; + + + for (i = 0; ;) +@@ -500,7 +500,7 @@ + UtExpandLineBuffers (); + } + +- c = (char) getc (Handle); ++ c = getc (Handle); + if (c == EOF) + { + switch (State) diff --git a/SOURCES/iasl.1 b/SOURCES/iasl.1 new file mode 100644 index 00000000..000a3b81 --- /dev/null +++ b/SOURCES/iasl.1 @@ -0,0 +1,135 @@ +.\" First parameter, NAME, should be all caps +.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection +.\" other parameters are allowed: see man(7), man(1) +.TH IASL 1 "October 14, 2005" +.\" Please adjust this date whenever revising the manpage. +.\" +.\" Some roff macros, for reference: +.\" .nh disable hyphenation +.\" .hy enable hyphenation +.\" .ad l left justify +.\" .ad b justify to both left and right margins +.\" .nf disable filling +.\" .fi enable filling +.\" .br insert line break +.\" .sp insert n+1 empty lines +.\" for manpage-specific macros, see man(7) +.SH NAME +iasl \- ACPI Source Language compiler/decompiler +.SH SYNOPSIS +.B iasl +.RI [ options ] +.RI [ "input file" ] +.SH DESCRIPTION +This manual page documents briefly the +.B iasl +command. The option list is taken from the iasl interactive help. +.PP +.\" TeX users may be more comfortable with the \fB\fP and +.\" \fI\fP escape sequences to invode bold face and italics, +.\" respectively. +.B iasl +is an ASL compiler and decompiler. + +.SH OPTIONS + +.PP +.SS General Output +.TP +.B \-p +Specify filename prefix for all output files (including .aml) +.TP +.B \-vi +Less verbose errors and warnings for use with IDEs +.TP +.B \-vo +Enable optimization comments +.TP +.B \-vr +Disable remarks +.TP +.B \-vs +Disable signon + +.PP +.SS AML Output Files +.TP +.B \-s +Create AML in assembler or C source file (*.asm or *.c) +.TP +.B \-i +Create assembler or C include file (*.inc or *.h) +.TP +.B \-t +Create AML in assembler or C hex table (*.hex) + +.PP +.SS AML Code Generation +.TP +.B \-oa +Disable all optimizations (compatibility mode) +.TP +.B \-of +Disable constant folding +.TP +.B \-oi +Disable integer optimization to Zero/One/Ones +.TP +.B \-on +Disable named reference string optimization +.TP +.B \-r +Override table header Revision (1-255) + +.PP +.SS Listings +.TP +.B \-l +Create mixed listing file (ASL source and AML) (*.lst) +.TP +.B \-ln +Create namespace file (*.nsp) +.TP +.B \-ls +Create combined source file (expanded includes) (*.src) + +.PP +.SS AML Disassembler +.TP +.B \-d [file] +Disassemble AML to ASL source code file (*.dsl) +.TP +.B \-dc [file] +Disassemble AML and immediately compile it +.br +(Obtain DSDT from current system if no input file) +.TP +.B \-e +Generate External() statements for unresolved symbols +.TP +.B \-g +Get ACPI tables and write to files (*.dat) + +.PP +.SS Miscellaneous +.TP +.B \-a +Verify source file is entirely ASCII text (0x00-0x7F) + +.PP +.SS Help +.TP +.B \-h +Additional help and compiler debug options +.TP +.B \-hc +Display operators allowed in constant expressions +.TP +.B \-hr +Display ACPI reserved method names + +.SH AUTHOR +iasl was written by Robert Moore . +.PP +This manual page was written by Mattia Dongili , +for the Debian project (but may be used by others). diff --git a/SPECS/iasl.spec b/SPECS/iasl.spec new file mode 100644 index 00000000..725f5af5 --- /dev/null +++ b/SPECS/iasl.spec @@ -0,0 +1,129 @@ +Name: iasl +Version: 20120913 +Release: 8%{?dist} +Summary: Intel ASL compiler/decompiler + +Group: Development/Languages +License: Intel ACPI +URL: https://www.acpica.org/ +Source0: http://www.acpica.org/download/acpica-unix-%{version}.tar.gz +Source1: iasl-README.Fedora +Source2: iasl.1 +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) + +BuildRequires: bison patchutils flex + +# Configure. See top of patch for details. +Patch0: iasl-config.patch +Patch1: debian-big_endian.patch +Patch2: debian-unaligned.patch +Patch3: iasl-signed-char.patch + +%description +iasl compiles ASL (ACPI Source Language) into AML (ACPI Machine Language), +which is suitable for inclusion as a DSDT in system firmware. It also can +disassemble AML, for debugging purposes. + + +%prep +%setup -q -n acpica-unix-%{version} +%patch0 -p1 +%patch1 -p1 +%patch2 -p1 +%patch3 -p1 +cp -p %{SOURCE1} README.Fedora +cp -p %{SOURCE2} iasl.1 + +%build +# does not compile with %{?_smp_mflags} +make + + +%install +rm -rf $RPM_BUILD_ROOT +install -p -D generate/unix/bin*/iasl $RPM_BUILD_ROOT%{_bindir}/iasl +install -m 0644 -p -D iasl.1 $RPM_BUILD_ROOT%{_mandir}/man1/iasl.1 + + +%clean +rm -rf $RPM_BUILD_ROOT + + +%files +%defattr(-,root,root,-) +%doc changes.txt README.Fedora +%{_bindir}/iasl +%{_mandir}/man1/iasl.1.gz + + +%changelog +* Sat Aug 03 2013 Fedora Release Engineering - 20120913-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + +* Thu Feb 14 2013 Fedora Release Engineering - 20120913-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + +* Fri Nov 23 2012 Dan HorĂ¡k - 20120913-6 +- drop hardcoded -m32/-m64 flags, not needed in buildsystem and -m32 doesn't work on s390 + +* Wed Oct 17 2012 Paolo Bonzini - 20120913-5 +- Fixed debian-unaligned.patch warnings for 32-bit arches + +* Wed Oct 17 2012 Paolo Bonzini - 20120913-4 +- Incorporated Debian patches for endian-cleanliness + (http://lists.acpica.org/pipermail/devel/2010-July/000159.html); +- iasl-signed-char.patch to fix PPC -Werror build +- Resolves: #865013, #856856 + +* Thu Oct 11 2012 Richard W.M. Jones - 20120913-3 +- Update to latest upstream version (20120913). +- Fix project homepage. +- Remove the old patches, since they don't affect the new version. +- Add a configuration patch. +- Fix .gitignore file. +- Update build and install rules for new source layout. + +* Wed Oct 10 2012 Richard W.M. Jones - 20100528-6 +- Fix errors found using gcc -Wall (RHBZ#856856). + +* Thu Jul 19 2012 Fedora Release Engineering - 20100528-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Fri Jan 13 2012 Fedora Release Engineering - 20100528-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + +* Wed Feb 09 2011 Fedora Release Engineering - 20100528-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + +* Thu Jul 01 2010 Matthew Garrett - 20100528-2 +- Ship the manpage rather than pull it from a Debian diff + +* Thu Jul 01 2010 Matthew Garrett - 20100528-1 +- Update to latest upstream + +* Fri Jul 24 2009 Fedora Release Engineering - 20090123-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild + +* Tue Feb 24 2009 Fedora Release Engineering - 20090123-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild + +* Sun Feb 15 2009 Till Maas - 20090123-1 +- Update to new upstream release + +* Sat Dec 20 2008 Till Maas - 20081203-1 +- Update to new upstream release +- Update Source0 + +* Wed Feb 20 2008 Fedora Release Engineering - 20061109-4 +- Autorebuild for GCC 4.3 + +* Sat Aug 11 2007 Till Maas - 20061109-3 +- update License Tag to new Guidelines +- rebuild because of #251794 + +* Tue Feb 20 2007 Till Maas - 20061109-2 +- Make description line less than 80 instead of less that 81 characters long +- Permissions of manpage are 0644 instead of 0755 now + +* Thu Feb 01 2007 Till Maas - 20061109-1 +- initial spec for Fedora Extras