[packages/binutils-gasp] - last version of binutils before gasp removal (2.13.2.1a) - added info patch from PLD binutils pack

qboosh qboosh at pld-linux.org
Tue Sep 27 20:44:38 CEST 2022


commit cb464f98e23ab969c5c5bd1d8b3fb2c91cdbee6b
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date:   Tue Sep 27 20:44:55 2022 +0200

    - last version of binutils before gasp removal (2.13.2.1a)
    - added info patch from PLD binutils package from that era
    - added relax_type patch to allow build with modern compiler
    - epoch 5 to replace binutils-gasp built from binutils 4:2.38

 binutils-gasp.spec        |  88 +++++++++++++++++++++++
 binutils-info.patch       | 176 ++++++++++++++++++++++++++++++++++++++++++++++
 binutils-relax_type.patch |  50 +++++++++++++
 3 files changed, 314 insertions(+)
---
diff --git a/binutils-gasp.spec b/binutils-gasp.spec
new file mode 100644
index 0000000..5e004f4
--- /dev/null
+++ b/binutils-gasp.spec
@@ -0,0 +1,88 @@
+Summary:	GASP - old preprocessor for assembly programs
+Summary(pl.UTF-8):	GASP - stary preprocesor dla programów w asemblerze
+Name:		binutils-gasp
+Version:	2.13.2.1a
+Release:	1
+Epoch:		5
+License:	GPL v3+
+Group:		Development/Tools
+Source0:	https://ftp.gnu.org/gnu/binutils/binutils-%{version}.tar.bz2
+# Source0-md5:	aeb6464c6e3584edc021f7a552ec4fbd
+Patch0:		binutils-info.patch
+Patch1:		binutils-relax_type.patch
+URL:		http://www.sourceware.org/binutils/
+BuildRequires:	bison
+BuildRequires:	flex
+BuildRequires:	gettext-tools
+BuildRequires:	perl-tools-pod
+BuildRequires:	pkgconfig
+BuildRequires:	rpmbuild(macros) >= 1.527
+%ifarch sparc sparc32
+BuildRequires:	sparc32
+%endif
+BuildRequires:	texinfo >= 4.2
+BuildRequires:	zlib-devel
+BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+
+%description
+GASP - old preprocessor for assembly programs. It's officially
+obsoleted, but it's still needed to build some packages.
+
+%description -l pl.UTF-8
+GASP - stary preprocesor dla programów w asemblerze. Jest oficjalnie
+uznany za przestarzały, ale jest nadal potrzebny do zbudowania
+niektórych pakietów.
+
+%prep
+%setup -q -n binutils-2.13.2.1
+%patch0 -p1
+%patch1 -p1
+
+%build
+cp -f /usr/share/automake/config.* .
+CFLAGS="%{rpmcflags}"; export CFLAGS
+CC="%{__cc}"; export CC
+%ifarch sparc
+sparc32 \
+%endif
+./configure %{_target_platform} \
+	--prefix=%{_prefix} \
+	--libdir=%{_libdir} \
+	--infodir=%{_infodir} \
+	--mandir=%{_mandir} \
+	--sysconfdir=%{_sysconfdir} \
+	--disable-debug \
+	--disable-silent-rules \
+	--disable-werror \
+%ifarch sparc
+	--enable-64-bit-bfd \
+%endif
+	--enable-build-warnings=,-Wno-missing-prototypes \
+	--with-tooldir=%{_prefix} \
+	--with-zlib
+
+%{__make} -C libiberty
+%{__make} -C bfd
+%{__make} -C gas gasp-new
+%{__make} -C gas/doc gasp.info
+
+%install
+rm -rf $RPM_BUILD_ROOT
+install -d $RPM_BUILD_ROOT{%{_bindir},%{_infodir}}
+
+install gas/gasp-new $RPM_BUILD_ROOT%{_bindir}/gasp
+cp -p gas/doc/gasp.info* $RPM_BUILD_ROOT%{_infodir}
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+%post	-p /sbin/postshell
+-/usr/sbin/fix-info-dir -c %{_infodir}
+
+%postun	-p /sbin/postshell
+-/usr/sbin/fix-info-dir -c %{_infodir}
+
+%files
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_bindir}/gasp
+%{_infodir}/gasp.info*
diff --git a/binutils-info.patch b/binutils-info.patch
new file mode 100644
index 0000000..9df3bf9
--- /dev/null
+++ b/binutils-info.patch
@@ -0,0 +1,176 @@
+diff -urN binutils-2.12.90.0.1.org/bfd/doc/bfd.texinfo binutils-2.12.90.0.1/bfd/doc/bfd.texinfo
+--- binutils-2.12.90.0.1.org/bfd/doc/bfd.texinfo	Mon Mar 11 22:37:36 2002
++++ binutils-2.12.90.0.1/bfd/doc/bfd.texinfo	Mon Mar 11 22:37:52 2002
+@@ -21,9 +21,10 @@
+ 
+ @ifinfo
+ @format
+-START-INFO-DIR-ENTRY
+-* Bfd: (bfd).                   The Binary File Descriptor library.
+-END-INFO-DIR-ENTRY
++ at dircategory Programming tools:
++ at direntry
++* Bfd: (bfd).				The Binary File Descriptor library
++ at end direntry
+ @end format
+ @end ifinfo
+ 
+diff -urN binutils-2.12.90.0.1.org/binutils/doc/binutils.texi binutils-2.12.90.0.1/binutils/doc/binutils.texi
+--- binutils-2.12.90.0.1.org/binutils/doc/binutils.texi	Mon Mar 11 22:37:37 2002
++++ binutils-2.12.90.0.1/binutils/doc/binutils.texi	Mon Mar 11 22:37:52 2002
+@@ -6,24 +6,26 @@
+ 
+ @ifinfo
+ @format
+-START-INFO-DIR-ENTRY
+-* Binutils: (binutils).         The GNU binary utilities.
+-* ar: (binutils)ar.               Create, modify, and extract from archives
+-* nm: (binutils)nm.               List symbols from object files
+-* objcopy: (binutils)objcopy.	  Copy and translate object files
+-* objdump: (binutils)objdump.     Display information from object files
+-* ranlib: (binutils)ranlib.       Generate index to archive contents
+-* readelf: (binutils)readelf.	  Display the contents of ELF format files.
+-* size: (binutils)size.           List section sizes and total size
+-* strings: (binutils)strings.     List printable strings from files
+-* strip: (binutils)strip.         Discard symbols
+-* c++filt: (binutils)c++filt.	  Filter to demangle encoded C++ symbols
+-* cxxfilt: (binutils)c++filt.     MS-DOS name for c++filt
+-* addr2line: (binutils)addr2line. Convert addresses to file and line
+-* nlmconv: (binutils)nlmconv.     Converts object code into an NLM
+-* windres: (binutils)windres.	  Manipulate Windows resources
+-* dlltool: (binutils)dlltool.	  Create files needed to build and use DLLs
+-END-INFO-DIR-ENTRY
++ at dircategory Programming tools:
++ at direntry
++* Binutils: (binutils).			The GNU binary utilities
++* ar: (binutils)ar.			Create, modify and extract from archives
++* nm: (binutils)nm.			List symbols from object files
++* objcopy: (binutils)objcopy.		Copy and translate object files
++* objdump: (binutils)objdump.		Display information from object files
++* ranlib: (binutils)ranlib.		Generate index to archive contents
++* readelf: (binutils)readelf.		Display the contents of ELF format files
++* size: (binutils)size.			List section sizes and total size
++* strings: (binutils)strings.		List printable strings from files
++* strip: (binutils)strip.		Discard symbols
++* c++filt: (binutils)c++filt.		Filter to demangle encoded C++ symbols
++* cxxfilt: (binutils)c++filt.		MS-DOS name for c++filt
++* addr2line: (binutils)addr2line.	Convert addresses to file and line
++* nlmconv: (binutils)nlmconv.		Converts object code into an NLM
++* windres: (binutils)windres.		Manipulate Windows resources
++* dlltool: (binutils)dlltool.		Create files needed to 
++					build and use DLLs
++ at end direntry
+ @end format
+ @end ifinfo
+ 
+diff -urN binutils-2.12.90.0.1.org/etc/configure.texi binutils-2.12.90.0.1/etc/configure.texi
+--- binutils-2.12.90.0.1.org/etc/configure.texi	Mon Mar 11 22:37:37 2002
++++ binutils-2.12.90.0.1/etc/configure.texi	Mon Mar 11 22:37:52 2002
+@@ -5,9 +5,9 @@
+ @setchapternewpage off
+ @c %**end of header
+ 
+- at dircategory GNU admin
++ at dircategory Programming tools:
+ @direntry
+-* configure: (configure).	The GNU configure and build system
++* configure: (configure).		The GNU configure and build system
+ @end direntry
+ 
+ @ifinfo
+diff -urN binutils-2.12.90.0.1.org/etc/standards.texi binutils-2.12.90.0.1/etc/standards.texi
+--- binutils-2.12.90.0.1.org/etc/standards.texi	Mon Mar 11 22:37:37 2002
++++ binutils-2.12.90.0.1/etc/standards.texi	Mon Mar 11 22:37:52 2002
+@@ -8,9 +8,10 @@
+ 
+ @ifinfo
+ @format
+-START-INFO-DIR-ENTRY
+-* Standards: (standards).        GNU coding standards.
+-END-INFO-DIR-ENTRY
++ at dircategory Miscellaneous:
++ at direntry
++* Standards: (standards).		GNU coding standards
++ at end direntry
+ @end format
+ @end ifinfo
+ 
+diff -urN binutils-2.12.90.0.1.org/gas/doc/as.texinfo binutils-2.12.90.0.1/gas/doc/as.texinfo
+--- binutils-2.12.90.0.1.org/gas/doc/as.texinfo	Mon Mar 11 22:37:38 2002
++++ binutils-2.12.90.0.1/gas/doc/as.texinfo	Mon Mar 11 22:40:25 2002
+@@ -117,10 +117,11 @@
+ 
+ @ifinfo
+ @format
+-START-INFO-DIR-ENTRY
+-* As: (as).                     The GNU assembler.
+-* Gas: (as).                    The GNU assembler.
+-END-INFO-DIR-ENTRY
++ at dircategory Programming tools:
++ at direntry
++* As: (as).				The GNU assembler
++* Gas: (as).				The GNU assembler
++ at end direntry
+ @end format
+ @end ifinfo
+ 
+diff -urN binutils-2.12.90.0.1.org/gas/doc/gasp.texi binutils-2.12.90.0.1/gas/doc/gasp.texi
+--- binutils-2.12.90.0.1.org/gas/doc/gasp.texi	Mon Mar 11 22:37:38 2002
++++ binutils-2.12.90.0.1/gas/doc/gasp.texi	Mon Mar 11 22:37:52 2002
+@@ -14,9 +14,10 @@
+ 
+ @ifinfo
+ @format
+-START-INFO-DIR-ENTRY
+-* gasp: (gasp).                     The GNU Assembler Preprocessor
+-END-INFO-DIR-ENTRY
++ at dircategory Programming tools:
++ at direntry
++* gasp: (gasp).				The GNU Assembler Preprocessor
++ at end direntry
+ @end format
+ @end ifinfo
+ 
+diff -urN binutils-2.12.90.0.1.org/gprof/gprof.texi binutils-2.12.90.0.1/gprof/gprof.texi
+--- binutils-2.12.90.0.1.org/gprof/gprof.texi	Mon Mar 11 22:37:40 2002
++++ binutils-2.12.90.0.1/gprof/gprof.texi	Mon Mar 11 22:37:52 2002
+@@ -9,9 +9,10 @@
+ @c This is a dir.info fragment to support semi-automated addition of
+ @c manuals to an info tree.  zoo at cygnus.com is developing this facility.
+ @format
+-START-INFO-DIR-ENTRY
+-* gprof: (gprof).                Profiling your program's execution
+-END-INFO-DIR-ENTRY
++ at dircategory Programming tools:
++ at direntry
++* gprof: (gprof).			Profiling your program's execution
++ at end direntry
+ @end format
+ @end ifinfo
+ 
+diff -urN binutils-2.12.90.0.1.org/ld/ld.texinfo binutils-2.12.90.0.1/ld/ld.texinfo
+--- binutils-2.12.90.0.1.org/ld/ld.texinfo	Mon Mar 11 22:37:41 2002
++++ binutils-2.12.90.0.1/ld/ld.texinfo	Mon Mar 11 22:37:52 2002
+@@ -48,9 +48,10 @@
+ 
+ @ifinfo
+ @format
+-START-INFO-DIR-ENTRY
+-* Ld: (ld).                       The GNU linker.
+-END-INFO-DIR-ENTRY
++ at dircategory Programming tools:
++ at direntry
++* Ld: (ld).				The GNU linker
++ at end direntry
+ @end format
+ @end ifinfo
+ 
+@@ -4590,7 +4591,7 @@
+ @node BFD outline
+ @section How it works: an outline of BFD
+ @cindex opening object files
+- at include bfdsumm.texi
++ at include ../bfd/doc/bfdsumm.texi
+ @end ifclear
+ 
+ @node Reporting Bugs
diff --git a/binutils-relax_type.patch b/binutils-relax_type.patch
new file mode 100644
index 0000000..658fdc4
--- /dev/null
+++ b/binutils-relax_type.patch
@@ -0,0 +1,50 @@
+--- binutils-2.13.2.1/gas/tc.h.orig	2001-11-15 22:28:53.000000000 +0100
++++ binutils-2.13.2.1/gas/tc.h	2022-09-27 19:58:57.525827655 +0200
+@@ -27,22 +27,6 @@ extern const pseudo_typeS md_pseudo_tabl
+ /* JF moved this here from as.h under the theory that nobody except MACHINE.c
+    and write.c care about it anyway.  */
+ 
+-struct relax_type
+-{
+-  /* Forward reach. Signed number. > 0.  */
+-  long rlx_forward;
+-  /* Backward reach. Signed number. < 0.  */
+-  long rlx_backward;
+-
+-  /* Bytes length of this address.  */
+-  unsigned char rlx_length;
+-
+-  /* Next longer relax-state.  0 means there is no 'next' relax-state.  */
+-  relax_substateT rlx_more;
+-};
+-
+-typedef struct relax_type relax_typeS;
+-
+ extern const int md_reloc_size;	/* Size of a relocation record */
+ 
+ char *md_atof PARAMS ((int what_statement_type, char *literalP, int *sizeP));
+--- binutils-2.13.2.1/gas/as.h.orig	2002-07-14 03:14:19.000000000 +0200
++++ binutils-2.13.2.1/gas/as.h	2022-09-27 19:58:58.979153115 +0200
+@@ -397,6 +397,22 @@ typedef unsigned int relax_substateT;
+ /* Enough bits for address, but still an integer type.
+    Could be a problem, cross-assembling for 64-bit machines.  */
+ typedef addressT relax_addressT;
++
++struct relax_type
++{
++  /* Forward reach. Signed number. > 0.  */
++  long rlx_forward;
++  /* Backward reach. Signed number. < 0.  */
++  long rlx_backward;
++
++  /* Bytes length of this address.  */
++  unsigned char rlx_length;
++
++  /* Next longer relax-state.  0 means there is no 'next' relax-state.  */
++  relax_substateT rlx_more;
++};
++
++typedef struct relax_type relax_typeS;
+ 

+ /* main program "as.c" (command arguments etc) */
+ 
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/binutils-gasp.git/commitdiff/cb464f98e23ab969c5c5bd1d8b3fb2c91cdbee6b



More information about the pld-cvs-commit mailing list