Initialize for linux-atm

This commit is contained in:
zyppe 2024-02-09 18:02:15 +08:00
commit c174e7cba4
9 changed files with 281 additions and 0 deletions

1
.gitignore vendored Normal file
View file

@ -0,0 +1 @@
linux-atm-2.5.2.tar.gz

1
.linux-atm.metadata Normal file
View file

@ -0,0 +1 @@
426e10118cea3ad75bced36807191b695d2e54044068d5a075a707f86542627b linux-atm-2.5.2.tar.gz

View file

@ -0,0 +1,34 @@
From: Bastien Nocera <hadess@hadess.net>
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 <jslaby@suse.cz>
---
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 <sys/socket.h>
#include <netinet/in.h> /* for htonl and ntohl */
#include <atm.h>
+#include <linux/sockios.h>
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 <sys/types.h>
#include <sys/socket.h>
#include <atm.h>
+#include <linux/sockios.h>
#include "pdu.h"
#define DUMP_MODE

View file

@ -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 <sys/ioctl.h>
#include <atm.h>
#include <sys/time.h> /* for struct timeval, although it's not used */
+#define _LINUX_TIME_H /* block linux/time.h from being included */
#include <linux/atm_zatm.h>

View file

@ -0,0 +1,48 @@
From: Jiri Slaby <jslaby@suse.cz>
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 <sys/types.h>
#include <sys/socket.h> /* for linux/if_arp.h */
#include <netinet/in.h> /* for ntohs, etc. */
-#define _LINUX_NETDEVICE_H /* very crude hack for glibc2 */
#include <linux/types.h>
#include <linux/if_arp.h>
#include <linux/if_ether.h>
--- a/src/arpd/io.c
+++ b/src/arpd/io.c
@@ -21,7 +21,6 @@
#include <atm.h>
#include <linux/atmclip.h> /* for CLIP_DEFAULT_IDLETIMER */
#include <linux/atmarp.h>
-#define _LINUX_NETDEVICE_H /* glibc2 */
#include <linux/types.h>
#include <linux/if_arp.h>
--- a/src/arpd/itf.c
+++ b/src/arpd/itf.c
@@ -12,7 +12,6 @@
#include <sys/types.h>
#include <linux/atmclip.h>
#include <sys/socket.h>
-#define _LINUX_NETDEVICE_H /* glibc2 */
#include <linux/types.h>
#include <linux/if_arp.h>

View file

@ -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;
}

View file

@ -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 <stdio.h>
#include <stdlib.h>
+#include <string.h>
#include <unistd.h>
#include <sys/ioctl.h>
#include <sys/types.h>

65
linux-atm.changes Normal file
View file

@ -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

81
linux-atm.spec Normal file
View file

@ -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