xref: /OK3568_Linux_fs/yocto/meta-openembedded/meta-networking/recipes-daemons/tftp-hpa/tftp-hpa_5.2.bb (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593SmuzhiyunSUMMARY        = "Client for the Trivial File Transfer Protocol"
2*4882a593SmuzhiyunDESCRIPTION    = \
3*4882a593Smuzhiyun"The Trivial File Transfer Protocol (TFTP) is normally used only for \
4*4882a593Smuzhiyunbooting diskless workstations.  The tftp package provides the user   \
5*4882a593Smuzhiyuninterface for TFTP, which allows users to transfer files to and from a \
6*4882a593Smuzhiyunremote machine.  This program and TFTP provide very little security, \
7*4882a593Smuzhiyunand should not be enabled unless it is expressly needed."
8*4882a593SmuzhiyunDEPENDS = "tcp-wrappers readline"
9*4882a593SmuzhiyunSECTION = "net"
10*4882a593SmuzhiyunHOMEPAGE = "http://freecode.com/projects/tftp-hpa"
11*4882a593SmuzhiyunLICENSE = "BSD-4-Clause"
12*4882a593SmuzhiyunLIC_FILES_CHKSUM = "file://MCONFIG.in;beginline=1;endline=9;md5=c28ba5adb43041fae4629db05c83cbdd \
13*4882a593Smuzhiyun                    file://tftp/tftp.c;beginline=1;endline=32;md5=988c1cba99d70858a26cd877209857f4"
14*4882a593Smuzhiyun
15*4882a593Smuzhiyun
16*4882a593SmuzhiyunSRC_URI = "http://kernel.org/pub/software/network/tftp/tftp-hpa/tftp-hpa-${PV}.tar.bz2 \
17*4882a593Smuzhiyun           file://tftp-0.40-remap.patch \
18*4882a593Smuzhiyun           file://tftp-0.42-tftpboot.patch \
19*4882a593Smuzhiyun           file://tftp-0.49-chk_retcodes.patch \
20*4882a593Smuzhiyun           file://tftp-0.49-cmd_arg.patch \
21*4882a593Smuzhiyun           file://tftp-hpa-0.39-tzfix.patch \
22*4882a593Smuzhiyun           file://tftp-hpa-0.49-fortify-strcpy-crash.patch \
23*4882a593Smuzhiyun           file://tftp-hpa-0.49-stats.patch \
24*4882a593Smuzhiyun           file://tftp-hpa-5.2-pktinfo.patch \
25*4882a593Smuzhiyun           file://default \
26*4882a593Smuzhiyun           file://init \
27*4882a593Smuzhiyun           file://add-error-check-for-disk-filled-up.patch \
28*4882a593Smuzhiyun           file://tftp-hpa-bug-fix-on-separated-CR-and-LF.patch \
29*4882a593Smuzhiyun           file://fix-writing-emtpy-file.patch \
30*4882a593Smuzhiyun           file://0001-__progname-is-provided-by-libc.patch \
31*4882a593Smuzhiyun           file://0001-tftp-Mark-toplevel-definition-as-external.patch \
32*4882a593Smuzhiyun           file://tftpd-hpa.socket \
33*4882a593Smuzhiyun           file://tftpd-hpa.service \
34*4882a593Smuzhiyun"
35*4882a593Smuzhiyun
36*4882a593SmuzhiyunSRC_URI[md5sum] = "46c9bd20bbffa62f79c958c7b99aac21"
37*4882a593SmuzhiyunSRC_URI[sha256sum] = "0a9f88d4c1c02687b4853b02ab5dd8779d4de4ffdb9b2e5c9332841304d1a269"
38*4882a593Smuzhiyun
39*4882a593Smuzhiyuninherit autotools-brokensep update-rc.d update-alternatives systemd
40*4882a593Smuzhiyun
41*4882a593Smuzhiyunexport AR = "${HOST_PREFIX}ar cq"
42*4882a593Smuzhiyun
43*4882a593SmuzhiyunEXTRA_OECONF += "--disable-option-checking"
44*4882a593Smuzhiyun
45*4882a593SmuzhiyunPACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}"
46*4882a593SmuzhiyunPACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6,"
47*4882a593Smuzhiyun
48*4882a593Smuzhiyun# configure.in has errors
49*4882a593Smuzhiyundo_configure() {
50*4882a593Smuzhiyun    oe_runconf
51*4882a593Smuzhiyun}
52*4882a593Smuzhiyun
53*4882a593Smuzhiyundo_install() {
54*4882a593Smuzhiyun    oe_runmake install INSTALLROOT=${D}
55*4882a593Smuzhiyun    mv ${D}${bindir}/tftp ${D}${bindir}/tftp-hpa
56*4882a593Smuzhiyun    mv ${D}${sbindir}/in.tftpd ${D}${sbindir}/in.tftpd-hpa
57*4882a593Smuzhiyun
58*4882a593Smuzhiyun    install -m 755 -d ${D}${localstatedir}/lib/tftpboot/
59*4882a593Smuzhiyun    install -d ${D}${sysconfdir}/init.d
60*4882a593Smuzhiyun    install -m 0755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/tftpd-hpa
61*4882a593Smuzhiyun    sed -i 's!/usr/sbin/!${sbindir}/!g' ${D}${sysconfdir}/init.d/tftpd-hpa
62*4882a593Smuzhiyun    sed -i 's!/etc/!${sysconfdir}/!g' ${D}${sysconfdir}/init.d/tftpd-hpa
63*4882a593Smuzhiyun    sed -i 's!/var/!${localstatedir}/!g' ${D}${sysconfdir}/init.d/tftpd-hpa
64*4882a593Smuzhiyun    sed -i 's!^PATH=.*!PATH=${base_sbindir}:${base_bindir}:${sbindir}:${bindir}!' ${D}${sysconfdir}/init.d/tftpd-hpa
65*4882a593Smuzhiyun
66*4882a593Smuzhiyun    install -d ${D}${sysconfdir}/default
67*4882a593Smuzhiyun    install -m 0644 ${WORKDIR}/default ${D}${sysconfdir}/default/tftpd-hpa
68*4882a593Smuzhiyun
69*4882a593Smuzhiyun    install -d ${D}${systemd_unitdir}/system
70*4882a593Smuzhiyun    install -m 0644 ${WORKDIR}/tftpd-hpa.socket ${D}${systemd_unitdir}/system
71*4882a593Smuzhiyun    install -m 0644 ${WORKDIR}/tftpd-hpa.service ${D}${systemd_unitdir}/system
72*4882a593Smuzhiyun    sed -i -e 's,@SBINDIR@,${sbindir},g' ${D}${systemd_unitdir}/system/tftpd-hpa.service
73*4882a593Smuzhiyun}
74*4882a593Smuzhiyun
75*4882a593SmuzhiyunFILES:${PN} = "${bindir}"
76*4882a593Smuzhiyun
77*4882a593SmuzhiyunPACKAGES += "tftp-hpa-server"
78*4882a593SmuzhiyunSUMMARY:tftp-hpa-server = "Server for the Trivial File Transfer Protocol"
79*4882a593SmuzhiyunFILES:tftp-hpa-server = "${sbindir} ${sysconfdir} ${localstatedir}"
80*4882a593SmuzhiyunCONFFILES:tftp-hpa-server = "${sysconfdir}/default/tftpd-hpa"
81*4882a593Smuzhiyun
82*4882a593SmuzhiyunINITSCRIPT_PACKAGES = "tftp-hpa-server"
83*4882a593SmuzhiyunINITSCRIPT_NAME = "tftpd-hpa"
84*4882a593SmuzhiyunINITSCRIPT_PARAMS = "start 20 2 3 4 5 . stop 20 1 ."
85*4882a593Smuzhiyun
86*4882a593SmuzhiyunALTERNATIVE:${PN}-doc = "tftpd.8 tftp.1"
87*4882a593SmuzhiyunALTERNATIVE_LINK_NAME[tftpd.8] = "${mandir}/man8/tftpd.8"
88*4882a593SmuzhiyunALTERNATIVE_LINK_NAME[tftp.1] = "${mandir}/man1/tftp.1"
89*4882a593Smuzhiyun
90*4882a593SmuzhiyunALTERNATIVE:${PN} = "tftp"
91*4882a593SmuzhiyunALTERNATIVE_TARGET[tftp] = "${bindir}/tftp-hpa"
92*4882a593SmuzhiyunALTERNATIVE_PRIORITY = "100"
93*4882a593Smuzhiyun
94*4882a593Smuzhiyun
95*4882a593SmuzhiyunSYSTEMD_PACKAGES = "tftp-hpa-server"
96*4882a593SmuzhiyunSYSTEMD_SERVICE:tftp-hpa-server = "tftpd-hpa.socket tftpd-hpa.service"
97*4882a593SmuzhiyunSYSTEMD_AUTO_ENABLE:tftp-hpa-server = "enable"
98