1*4882a593SmuzhiyunSUMMARY = "An L2TP client/server, designed for VPN use."
2*4882a593SmuzhiyunDESCRIPTION = "OpenL2TP is an open source L2TP client / server, written \
3*4882a593Smuzhiyunspecifically for Linux. It has been designed for use as an enterprise \
4*4882a593SmuzhiyunL2TP VPN server or in commercial, Linux-based, embedded networking \
5*4882a593Smuzhiyunproducts and is able to support hundreds of sessions, each with \
6*4882a593Smuzhiyundifferent configuration. It is used by several ISPs to provide \
7*4882a593SmuzhiyunL2TP services and by corporations to implement L2TP VPNs."
8*4882a593SmuzhiyunHOMEPAGE = "http://www.openl2tp.org/"
9*4882a593SmuzhiyunSECTION = "net"
10*4882a593Smuzhiyun
11*4882a593Smuzhiyun# cli and usl use license LGPL-2.1
12*4882a593SmuzhiyunLICENSE = "GPL-2.0-only & LGPL-2.1-only"
13*4882a593SmuzhiyunLIC_FILES_CHKSUM = "file://COPYING;md5=e9d9259cbbf00945adc25a470c1d3585 \
14*4882a593Smuzhiyun                    file://LICENSE;md5=f8970abd5ea9be701a0deedf5afd77a5 \
15*4882a593Smuzhiyun                    file://cli/LICENSE;md5=9c1387a3c5213aa40671438af3e00793 \
16*4882a593Smuzhiyun                    file://usl/LICENSE;md5=9c1387a3c5213aa40671438af3e00793 \
17*4882a593Smuzhiyun                    "
18*4882a593Smuzhiyun
19*4882a593SmuzhiyunDEPENDS = "popt flex readline rpcsvc-proto-native bison-native"
20*4882a593Smuzhiyun
21*4882a593SmuzhiyunSRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${PV}/${BP}.tar.gz \
22*4882a593Smuzhiyun           file://Makefile-modify-CFLAGS-to-aviod-build-error.patch \
23*4882a593Smuzhiyun           file://openl2tp-simplify-gcc-warning-hack.patch \
24*4882a593Smuzhiyun           file://Makefile-obey-LDFLAGS.patch \
25*4882a593Smuzhiyun           file://0001-test-pppd_dummy.c-Fix-return-value.patch \
26*4882a593Smuzhiyun           file://0001-Use-1-instead-of-WAIT_ANY.patch \
27*4882a593Smuzhiyun           file://0002-cli-include-fcntl.h-for-O_CREAT-define.patch \
28*4882a593Smuzhiyun           file://0003-cli-Define-_GNU_SOURCE-for-getting-sighandler_t.patch \
29*4882a593Smuzhiyun           file://0001-l2tp_api-Included-needed-headers.patch \
30*4882a593Smuzhiyun           file://openl2tpd-initscript-fix.patch \
31*4882a593Smuzhiyun           file://openl2tpd-initscript-fix-sysconfig.patch \
32*4882a593Smuzhiyun           file://openl2tpd-initscript-fix-warning.patch \
33*4882a593Smuzhiyun           file://openl2tpd.service \
34*4882a593Smuzhiyun           file://openl2tpd-enable-tests.patch \
35*4882a593Smuzhiyun           file://run-ptest \
36*4882a593Smuzhiyun           file://fix_linux_4.15_compile.patch \
37*4882a593Smuzhiyun           file://0002-user-ipv6-structures.patch \
38*4882a593Smuzhiyun           "
39*4882a593SmuzhiyunSRC_URI[md5sum] = "e3d08dedfb9e6a9a1e24f6766f6dadd0"
40*4882a593SmuzhiyunSRC_URI[sha256sum] = "1c97704d4b963a87fbc0e741668d4530933991515ae9ab0dffd11b5444f4860f"
41*4882a593Smuzhiyun
42*4882a593Smuzhiyuninherit autotools-brokensep pkgconfig systemd ptest
43*4882a593Smuzhiyun
44*4882a593SmuzhiyunSYSTEMD_SERVICE:${PN} = "openl2tpd.service"
45*4882a593SmuzhiyunSYSTEMD_AUTO_ENABLE = "disable"
46*4882a593Smuzhiyun
47*4882a593SmuzhiyunDEPENDS += "libtirpc"
48*4882a593SmuzhiyunCPPFLAGS += "-I${STAGING_INCDIR}/tirpc"
49*4882a593SmuzhiyunCFLAGS += "-I${STAGING_INCDIR}/tirpc"
50*4882a593SmuzhiyunLDFLAGS += "-ltirpc"
51*4882a593Smuzhiyun
52*4882a593SmuzhiyunPARALLEL_MAKE = ""
53*4882a593SmuzhiyunEXTRA_OEMAKE = 'CFLAGS="${CFLAGS} -Wno-unused-but-set-variable" CPPFLAGS="${CPPFLAGS}" OPT_CFLAGS="${CFLAGS}"'
54*4882a593Smuzhiyun
55*4882a593Smuzhiyundo_compile:prepend() {
56*4882a593Smuzhiyun    sed -i -e "s:SYS_LIBDIR=.*:SYS_LIBDIR=${libdir}:g" \
57*4882a593Smuzhiyun        -e 's:$(CROSS_COMPILE)as:${AS}:g' \
58*4882a593Smuzhiyun        -e 's:$(CROSS_COMPILE)ld:${LD}:g' \
59*4882a593Smuzhiyun        -e 's:$(CROSS_COMPILE)gcc:${CC}:g' \
60*4882a593Smuzhiyun        -e 's:$(CROSS_COMPILE)ar:${AR}:g' \
61*4882a593Smuzhiyun        -e 's:$(CROSS_COMPILE)nm:${NM}:g' \
62*4882a593Smuzhiyun        -e 's:$(CROSS_COMPILE)strip:${STRIP}:g' \
63*4882a593Smuzhiyun        -e 's:$(CROSS_COMPILE)install:install:g' \
64*4882a593Smuzhiyun        -e 's:CPPFLAGS-y:CPPFLAGS:g' \
65*4882a593Smuzhiyun        ${S}/Makefile
66*4882a593Smuzhiyun}
67*4882a593Smuzhiyun
68*4882a593Smuzhiyundo_install:append () {
69*4882a593Smuzhiyun    install -d ${D}${sysconfdir}/init.d
70*4882a593Smuzhiyun    install -d ${D}${sysconfdir}/default
71*4882a593Smuzhiyun    install -m 0755 ${S}/etc/rc.d/init.d/openl2tpd ${D}${sysconfdir}/init.d/openl2tpd
72*4882a593Smuzhiyun    install -m 0755 ${S}/etc/sysconfig/openl2tpd ${D}${sysconfdir}/default/openl2tpd
73*4882a593Smuzhiyun
74*4882a593Smuzhiyun    if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
75*4882a593Smuzhiyun        install -D -m 0644 ${WORKDIR}/openl2tpd.service ${D}${systemd_system_unitdir}/openl2tpd.service
76*4882a593Smuzhiyun        sed -i -e 's,@STATEDIR@,${localstatedir},g' \
77*4882a593Smuzhiyun               -e 's,@SYSCONFDIR@,${sysconfdir},g' \
78*4882a593Smuzhiyun               -e 's,@SBINDIR@,${sbindir},g' \
79*4882a593Smuzhiyun               -e 's,@BINDIR@,${bindir},g' \
80*4882a593Smuzhiyun               -e 's,@BASE_SBINDIR@,${base_sbindir},g' \
81*4882a593Smuzhiyun               -e 's,@BASE_BINDIR@,${base_bindir},g' \
82*4882a593Smuzhiyun               ${D}${systemd_system_unitdir}/openl2tpd.service
83*4882a593Smuzhiyun    fi
84*4882a593Smuzhiyun}
85*4882a593Smuzhiyun
86*4882a593Smuzhiyundo_install_ptest () {
87*4882a593Smuzhiyun    for i in all.tcl configfile.test peer_profile.test ppp_profile.test \
88*4882a593Smuzhiyun    session_profile.test session.test system.test test_procs.tcl \
89*4882a593Smuzhiyun    thirdparty_lns.test tunnel_profile.test tunnel.test; do
90*4882a593Smuzhiyun        install -m 0755 ${S}/test/$i ${D}${PTEST_PATH}
91*4882a593Smuzhiyun    done
92*4882a593Smuzhiyun}
93*4882a593Smuzhiyun
94*4882a593SmuzhiyunRDEPENDS:${PN} = "ppp ppp-l2tp bash"
95