xref: /OK3568_Linux_fs/yocto/poky/meta/recipes-connectivity/ppp/ppp_2.4.9.bb (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593SmuzhiyunSUMMARY = "Point-to-Point Protocol (PPP) support"
2*4882a593SmuzhiyunDESCRIPTION = "ppp (Paul's PPP Package) is an open source package which implements \
3*4882a593Smuzhiyunthe Point-to-Point Protocol (PPP) on Linux and Solaris systems."
4*4882a593SmuzhiyunSECTION = "console/network"
5*4882a593SmuzhiyunHOMEPAGE = "http://samba.org/ppp/"
6*4882a593SmuzhiyunBUGTRACKER = "http://ppp.samba.org/cgi-bin/ppp-bugs"
7*4882a593SmuzhiyunDEPENDS = "libpcap openssl virtual/crypt"
8*4882a593SmuzhiyunLICENSE = "BSD-3-Clause & BSD-3-Clause-Attribution & GPL-2.0-or-later & LGPL-2.0-or-later & PD"
9*4882a593SmuzhiyunLIC_FILES_CHKSUM = "file://pppd/ccp.c;beginline=1;endline=29;md5=e2c43fe6e81ff77d87dc9c290a424dea \
10*4882a593Smuzhiyun                    file://pppd/plugins/passprompt.c;beginline=1;endline=10;md5=3bcbcdbf0e369c9a3e0b8c8275b065d8 \
11*4882a593Smuzhiyun                    file://pppd/tdb.c;beginline=1;endline=27;md5=4ca3a9991b011038d085d6675ae7c4e6 \
12*4882a593Smuzhiyun                    file://chat/chat.c;beginline=1;endline=15;md5=0d374b8545ee5c62d7aff1acbd38add2"
13*4882a593Smuzhiyun
14*4882a593SmuzhiyunSRC_URI = "https://download.samba.org/pub/${BPN}/${BP}.tar.gz \
15*4882a593Smuzhiyun           file://makefix.patch \
16*4882a593Smuzhiyun           file://pon \
17*4882a593Smuzhiyun           file://poff \
18*4882a593Smuzhiyun           file://init \
19*4882a593Smuzhiyun           file://ip-up \
20*4882a593Smuzhiyun           file://ip-down \
21*4882a593Smuzhiyun           file://08setupdns \
22*4882a593Smuzhiyun           file://92removedns \
23*4882a593Smuzhiyun           file://pap \
24*4882a593Smuzhiyun           file://ppp_on_boot \
25*4882a593Smuzhiyun           file://provider \
26*4882a593Smuzhiyun           file://ppp@.service \
27*4882a593Smuzhiyun           file://0001-ppp-fix-build-against-5.15-headers.patch \
28*4882a593Smuzhiyun           file://CVE-2022-4603.patch \
29*4882a593Smuzhiyun           "
30*4882a593Smuzhiyun
31*4882a593SmuzhiyunSRC_URI[sha256sum] = "f938b35eccde533ea800b15a7445b2f1137da7f88e32a16898d02dee8adc058d"
32*4882a593Smuzhiyun
33*4882a593Smuzhiyuninherit autotools-brokensep systemd
34*4882a593Smuzhiyun
35*4882a593SmuzhiyunTARGET_CC_ARCH += " ${LDFLAGS}"
36*4882a593SmuzhiyunEXTRA_OEMAKE = "CC='${CC}' STRIPPROG=${STRIP} MANDIR=${D}${datadir}/man/man8 INCDIR=${D}${includedir} LIBDIR=${D}${libdir}/pppd/${PV} BINDIR=${D}${sbindir}"
37*4882a593SmuzhiyunEXTRA_OECONF = "--disable-strip"
38*4882a593Smuzhiyun
39*4882a593Smuzhiyun# Package Makefile computes CFLAGS, referencing COPTS.
40*4882a593Smuzhiyun# Typically hard-coded to '-O2 -g' in the Makefile's.
41*4882a593Smuzhiyun#
42*4882a593SmuzhiyunEXTRA_OEMAKE += ' COPTS="${CFLAGS} -I${STAGING_INCDIR}/openssl -I${S}/include"'
43*4882a593Smuzhiyun
44*4882a593SmuzhiyunEXTRA_OECONF:append:libc-musl = " --disable-ipxcp"
45*4882a593Smuzhiyun
46*4882a593Smuzhiyundo_configure () {
47*4882a593Smuzhiyun	oe_runconf
48*4882a593Smuzhiyun}
49*4882a593Smuzhiyun
50*4882a593Smuzhiyundo_install:append () {
51*4882a593Smuzhiyun	make install-etcppp ETCDIR=${D}/${sysconfdir}/ppp
52*4882a593Smuzhiyun	mkdir -p ${D}${bindir}/ ${D}${sysconfdir}/init.d
53*4882a593Smuzhiyun	mkdir -p ${D}${sysconfdir}/ppp/ip-up.d/
54*4882a593Smuzhiyun	mkdir -p ${D}${sysconfdir}/ppp/ip-down.d/
55*4882a593Smuzhiyun	install -m 0755 ${WORKDIR}/pon ${D}${bindir}/pon
56*4882a593Smuzhiyun	install -m 0755 ${WORKDIR}/poff ${D}${bindir}/poff
57*4882a593Smuzhiyun	install -m 0755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/ppp
58*4882a593Smuzhiyun	install -m 0755 ${WORKDIR}/ip-up ${D}${sysconfdir}/ppp/
59*4882a593Smuzhiyun	install -m 0755 ${WORKDIR}/ip-down ${D}${sysconfdir}/ppp/
60*4882a593Smuzhiyun	install -m 0755 ${WORKDIR}/08setupdns ${D}${sysconfdir}/ppp/ip-up.d/
61*4882a593Smuzhiyun	install -m 0755 ${WORKDIR}/92removedns ${D}${sysconfdir}/ppp/ip-down.d/
62*4882a593Smuzhiyun	mkdir -p ${D}${sysconfdir}/chatscripts
63*4882a593Smuzhiyun	mkdir -p ${D}${sysconfdir}/ppp/peers
64*4882a593Smuzhiyun	install -m 0755 ${WORKDIR}/pap ${D}${sysconfdir}/chatscripts
65*4882a593Smuzhiyun	install -m 0755 ${WORKDIR}/ppp_on_boot ${D}${sysconfdir}/ppp/ppp_on_boot
66*4882a593Smuzhiyun	install -m 0755 ${WORKDIR}/provider ${D}${sysconfdir}/ppp/peers/provider
67*4882a593Smuzhiyun	install -d ${D}${systemd_system_unitdir}
68*4882a593Smuzhiyun	install -m 0644 ${WORKDIR}/ppp@.service ${D}${systemd_system_unitdir}
69*4882a593Smuzhiyun	sed -i -e 's,@SBINDIR@,${sbindir},g' \
70*4882a593Smuzhiyun	       ${D}${systemd_system_unitdir}/ppp@.service
71*4882a593Smuzhiyun	rm -rf ${D}/${mandir}/man8/man8
72*4882a593Smuzhiyun	chmod u+s ${D}${sbindir}/pppd
73*4882a593Smuzhiyun}
74*4882a593Smuzhiyun
75*4882a593Smuzhiyundo_install:append:libc-musl () {
76*4882a593Smuzhiyun	install -Dm 0644 ${S}/include/net/ppp_defs.h ${D}${includedir}/net/ppp_defs.h
77*4882a593Smuzhiyun}
78*4882a593Smuzhiyun
79*4882a593SmuzhiyunCONFFILES:${PN} = "${sysconfdir}/ppp/pap-secrets ${sysconfdir}/ppp/chap-secrets ${sysconfdir}/ppp/options"
80*4882a593SmuzhiyunPACKAGES =+ "${PN}-oa ${PN}-oe ${PN}-radius ${PN}-winbind ${PN}-minconn ${PN}-password ${PN}-l2tp ${PN}-tools"
81*4882a593SmuzhiyunFILES:${PN}        = "${sysconfdir} ${bindir} ${sbindir}/chat ${sbindir}/pppd ${systemd_system_unitdir}/ppp@.service"
82*4882a593SmuzhiyunFILES:${PN}-oa       = "${libdir}/pppd/${PV}/pppoatm.so"
83*4882a593SmuzhiyunFILES:${PN}-oe       = "${sbindir}/pppoe-discovery ${libdir}/pppd/${PV}/*pppoe.so"
84*4882a593SmuzhiyunFILES:${PN}-radius   = "${libdir}/pppd/${PV}/radius.so ${libdir}/pppd/${PV}/radattr.so ${libdir}/pppd/${PV}/radrealms.so"
85*4882a593SmuzhiyunFILES:${PN}-winbind  = "${libdir}/pppd/${PV}/winbind.so"
86*4882a593SmuzhiyunFILES:${PN}-minconn  = "${libdir}/pppd/${PV}/minconn.so"
87*4882a593SmuzhiyunFILES:${PN}-password = "${libdir}/pppd/${PV}/pass*.so"
88*4882a593SmuzhiyunFILES:${PN}-l2tp     = "${libdir}/pppd/${PV}/*l2tp.so"
89*4882a593SmuzhiyunFILES:${PN}-tools    = "${sbindir}/pppstats ${sbindir}/pppdump"
90*4882a593SmuzhiyunSUMMARY:${PN}-oa       = "Plugin for PPP for PPP-over-ATM support"
91*4882a593SmuzhiyunSUMMARY:${PN}-oe       = "Plugin for PPP for PPP-over-Ethernet support"
92*4882a593SmuzhiyunSUMMARY:${PN}-radius   = "Plugin for PPP for RADIUS support"
93*4882a593SmuzhiyunSUMMARY:${PN}-winbind  = "Plugin for PPP to authenticate against Samba or Windows"
94*4882a593SmuzhiyunSUMMARY:${PN}-minconn  = "Plugin for PPP to set a delay before the idle timeout applies"
95*4882a593SmuzhiyunSUMMARY:${PN}-password = "Plugin for PPP to get passwords via a pipe"
96*4882a593SmuzhiyunSUMMARY:${PN}-l2tp     = "Plugin for PPP for l2tp support"
97*4882a593SmuzhiyunSUMMARY:${PN}-tools    = "Additional tools for the PPP package"
98*4882a593Smuzhiyun
99*4882a593Smuzhiyun# Ignore compatibility symlink rp-pppoe.so->pppoe.so
100*4882a593SmuzhiyunINSANE_SKIP:${PN}-oe += "dev-so"
101