From c174e7cba420d1a2b58db6b950b1047bf7ebf17d Mon Sep 17 00:00:00 2001 From: zyppe <210hcl@gmail.com> Date: Fri, 9 Feb 2024 18:02:15 +0800 Subject: [PATCH] Initialize for linux-atm --- .gitignore | 1 + .linux-atm.metadata | 1 + fix-build-after-y2038-changes-in-glibc.patch | 34 ++++++++ linux-atm-2.5.2-fix-header-conflict.patch | 12 +++ ...-atm-2.5.2-remove-headers-crude-hack.patch | 48 +++++++++++ linux-atm-2.5.2_fdleak.patch | 29 +++++++ linux-atm-2.5.2_implicit-fortify-decl.patch | 10 +++ linux-atm.changes | 65 +++++++++++++++ linux-atm.spec | 81 +++++++++++++++++++ 9 files changed, 281 insertions(+) create mode 100644 .gitignore create mode 100644 .linux-atm.metadata create mode 100644 fix-build-after-y2038-changes-in-glibc.patch create mode 100644 linux-atm-2.5.2-fix-header-conflict.patch create mode 100644 linux-atm-2.5.2-remove-headers-crude-hack.patch create mode 100644 linux-atm-2.5.2_fdleak.patch create mode 100644 linux-atm-2.5.2_implicit-fortify-decl.patch create mode 100644 linux-atm.changes create mode 100644 linux-atm.spec diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..ffae50e --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +linux-atm-2.5.2.tar.gz diff --git a/.linux-atm.metadata b/.linux-atm.metadata new file mode 100644 index 0000000..84a0975 --- /dev/null +++ b/.linux-atm.metadata @@ -0,0 +1 @@ +426e10118cea3ad75bced36807191b695d2e54044068d5a075a707f86542627b linux-atm-2.5.2.tar.gz diff --git a/fix-build-after-y2038-changes-in-glibc.patch b/fix-build-after-y2038-changes-in-glibc.patch new file mode 100644 index 0000000..cb2b3ee --- /dev/null +++ b/fix-build-after-y2038-changes-in-glibc.patch @@ -0,0 +1,34 @@ +From: Bastien Nocera +Date: Fri, 7 Jun 2019 09:51:33 +0200 +Subject: fix build after y2038 changes in glibc +Patch-mainline: upstream seems to be dead + +SIOCGSTAMP is now defined in linux/sockios.h. Include that file wherever +needed. + +Signed-off-by: Jiri Slaby +--- + src/maint/atmdump.c | 1 + + src/maint/saaldump.c | 1 + + 2 files changed, 2 insertions(+) + +--- a/src/maint/atmdump.c ++++ b/src/maint/atmdump.c +@@ -16,6 +16,7 @@ + #include + #include /* for htonl and ntohl */ + #include ++#include + + + static const char *pti[] = { "Data SDU 0","Data SDU 1","Data SDU 0, CE", +--- a/src/maint/saaldump.c ++++ b/src/maint/saaldump.c +@@ -16,6 +16,7 @@ + #include + #include + #include ++#include + + #include "pdu.h" + #define DUMP_MODE diff --git a/linux-atm-2.5.2-fix-header-conflict.patch b/linux-atm-2.5.2-fix-header-conflict.patch new file mode 100644 index 0000000..1abea5b --- /dev/null +++ b/linux-atm-2.5.2-fix-header-conflict.patch @@ -0,0 +1,12 @@ +Index: linux-atm-2.5.2/src/maint/zntune.c +=================================================================== +--- linux-atm-2.5.2.orig/src/maint/zntune.c ++++ linux-atm-2.5.2/src/maint/zntune.c +@@ -14,6 +14,7 @@ + #include + #include + #include /* for struct timeval, although it's not used */ ++#define _LINUX_TIME_H /* block linux/time.h from being included */ + #include + + diff --git a/linux-atm-2.5.2-remove-headers-crude-hack.patch b/linux-atm-2.5.2-remove-headers-crude-hack.patch new file mode 100644 index 0000000..5409ce3 --- /dev/null +++ b/linux-atm-2.5.2-remove-headers-crude-hack.patch @@ -0,0 +1,48 @@ +From: Jiri Slaby +Subject: Remove headers crude hack + +Now, the glibc headers seem to be fixed, so remove this hack which +prevents build on systems with kernel >= 4.20. linux/if_arp.h really +needs to include linux/netdevice.h to have IFNAMSIZ defined. If not, +the build fails miserably: +gcc -DHAVE_CONFIG_H -I. -I../.. -I../../src/include -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -g -Wall -Wshadow -Wpointer-arith -Wwrite-strings -Wstrict-prototypes -c itf.c +In file included from itf.c:17: +/usr/include/linux/if_arp.h:121:16: error: 'IFNAMSIZ' undeclared here (not in a function) + char arp_dev[IFNAMSIZ]; + ^~~~~~~~ +--- + src/arpd/arp.c | 1 - + src/arpd/io.c | 1 - + src/arpd/itf.c | 1 - + 3 files changed, 3 deletions(-) + +--- a/src/arpd/arp.c ++++ b/src/arpd/arp.c +@@ -15,7 +15,6 @@ + #include + #include /* for linux/if_arp.h */ + #include /* for ntohs, etc. */ +-#define _LINUX_NETDEVICE_H /* very crude hack for glibc2 */ + #include + #include + #include +--- a/src/arpd/io.c ++++ b/src/arpd/io.c +@@ -21,7 +21,6 @@ + #include + #include /* for CLIP_DEFAULT_IDLETIMER */ + #include +-#define _LINUX_NETDEVICE_H /* glibc2 */ + #include + #include + +--- a/src/arpd/itf.c ++++ b/src/arpd/itf.c +@@ -12,7 +12,6 @@ + #include + #include + #include +-#define _LINUX_NETDEVICE_H /* glibc2 */ + #include + #include + diff --git a/linux-atm-2.5.2_fdleak.patch b/linux-atm-2.5.2_fdleak.patch new file mode 100644 index 0000000..8965c18 --- /dev/null +++ b/linux-atm-2.5.2_fdleak.patch @@ -0,0 +1,29 @@ +diff -Ppru linux-atm-2.5.2.orig/.directory linux-atm-2.5.2/.directory +--- linux-atm-2.5.2.orig/.directory 1970-01-01 01:00:00.000000000 +0100 ++++ linux-atm-2.5.2/.directory 2014-01-23 23:39:47.120089077 +0100 +@@ -0,0 +1,4 @@ ++[Dolphin] ++Timestamp=2014,1,23,23,39,47 ++Version=3 ++ViewMode=1 +diff -Ppru linux-atm-2.5.2.orig/src/arpd/atmarp.c linux-atm-2.5.2/src/arpd/atmarp.c +--- linux-atm-2.5.2.orig/src/arpd/atmarp.c 2009-11-30 17:56:52.000000000 +0100 ++++ linux-atm-2.5.2/src/arpd/atmarp.c 2014-01-23 23:44:31.170128564 +0100 +@@ -89,14 +89,17 @@ static int print_table(void) + } + while ((size = read(fd,buffer,BUF_SIZE))) { + if (size < 0) { ++ close(fd); + perror("read " ATMARP_DUMP_DIR "/" ATMARP_DUMP_FILE); + return 1; + } + if (write(1,buffer,size) < 0) { ++ close(fd); + perror("write stdout"); + return 1; + } + } ++ close(fd); + return 0; + } + diff --git a/linux-atm-2.5.2_implicit-fortify-decl.patch b/linux-atm-2.5.2_implicit-fortify-decl.patch new file mode 100644 index 0000000..3352b69 --- /dev/null +++ b/linux-atm-2.5.2_implicit-fortify-decl.patch @@ -0,0 +1,10 @@ +diff -Ppru linux-atm-2.5.2.orig/src/maint/hediag.c linux-atm-2.5.2/src/maint/hediag.c +--- linux-atm-2.5.2.orig/src/maint/hediag.c 2009-11-30 17:56:52.000000000 +0100 ++++ linux-atm-2.5.2/src/maint/hediag.c 2014-01-23 23:29:56.288066939 +0100 +@@ -1,5 +1,6 @@ + #include + #include ++#include + #include + #include + #include diff --git a/linux-atm.changes b/linux-atm.changes new file mode 100644 index 0000000..e89b425 --- /dev/null +++ b/linux-atm.changes @@ -0,0 +1,65 @@ +* Fri Dec 6 2019 mpluskal@suse.com +- Modernise spec file a bit: + * Move licnse to library package + * Use more of new macros for building +* Thu Jul 11 2019 jslaby@suse.com +- add fix-build-after-y2038-changes-in-glibc.patch +* Wed Jan 9 2019 jslaby@suse.com +- add linux-atm-2.5.2-remove-headers-crude-hack.patch +- switch from %%doc to %%license for licenses +* Mon Oct 17 2016 schwab@suse.de +- linux-atm-2.5.2-fix-header-conflict.patch: avoid conflict with kernel + headers +* Thu Jan 23 2014 aj@ajaissle.de +- Cleanup spec file, remove %%clean section +- Updated to 2.5.2 +- Removed linux-atm-2.5.0.diff (in mainline) +- Removed linux-atm-2.5.0-include.patch (in mainline) +- Rebased linux-atm-2.5.0-fdleak.patch as linux-atm-2.5.2_fdleak.patch +- Added linux-atm-2.5.2_implicit-fortify-decl.patch to fix implicit declarations +* Tue Apr 16 2013 mmeister@suse.com +- Added url as source. + Please see http://en.opensuse.org/SourceUrls +* Fri Feb 1 2013 coolo@suse.com +- update license to new format +* Wed Dec 21 2011 coolo@suse.com +- remove call to suse_update_config (very old work around) +* Tue Nov 2 2010 coolo@novell.com +- fix requires after rename +* Sun Oct 31 2010 jengelh@medozas.de +- Use %%_smp_mflags +- Shared library policy: rename linux-atm-lib -> libatm +* Sat Oct 10 2009 crrodriguez@opensuse.org +- fix fdleak [bnc#544223] +- remove static libraries and "la" files +* Fri Jun 12 2009 coolo@novell.com +- fix build with glibc 2.10 +* Thu Mar 29 2007 rguenther@suse.de +- add bison and flex BuildRequires +* Fri Mar 23 2007 ssommer@suse.de +- fix build with newer kernel headers +* Sat May 27 2006 schwab@suse.de +- Don't strip binaries. +* Wed Jan 25 2006 mls@suse.de +- converted neededforbuild to BuildRequires +* Fri Apr 22 2005 arvin@suse.de +- updated to latest CVS +* Wed Apr 20 2005 arvin@suse.de +- updated to 2.5.0 CVS + my GCC 4.0 and other patches +* Mon Apr 18 2005 arvin@suse.de +- some (but not all) gcc 4.0 fixes +* Tue Apr 20 2004 arvin@suse.de +- removed some compile warnings +* Sat Jan 10 2004 adrian@suse.de +- add %%run_ldconfig +* Sat Jul 19 2003 meissner@suse.de +- drop 1 line from ltconfig, so it builds shared libs on ppc64. +* Mon May 26 2003 arvin@suse.de +- split package into linux-atm, linux-atm-lib and linux-atm-devel +- include all programs/files to make rpm v4 happy +* Thu Apr 18 2002 kukuk@suse.de +- Add suse_update_config for x86_64 +* Tue Jan 8 2002 arvin@suse.de +- include some documentation in the package +* Mon Jan 7 2002 arvin@suse.de +- initial package for atm diff --git a/linux-atm.spec b/linux-atm.spec new file mode 100644 index 0000000..9aafb9c --- /dev/null +++ b/linux-atm.spec @@ -0,0 +1,81 @@ +# +# spec file for package linux-atm +# +# Copyright (c) 2022-2023 ZhuningOS +# + + +%global sover 1 +Name: linux-atm +Version: 2.5.2 +Release: 150400.14.2.3 +Summary: Tools for ATM +License: BSD-3-Clause AND GPL-2.0-or-later AND LGPL-2.1-or-later +Group: Productivity/Networking/Other +URL: http://linux-atm.sourceforge.net/ +Source0: http://downloads.sourceforge.net/project/%{name}/%{name}/%{version}/%{name}-%{version}.tar.gz +# PATCH-FIX-UPSTREAM linux-atm-2.5.2_fdleak.patch +Patch0: linux-atm-2.5.2_fdleak.patch +# PATCH-FIX-UPSTREAM linux-atm-2.5.2_implicit-fortify-decl.patch -- fix implicit declarations +Patch1: linux-atm-2.5.2_implicit-fortify-decl.patch +# PATCH-FIX-UPSTREAM linux-atm-2.5.2-fix-header-conflict.patch -- avoid conflict with kernel headers +Patch2: linux-atm-2.5.2-fix-header-conflict.patch +# PATCH-FIX-UPSTREAM linux-atm-2.5.2-remove-headers-crude-hack.patch -- Remove headers crude hack +Patch3: linux-atm-2.5.2-remove-headers-crude-hack.patch +# PATCH-FIX-UPSTREAM fix-build-after-y2038-changes-in-glibc.patch -- fix build after y2038 changes in glibc +Patch4: fix-build-after-y2038-changes-in-glibc.patch +BuildRequires: bison +BuildRequires: flex +BuildRequires: glibc-devel + +%description +Tools to support ATM (Asynchronous Transfer Mode) networking. + +%package -n libatm%{sover} +Summary: Libraries for ATM +Group: System/Libraries + +%description -n libatm%{sover} +Libraries for ATM (Asynchronous Transfer Mode) networking. + +%package devel +Summary: Development for ATM +Group: Development/Libraries/C and C++ +Requires: libatm%{sover} = %{version} + +%description devel +Libraries and header files for ATM (Asynchronous Transfer Mode) +networking. + +%prep +%autosetup -p1 + +%build +%configure --disable-static +%make_build + +%install +%make_install +find %{buildroot} -type f -name "*.la" -delete -print + +%post -n libatm%{sover} -p /sbin/ldconfig +%postun -n libatm%{sover} -p /sbin/ldconfig + +%files +%doc README AUTHORS ChangeLog NEWS THANKS BUGS +%config(noreplace) %{_sysconfdir}/atmsigd.conf +%config(noreplace) %{_sysconfdir}/hosts.atm +%{_bindir}/* +%{_sbindir}/* +/lib/firmware/* +%{_mandir}/man*/*.gz + +%files -n libatm%{sover} +%license COPYING COPYING.GPL COPYING.LGPL +%{_libdir}/libatm.so.%{sover}* + +%files devel +%{_includedir}/atm*.h +%{_libdir}/libatm.so + +%changelog