meta-stx: re-name and re-org to align with upstream
[pti/rtp.git] / meta-starlingx / meta-stx-integ / recipes-daemons / lldpd / lldpd_0.9.0.bb
1 #
2 # Copyright (C) 2019 Wind River Systems, Inc.
3 #
4 #  Licensed under the Apache License, Version 2.0 (the "License");
5 #  you may not use this file except in compliance with the License.
6 #  You may obtain a copy of the License at
7 #
8 #      http://www.apache.org/licenses/LICENSE-2.0
9 #
10 #  Unless required by applicable law or agreed to in writing, software
11 #  distributed under the License is distributed on an "AS IS" BASIS,
12 #  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 #  See the License for the specific language governing permissions and
14 #  limitations under the License.
15
16 SUMMARY = "A 802.1ab implementation (LLDP) to help you locate neighbors of all your equipments"
17 SECTION = "net/misc"
18 LICENSE = "ISC"
19 LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/ISC;md5=f3b90e78ea0cffb20bf5cca7947a896d"
20
21 DEPENDS = "libbsd libevent json-c"
22
23
24 # Patches pullled from
25 # PROTOCOL = "https"
26 # BRANCH = "r/stx.3.0"
27 # SRCNAME = "integ"
28 # SRCREV = "0bf4b546df8c7fdec8cfc6cb6f71b9609ee54306"
29 # git://opendev.org/starlingx/${SRCNAME}.git;protocol=${PROTOCOL};rev=${SRCREV};branch=${BRANCH};destsuffix=stx-patches;subpath=networking/lldpd 
30
31 SRC_URI = "\
32     http://media.luffy.cx/files/${BPN}/${BPN}-${PV}.tar.gz \
33     file://lldpd-interface-show.patch \
34     file://lldpd-create-run-dir.patch \
35     file://lldpd-i40e-disable.patch \
36     file://lldpd-clear-station.patch \
37     file://i40e-lldp-configure.sh \
38     file://lldpd.init \
39     file://lldpd.default\
40     "
41
42 SRC_URI[md5sum] = "ed0226129b0c90b3a45c273fe1aba8de"
43 SRC_URI[sha256sum] = "300e4a590f7bf21c79d5ff94c2d6a69d0b2c34dbc21e17281496462a04ca80bc"
44
45 do_patch_append () {
46     bb.build.exec_func('stx_do_patch', d)
47 }
48
49 SOURCE1 = "${WORKDIR}/lldpd.init"
50 SOURCE2 = "${WORKDIR}/lldpd.default"
51 SOURCE3 = "${WORKDIR}/i40e-lldp-configure.sh"
52
53 DISTRO_FEATURES_BACKFILL_CONSIDERED_remove = "sysvinit"
54
55 inherit autotools update-rc.d useradd systemd pkgconfig bash-completion
56
57 USERADD_PACKAGES = "${PN}"
58 USERADD_PARAM_${PN} = "--system -g lldpd --shell /bin/false lldpd"
59 GROUPADD_PARAM_${PN} = "--system lldpd"
60
61 EXTRA_OECONF += "--without-embedded-libevent \
62                  --disable-oldies \
63                  --with-privsep-user=lldpd \
64                  --with-privsep-group=lldpd \
65                  --with-systemdsystemunitdir=${systemd_system_unitdir} \
66                  --without-sysusersdir \
67 "
68
69 PACKAGECONFIG ??= "cdp fdp edp sonmp lldpmed dot1 dot3"
70 PACKAGECONFIG[xml] = "--with-xml,--without-xml,libxm2"
71 PACKAGECONFIG[snmp] = "--with-snmp,--without-snmp,net-snmp"
72 PACKAGECONFIG[readline] = "--with-readline,--without-readline,readline"
73 PACKAGECONFIG[seccomp] = "--with-seccomp,--without-seccomp,libseccomp"
74 PACKAGECONFIG[cdp] = "--enable-cdp,--disable-cdp"
75 PACKAGECONFIG[fdp] = "--enable-fdp,--disable-fdp"
76 PACKAGECONFIG[edp] = "--enable-edp,--disable-edp"
77 PACKAGECONFIG[sonmp] = "--enable-sonmp,--disable-sonmp"
78 PACKAGECONFIG[lldpmed] = "--enable-lldpmed,--disable-lldpmed"
79 PACKAGECONFIG[dot1] = "--enable-dot1,--disable-dot1"
80 PACKAGECONFIG[dot3] = "--enable-dot3,--disable-dot3"
81 PACKAGECONFIG[custom] = "--enable-custom,--disable-custom"
82
83 INITSCRIPT_NAME = "lldpd"
84 INITSCRIPT_PARAMS = "defaults"
85
86 SYSTEMD_SERVICE_${PN} = "lldpd.service"
87
88 do_install_append() {
89     install -d -m 0755 ${D}/${sysconfdir}/init.d
90     install -Dm 0755 ${SOURCE1} ${D}${sysconfdir}/init.d/lldpd
91     install -Dm 0644 ${SOURCE2} ${D}${sysconfdir}/default/lldpd
92     install -Dm 0755 ${SOURCE3} ${D}${sysconfdir}/init.d/
93     # Make an empty configuration file
94     touch ${D}${sysconfdir}/lldpd.conf
95 }
96
97 PACKAGES =+ "${PN}-zsh-completion"
98
99 FILES_${PN} += "${libdir}/sysusers.d"
100 RDEPENDS_${PN} += "os-release bash"
101
102 FILES_${PN}-zsh-completion += "${datadir}/zsh/"
103 # FIXME: zsh is broken in meta-oe so this cannot be enabled for now
104 #RDEPENDS_${PN}-zsh-completion += "zsh"