2
0
mirror of https://github.com/xcat2/xcat-dep.git synced 2026-09-12 04:26:25 +00:00
Files
xcat-dep/atftp/atftp.spec
T
2026-03-13 07:20:46 -03:00

119 lines
3.0 KiB
RPMSpec

Name: atftp-xcat
Summary: Advanced Trivial File Transfer Protocol (ATFTP) - TFTP server
Group: System Environment/Daemons
Version: 0.7
Release: 10
License: GPL
Vendor: Linux Networx Inc.
%undefine _hardened_build
Source: atftp_0.7.dfsg.orig.tar.gz
Source1: tftpd
Patch: atftp_0.7.dfsg-3.diff
Patch1: dfsg-3-to-multicast.diff
Patch2: dfsg-3-bigfiles.diff
Patch3: dfsg-3-to-winpaths.diff
Patch4: dfsg-3-mclistfix.diff
Patch5: dfsg-3-pthread-self-include.diff
BuildRequires: gcc
BuildRequires: make
BuildRequires: glibc-devel
Buildroot: /var/tmp/atftp-buildroot
Packager: Allen Reese <areese@lnxi.com>
Conflicts: tftp-server
Obsoletes: atftp
Provides: atftp
%description
Multithreaded TFTP server implementing all options (option extension and
multicast) as specified in RFC1350, RFC2090, RFC2347, RFC2348 and RFC2349.
Atftpd also support multicast protocol knowed as mtftp, defined in the PXE
specification. The server supports being started from inetd(8) as well as
a deamon using init scripts.
%package client
Summary: Advanced Trivial File Transfer Protocol (ATFTP) - TFTP client
Group: Applications/Internet
%description client
Advanced Trivial File Transfer Protocol client program for requesting
files using the TFTP protocol.
%prep
%setup -n atftp-0.7.dfsg
%patch0 -p1
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
# Avoid argz_next redefinition with modern glibc extern inline semantics.
sed -i '/^#include <stdlib.h>$/a\
#ifdef __USE_EXTERN_INLINES\
#undef __USE_EXTERN_INLINES\
#endif' argz.c
# Disable glibc extern-inline argz bodies to prevent multiple definitions.
sed -i 's/^#ifdef __USE_EXTERN_INLINES/#if 0/' argz.h
# Force Strncpy to have a linkable external definition with modern GCC.
sed -i 's/^inline char \*Strncpy(/char *Strncpy(/' tftp_def.h
sed -i 's/^inline char \*Strncpy(/char *Strncpy(/' tftp_def.c
# Force tftpd_clientlist_ready to have a linkable external definition.
sed -i 's/^inline void tftpd_clientlist_ready(/void tftpd_clientlist_ready(/' tftpd.h
sed -i 's/^inline void tftpd_clientlist_ready(/void tftpd_clientlist_ready(/' tftpd_list.c
%build
%configure --disable-libwrap
make
%install
[ -n "$RPM_BUILD_ROOT" -a "$RPM_BUILD_ROOT" != '/' ] && rm -rf $RPM_BUILD_ROOT
%makeinstall
mkdir -p "$RPM_BUILD_ROOT"/etc/init.d
cp %{SOURCE1} "$RPM_BUILD_ROOT"/etc/init.d
%files
%{_mandir}/man8/atftpd.8.gz
%{_sbindir}/atftpd
%{_mandir}/man8/in.tftpd.8.gz
%{_sbindir}/in.tftpd
/etc/init.d/tftpd
%files client
%{_mandir}/man1/atftp.1.gz
%{_bindir}/atftp
%preun
%post
if [ -x /usr/lib/lsb/install_initd ]; then
/usr/lib/lsb/install_initd /etc/init.d/tftpd
elif [ -x /sbin/chkconfig ]; then
/sbin/chkconfig --add tftpd
fi
/etc/init.d/tftpd restart
%clean
[ -n "$RPM_BUILD_ROOT" -a "$RPM_BUILD_ROOT" != '/' ] && rm -rf $RPM_BUILD_ROOT
%changelog
* Wed Oct 29 2008 David Darrington <ddarring@linux.vnet.ibm.com>
- Fix multicast server segfault
* Sat Oct 20 2007 Jarrod Johnson <jbj-at@ura.dnsalias.org>
- Update with debian patch
* Tue Jan 07 2003 Thayne Harbaugh <thayne@plug.org>
- put client in sub-rpm