From 1c865a6427848d31dbee8fd3b38ddc5f0d8debd8 Mon Sep 17 00:00:00 2001 From: Divya Chandralekha Date: Wed, 2 Oct 2024 00:23:56 -0700 Subject: [PATCH 1/4] PVST co pr commit --- .gitmodules | 5 ++- dockers/docker-stp/Dockerfile.j2 | 38 +++++++++++++++++++ dockers/docker-stp/base_image_files/stpctl | 5 +++ dockers/docker-stp/critical_processes | 2 + dockers/docker-stp/start.sh | 11 ++++++ dockers/docker-stp/supervisord.conf | 36 ++++++++++++++++++ files/build_templates/init_cfg.json.j2 | 1 + files/build_templates/stp.service.j2 | 16 ++++++++ files/image_config/logrotate/rsyslog.j2 | 1 + .../rsyslog/rsyslog.d/00-sonic.conf.j2 | 8 ++++ rules/config | 3 ++ rules/docker-stp.mk | 30 +++++++++++++++ rules/libevent.mk | 10 +++++ rules/sonic-stp.mk | 18 +++++++++ rules/swss.mk | 2 +- slave.mk | 4 +- 16 files changed, 187 insertions(+), 3 deletions(-) create mode 100644 dockers/docker-stp/Dockerfile.j2 create mode 100644 dockers/docker-stp/base_image_files/stpctl create mode 100644 dockers/docker-stp/critical_processes create mode 100644 dockers/docker-stp/start.sh create mode 100644 dockers/docker-stp/supervisord.conf create mode 100644 files/build_templates/stp.service.j2 create mode 100644 rules/docker-stp.mk create mode 100644 rules/libevent.mk create mode 100644 rules/sonic-stp.mk diff --git a/.gitmodules b/.gitmodules index 9013bdb67021..5793c876b338 100644 --- a/.gitmodules +++ b/.gitmodules @@ -123,4 +123,7 @@ url = https://github.com/Marvell-switching/sonic-platform-arm64.git [submodule "platform/innovium/sonic-platform-marvell"] path = platform/innovium/sonic-platform-marvell - url = https://github.com/Marvell-switching/sonic-platform-marvell + url = https://github.com/Marvell-switching/sonic-platform-marvell +[submodule "src/sonic-stp"] + path = src/sonic-stp + url = https://github.com/sonic-net/sonic-stp diff --git a/dockers/docker-stp/Dockerfile.j2 b/dockers/docker-stp/Dockerfile.j2 new file mode 100644 index 000000000000..34d8c1631f0e --- /dev/null +++ b/dockers/docker-stp/Dockerfile.j2 @@ -0,0 +1,38 @@ +{% from "dockers/dockerfile-macros.j2" import install_debian_packages, install_python_wheels, copy_files %} +FROM docker-config-engine-bullseye-{{DOCKER_USERNAME}}:{{DOCKER_USERTAG}} + +ARG docker_container_name +RUN [ -f /etc/rsyslog.conf ] && sed -ri "s/%syslogtag%/$docker_container_name#%syslogtag%/;" /etc/rsyslog.conf + +## Make apt-get non-interactive +ENV DEBIAN_FRONTEND=noninteractive + +RUN apt-get update && \ + apt-get install -f -y \ + libdbus-1-3 \ + libdaemon0 \ + libjansson4 \ + libpython2.7 \ + # Install redis-tools dependencies + # TODO: implicitly install dependencies + libjemalloc2 \ + ebtables + +{% if docker_stp_debs.strip() -%} +# Copy locally-built Debian package dependencies +{{ copy_files("debs/", docker_stp_debs.split(' '), "/debs/") }} + +# Install locally-built Debian packages and implicitly install their dependencies +{{ install_debian_packages(docker_stp_debs.split(' ')) }} +{%- endif %} + +RUN apt-get clean -y && \ + apt-get autoclean -y && \ + apt-get autoremove -y && \ + rm -rf /debs + +COPY ["start.sh", "/usr/bin/"] +COPY ["supervisord.conf", "/etc/supervisor/conf.d/"] +COPY ["critical_processes", "/etc/supervisor/"] + +ENTRYPOINT ["/usr/bin/supervisord"] diff --git a/dockers/docker-stp/base_image_files/stpctl b/dockers/docker-stp/base_image_files/stpctl new file mode 100644 index 000000000000..ee3420db2395 --- /dev/null +++ b/dockers/docker-stp/base_image_files/stpctl @@ -0,0 +1,5 @@ +#!/bin/bash + +# -t option needed only for shell, not for commands + +docker exec -i stp stpctl "$@" diff --git a/dockers/docker-stp/critical_processes b/dockers/docker-stp/critical_processes new file mode 100644 index 000000000000..9a96b1df216a --- /dev/null +++ b/dockers/docker-stp/critical_processes @@ -0,0 +1,2 @@ +program:stpd +program:stpmgrd diff --git a/dockers/docker-stp/start.sh b/dockers/docker-stp/start.sh new file mode 100644 index 000000000000..ab233f77c6e5 --- /dev/null +++ b/dockers/docker-stp/start.sh @@ -0,0 +1,11 @@ +#!/usr/bin/env bash + +rm -f /var/run/rsyslogd.pid +rm -f /var/run/stpd/* +rm -f /var/run/stpmgrd/* + +supervisorctl start rsyslogd + +supervisorctl start stpd + +supervisorctl start stpmgrd diff --git a/dockers/docker-stp/supervisord.conf b/dockers/docker-stp/supervisord.conf new file mode 100644 index 000000000000..3320c11b4f4b --- /dev/null +++ b/dockers/docker-stp/supervisord.conf @@ -0,0 +1,36 @@ +[supervisord] +logfile_maxbytes=1MB +logfile_backups=2 +nodaemon=true + +[program:start.sh] +command=/usr/bin/start.sh +priority=1 +autostart=true +autorestart=false +stdout_logfile=syslog +stderr_logfile=syslog + +[program:rsyslogd] +command=/usr/sbin/rsyslogd -n +priority=2 +autostart=false +autorestart=false +stdout_logfile=syslog +stderr_logfile=syslog + +[program:stpd] +command=/usr/bin/stpd +priority=3 +autostart=false +autorestart=false +stdout_logfile=syslog +stderr_logfile=syslog + +[program:stpmgrd] +command=/usr/bin/stpmgrd +priority=3 +autostart=false +autorestart=false +stdout_logfile=syslog +stderr_logfile=syslog diff --git a/files/build_templates/init_cfg.json.j2 b/files/build_templates/init_cfg.json.j2 index f8083f040541..f227b2e47fdc 100644 --- a/files/build_templates/init_cfg.json.j2 +++ b/files/build_templates/init_cfg.json.j2 @@ -65,6 +65,7 @@ {% do features.append(("eventd","disabled", false, "enabled")) %} {%- elif include_system_eventd == "y" %} {% do features.append(("eventd", "enabled", false, "enabled")) %} +{%- if include_stp == "y" %}{% do features.append(("stp", "enabled", false, "enabled")) %}{% endif %} {%- endif %} "FEATURE": { {# delayed field if set, will start the feature systemd .timer unit instead of .service unit #} diff --git a/files/build_templates/stp.service.j2 b/files/build_templates/stp.service.j2 new file mode 100644 index 000000000000..9eb395a68c66 --- /dev/null +++ b/files/build_templates/stp.service.j2 @@ -0,0 +1,16 @@ +[Unit] +Description=STP container +Requires=updategraph.service swss.service +After=updategraph.service swss.service syncd.service +Before=ntp-config.service +BindsTo=sonic.target +After=sonic.target + +[Service] +User={{ sonicadmin_user }} +ExecStartPre=/usr/bin/{{docker_container_name}}.sh start +ExecStart=/usr/bin/{{docker_container_name}}.sh wait +ExecStop=/usr/bin/{{docker_container_name}}.sh stop + +[Install] +WantedBy=multi-user.target diff --git a/files/image_config/logrotate/rsyslog.j2 b/files/image_config/logrotate/rsyslog.j2 index b0a7ff7e7002..8622b23473e7 100644 --- a/files/image_config/logrotate/rsyslog.j2 +++ b/files/image_config/logrotate/rsyslog.j2 @@ -30,6 +30,7 @@ /var/log/syslog /var/log/teamd.log /var/log/telemetry.log +/var/log/stpd.log /var/log/gnmi.log /var/log/frr/bgpd.log /var/log/frr/zebra.log diff --git a/files/image_config/rsyslog/rsyslog.d/00-sonic.conf.j2 b/files/image_config/rsyslog/rsyslog.d/00-sonic.conf.j2 index a5b4689741dc..cecabc2d575f 100644 --- a/files/image_config/rsyslog/rsyslog.d/00-sonic.conf.j2 +++ b/files/image_config/rsyslog/rsyslog.d/00-sonic.conf.j2 @@ -52,3 +52,11 @@ if $msg startswith " telemetry" or ($msg startswith " dialout" )then { /var/log/telemetry.log stop } + +## stpd rules +if $programname contains "stp" then { + if not ($msg contains "STP_SYSLOG") then { + /var/log/stpd.log + stop + } +} diff --git a/rules/config b/rules/config index 8229160b0d78..2fb1d5ed0647 100644 --- a/rules/config +++ b/rules/config @@ -182,6 +182,9 @@ INCLUDE_GBSYNCD ?= y # INCLUDE_TEAMD - build docker-teamd for LAG protocol support INCLUDE_TEAMD ?= y +# INCLUDE_STP - build docker-stp for stp support +INCLUDE_STP = y + # INCLUDE_ROUTER_ADVERTISER - build docker-router-advertiser for router advertisements support INCLUDE_ROUTER_ADVERTISER ?= y diff --git a/rules/docker-stp.mk b/rules/docker-stp.mk new file mode 100644 index 000000000000..052203d4a49e --- /dev/null +++ b/rules/docker-stp.mk @@ -0,0 +1,30 @@ +# Docker image for STP + +DOCKER_STP_STEM = docker-stp +DOCKER_STP = $(DOCKER_STP_STEM).gz +DOCKER_STP_DBG = $(DOCKER_STP_STEM)-$(DBG_IMAGE_MARK).gz + +$(DOCKER_STP)_PATH = $(DOCKERS_PATH)/$(DOCKER_STP_STEM) + +$(DOCKER_STP)_DEPENDS += $(STP) $(SWSS) +$(DOCKER_STP)_DBG_DEPENDS = $($(DOCKER_CONFIG_ENGINE_BULLSEYE)_DBG_DEPENDS) +$(DOCKER_STP)_DBG_DEPENDS += $(STP) $(SWSS) + +$(DOCKER_STP)_DBG_IMAGE_PACKAGES = $($(DOCKER_CONFIG_ENGINE_BULLSEYE)_DBG_IMAGE_PACKAGES) + +ifeq ($(INCLUDE_STP), y) +SONIC_DOCKER_IMAGES += $(DOCKER_STP) +SONIC_INSTALL_DOCKER_IMAGES += $(DOCKER_STP) + +SONIC_DOCKER_DBG_IMAGES += $(DOCKER_STP_DBG) +SONIC_INSTALL_DOCKER_DBG_IMAGES += $(DOCKER_STP_DBG) +endif + +$(DOCKER_STP)_LOAD_DOCKERS = $(DOCKER_CONFIG_ENGINE_BULLSEYE) + +$(DOCKER_STP)_CONTAINER_NAME = stp +$(DOCKER_STP)_RUN_OPT += --net=host --privileged -t +$(DOCKER_STP)_RUN_OPT += -v /etc/sonic:/etc/sonic:ro +$(DOCKER_STP)_RUN_OPT += -v /host/warmboot:/var/warmboot + +$(DOCKER_STP)_BASE_IMAGE_FILES += stpctl:/usr/bin/stpctl diff --git a/rules/libevent.mk b/rules/libevent.mk new file mode 100644 index 000000000000..438b70ebd33e --- /dev/null +++ b/rules/libevent.mk @@ -0,0 +1,10 @@ +# libevent + +LIBEVENT_VERSION = 2.1.8 + +export LIBEVENT_VERSION + +LIBEVENT = libevent_$(LIBEVENT_VERSION)_amd64.deb +$(LIBEVENT)_DPKGFLAGS += --force-all +$(LIBEVENT)_SRC_PATH = $(SRC_PATH)/libevent +SONIC_MAKE_DEBS += $(LIBEVENT) diff --git a/rules/sonic-stp.mk b/rules/sonic-stp.mk new file mode 100644 index 000000000000..c37ecbd35610 --- /dev/null +++ b/rules/sonic-stp.mk @@ -0,0 +1,18 @@ +# STP package +# +STP_VERSION = 1.0.0 +export STP_VERSION + +STP = stp_$(STP_VERSION)_amd64.deb +$(STP)_SRC_PATH = $(SRC_PATH)/sonic-stp +$(STP)_DEPENDS += $(LIBEVENT) +$(STP)_DEPENDS += $(LIBSWSSCOMMON_DEV) +$(STP)_RDEPENDS += $(LIBSWSSCOMMON) +SONIC_DPKG_DEBS += $(STP) + +STP_DBG = stp-dbg_$(STP_VERSION)_amd64.deb +$(STP_DBG)_DEPENDS += $(STP) +$(STP_DBG)_RDEPENDS += $(STP) +$(eval $(call add_derived_package,$(STP),$(STP_DBG))) + +export STP diff --git a/rules/swss.mk b/rules/swss.mk index df12ade5a479..b68804887c1b 100644 --- a/rules/swss.mk +++ b/rules/swss.mk @@ -4,7 +4,7 @@ SWSS = swss_1.0.0_$(CONFIGURED_ARCH).deb $(SWSS)_SRC_PATH = $(SRC_PATH)/sonic-swss $(SWSS)_DEPENDS += $(LIBSAIREDIS_DEV) $(LIBSAIMETADATA_DEV) $(LIBTEAM_DEV) \ $(LIBTEAMDCTL) $(LIBTEAM_UTILS) $(LIBSWSSCOMMON_DEV) \ - $(LIBSAIVS) $(LIBSAIVS_DEV) \ + $(LIBSAIVS) $(LIBSAIVS_DEV) $(STP)\ $(PROTOBUF) $(PROTOBUF_LITE) $(PROTOBUF_DEV) $(LIB_SONIC_DASH_API) $(SWSS)_UNINSTALLS = $(LIBSAIVS_DEV) diff --git a/slave.mk b/slave.mk index 15abbc7259d9..dd28c2fb8440 100644 --- a/slave.mk +++ b/slave.mk @@ -437,6 +437,7 @@ $(info "BLDENV" : "$(BLDENV)") $(info "VS_PREPARE_MEM" : "$(VS_PREPARE_MEM)") $(info "INCLUDE_MGMT_FRAMEWORK" : "$(INCLUDE_MGMT_FRAMEWORK)") $(info "INCLUDE_ICCPD" : "$(INCLUDE_ICCPD)") +$(info "INCLUDE_STP" : "$(INCLUDE_STP)") $(info "INCLUDE_SYSTEM_TELEMETRY" : "$(INCLUDE_SYSTEM_TELEMETRY)") $(info "INCLUDE_SYSTEM_GNMI" : "$(INCLUDE_SYSTEM_GNMI)") $(info "INCLUDE_SYSTEM_EVENTD" : "$(INCLUDE_SYSTEM_EVENTD)") @@ -867,7 +868,7 @@ $(SONIC_INSTALL_DEBS) : $(DEBS_PATH)/%-install : .platform $$(addsuffix -install # put a lock here because dpkg does not allow installing packages in parallel if mkdir $(DEBS_PATH)/dpkg_lock &> /dev/null; then ifneq ($(CROSS_BUILD_ENVIRON),y) - { sudo DEBIAN_FRONTEND=noninteractive dpkg -i $(DEBS_PATH)/$* $(LOG) && rm -d $(DEBS_PATH)/dpkg_lock && break; } || { set +e; rm -d $(DEBS_PATH)/dpkg_lock; sudo lsof /var/lib/dpkg/lock-frontend; ps aux; exit 1 ; } + { sudo DEBIAN_FRONTEND=noninteractive dpkg -i $($*_DPKGFLAGS) $(DEBS_PATH)/$* $(LOG) && rm -d $(DEBS_PATH)/dpkg_lock && break; } || { set +e; rm -d $(DEBS_PATH)/dpkg_lock; sudo lsof /var/lib/dpkg/lock-frontend; ps aux; exit 1 ; } else # Relocate debian packages python libraries to the cross python virtual env location { sudo DEBIAN_FRONTEND=noninteractive dpkg -i $(if $(findstring $(LINUX_HEADERS),$*),--force-depends) $(DEBS_PATH)/$* $(LOG) && \ @@ -1445,6 +1446,7 @@ $(addprefix $(TARGET_PATH)/, $(SONIC_INSTALLERS)) : $(TARGET_PATH)/% : \ export include_dhcp_server="$(INCLUDE_DHCP_SERVER)" export include_mgmt_framework="$(INCLUDE_MGMT_FRAMEWORK)" export include_iccpd="$(INCLUDE_ICCPD)" + export include_stpd="$(INCLUDE_STP)" export pddf_support="$(PDDF_SUPPORT)" export include_pde="$(INCLUDE_PDE)" export shutdown_bgp_on_start="$(SHUTDOWN_BGP_ON_START)" From e920719336703d3a2ac444e08482ca3548c1af5c Mon Sep 17 00:00:00 2001 From: Divya Chandralekha Date: Wed, 2 Oct 2024 00:23:56 -0700 Subject: [PATCH 2/4] PVST co pr commit --- dockers/docker-stp/Dockerfile.j2 | 4 ++-- files/build_templates/stp.service.j2 | 3 +++ rules/docker-stp.mk | 9 +++++---- 3 files changed, 10 insertions(+), 6 deletions(-) diff --git a/dockers/docker-stp/Dockerfile.j2 b/dockers/docker-stp/Dockerfile.j2 index 34d8c1631f0e..b1513fa982a1 100644 --- a/dockers/docker-stp/Dockerfile.j2 +++ b/dockers/docker-stp/Dockerfile.j2 @@ -33,6 +33,6 @@ RUN apt-get clean -y && \ COPY ["start.sh", "/usr/bin/"] COPY ["supervisord.conf", "/etc/supervisor/conf.d/"] -COPY ["critical_processes", "/etc/supervisor/"] +COPY ["critical_processes", "/etc/supervisor"] -ENTRYPOINT ["/usr/bin/supervisord"] +ENTRYPOINT ["/usr/local/bin/supervisord"] diff --git a/files/build_templates/stp.service.j2 b/files/build_templates/stp.service.j2 index 9eb395a68c66..3cd5ac23d648 100644 --- a/files/build_templates/stp.service.j2 +++ b/files/build_templates/stp.service.j2 @@ -5,12 +5,15 @@ After=updategraph.service swss.service syncd.service Before=ntp-config.service BindsTo=sonic.target After=sonic.target +StartLimitIntervalSec=1200 +StartLimitBurst=3 [Service] User={{ sonicadmin_user }} ExecStartPre=/usr/bin/{{docker_container_name}}.sh start ExecStart=/usr/bin/{{docker_container_name}}.sh wait ExecStop=/usr/bin/{{docker_container_name}}.sh stop +RestartSec=30 [Install] WantedBy=multi-user.target diff --git a/rules/docker-stp.mk b/rules/docker-stp.mk index 052203d4a49e..d228db600495 100644 --- a/rules/docker-stp.mk +++ b/rules/docker-stp.mk @@ -6,12 +6,14 @@ DOCKER_STP_DBG = $(DOCKER_STP_STEM)-$(DBG_IMAGE_MARK).gz $(DOCKER_STP)_PATH = $(DOCKERS_PATH)/$(DOCKER_STP_STEM) -$(DOCKER_STP)_DEPENDS += $(STP) $(SWSS) +$(DOCKER_STP)_DEPENDS += $(STP) $(SWSS) $(SONIC_RSYSLOG_PLUGIN) $(DOCKER_STP)_DBG_DEPENDS = $($(DOCKER_CONFIG_ENGINE_BULLSEYE)_DBG_DEPENDS) -$(DOCKER_STP)_DBG_DEPENDS += $(STP) $(SWSS) +$(DOCKER_STP)_DBG_DEPENDS += $(STP) $(SWSS) $(SONIC_RSYSLOG_PLUGIN) $(DOCKER_STP)_DBG_IMAGE_PACKAGES = $($(DOCKER_CONFIG_ENGINE_BULLSEYE)_DBG_IMAGE_PACKAGES) +$(DOCKER_STP)_LOAD_DOCKERS = $(DOCKER_CONFIG_ENGINE_BULLSEYE) + ifeq ($(INCLUDE_STP), y) SONIC_DOCKER_IMAGES += $(DOCKER_STP) SONIC_INSTALL_DOCKER_IMAGES += $(DOCKER_STP) @@ -23,8 +25,7 @@ endif $(DOCKER_STP)_LOAD_DOCKERS = $(DOCKER_CONFIG_ENGINE_BULLSEYE) $(DOCKER_STP)_CONTAINER_NAME = stp -$(DOCKER_STP)_RUN_OPT += --net=host --privileged -t +$(DOCKER_STP)_RUN_OPT += --privileged -t $(DOCKER_STP)_RUN_OPT += -v /etc/sonic:/etc/sonic:ro -$(DOCKER_STP)_RUN_OPT += -v /host/warmboot:/var/warmboot $(DOCKER_STP)_BASE_IMAGE_FILES += stpctl:/usr/bin/stpctl From 0b8bff4c0d2a39de0bcd9ca586e35cca8db8c31c Mon Sep 17 00:00:00 2001 From: Divya Kumaran Chandralekha <66686927+divyachandralekha@users.noreply.github.com> Date: Wed, 2 Oct 2024 15:53:32 +0530 Subject: [PATCH 3/4] Update .gitmodules --- .gitmodules | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitmodules b/.gitmodules index 5793c876b338..870eaa2faa17 100644 --- a/.gitmodules +++ b/.gitmodules @@ -123,7 +123,7 @@ url = https://github.com/Marvell-switching/sonic-platform-arm64.git [submodule "platform/innovium/sonic-platform-marvell"] path = platform/innovium/sonic-platform-marvell - url = https://github.com/Marvell-switching/sonic-platform-marvell + url = https://github.com/Marvell-switching/sonic-platform-marvell [submodule "src/sonic-stp"] path = src/sonic-stp url = https://github.com/sonic-net/sonic-stp From 7480cb1bc0038215ed5d81f6629b5472cb4d1d1a Mon Sep 17 00:00:00 2001 From: Divya Chandralekha Date: Wed, 2 Oct 2024 00:23:56 -0700 Subject: [PATCH 4/4] PVST co pr commit --- src/libevent/Makefile | 20 ++++++++++++++++++++ src/libevent/debian/changelog | 4 ++++ src/libevent/debian/compat | 1 + src/libevent/debian/control | 18 ++++++++++++++++++ src/libevent/debian/rules | 16 ++++++++++++++++ 5 files changed, 59 insertions(+) create mode 100644 src/libevent/Makefile create mode 100644 src/libevent/debian/changelog create mode 100644 src/libevent/debian/compat create mode 100644 src/libevent/debian/control create mode 100644 src/libevent/debian/rules diff --git a/src/libevent/Makefile b/src/libevent/Makefile new file mode 100644 index 000000000000..50743ce40e17 --- /dev/null +++ b/src/libevent/Makefile @@ -0,0 +1,20 @@ +.ONESHELL: +SHELL = /bin/bash +.SHELLFLAGS += -e + +MAIN_TARGET = libevent_$(LIBEVENT_VERSION)_amd64.deb + +$(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% : + # Obtaining the libevent + rm -rf ./libevent-$(LIBEVENT_VERSION)-stable + wget -N "https://github.com/libevent/libevent/releases/download/release-2.1.8-stable/libevent-2.1.8-stable.tar.gz" + tar -xzf libevent-$(LIBEVENT_VERSION)-stable.tar.gz + rm -rf libevent-$(LIBEVENT_VERSION)-stable.tar.gz + cp debian libevent-$(LIBEVENT_VERSION)-stable -r + + pushd ./libevent-$(LIBEVENT_VERSION)-stable + dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS) + popd + mv $(MAIN_TARGET) $(DEST)/ + +#$(addprefix $(DEST)/, $(DERIVED_TARGETS)): $(DEST)/% : $(DEST)/$(MAIN_TARGET) diff --git a/src/libevent/debian/changelog b/src/libevent/debian/changelog new file mode 100644 index 000000000000..da450b541467 --- /dev/null +++ b/src/libevent/debian/changelog @@ -0,0 +1,4 @@ +sonic (2.1.8) stable; urgency=medium + + * libevent 2.1.8 stable version pulled github + -- LIBEVENT <@broadcom.com> Fri, 26 Apr 2019 12:00:00 -0800 diff --git a/src/libevent/debian/compat b/src/libevent/debian/compat new file mode 100644 index 000000000000..7f8f011eb73d --- /dev/null +++ b/src/libevent/debian/compat @@ -0,0 +1 @@ +7 diff --git a/src/libevent/debian/control b/src/libevent/debian/control new file mode 100644 index 000000000000..5be2936e55cc --- /dev/null +++ b/src/libevent/debian/control @@ -0,0 +1,18 @@ +Source: sonic +Maintainer: Broadcom +Section: net +Priority: optional +Build-Depends: dh-exec (>=0.3), debhelper (>= 9), autotools-dev +Standards-Version: 1.0.0 + +Package: libevent +Architecture: any +Depends: ${shlibs:Depends} +Description: This package contains Libevent2.1.8 for SONiC project. + +Package: libevent-dbg +Architecture: any +Section: debug +Priority: extra +Depends: libevent (=${binary:Version}) +Description: debugging symbols for libevent diff --git a/src/libevent/debian/rules b/src/libevent/debian/rules new file mode 100644 index 000000000000..a781d09adf5c --- /dev/null +++ b/src/libevent/debian/rules @@ -0,0 +1,16 @@ +#!/usr/bin/make -f + +DPKG_EXPORT_BUILDFLAGS = 1 +include /usr/share/dpkg/default.mk + +%: + dh $@ --with autotools-dev + +override_dh_auto_configure: + dh_auto_configure -- --disable-samples --disable-libevent-regress + +override_dh_auto_install: + dh_auto_install --destdir=debian/libevent + +override_dh_strip: + dh_strip --dbg-package=libevent-dbg