963217891e
Why I did it Added Support for Alphanetworks SNJ60D0-320F platform How I did it Implemented the support for Alphanetworks SNJ60D0-320F platform Platform: x86_64-alphanetworks_snj60d0_320f-r0 HwSKU: Alphanetworks-SNJ60D0-320F ASIC: broadcom ASIC Count: 1 How to verify it Verified the show command outputs
102 lines
3.1 KiB
Makefile
102 lines
3.1 KiB
Makefile
#!/usr/bin/make -f
|
|
# -*- makefile -*-
|
|
# Sample debian/rules that uses debhelper.
|
|
# This file was originally written by Joey Hess and Craig Small.
|
|
# As a special exception, when this file is copied by dh-make into a
|
|
# dh-make output file, you may use that output file without restriction.
|
|
# This special exception was added by Craig Small in version 0.37 of dh-make.
|
|
|
|
include /usr/share/dpkg/pkg-info.mk
|
|
|
|
# Uncomment this to turn on verbose mode.
|
|
#export DH_VERBOSE=1
|
|
|
|
export INSTALL_MOD_DIR:=extra
|
|
|
|
PYTHON ?= python2
|
|
|
|
PACKAGE_PRE_NAME := sonic-platform-alphanetworks
|
|
KVERSION ?= $(shell uname -r)
|
|
KERNEL_SRC := /lib/modules/$(KVERSION)
|
|
MOD_SRC_DIR:= $(shell pwd)
|
|
MODULE_DIRS:= snh60a0-320fv2 snh60b0-640f snj60d0-320f
|
|
MODULE_DIR := modules
|
|
UTILS_DIR := utils
|
|
SERVICE_DIR := service
|
|
CLASSES_DIR := classes
|
|
CONF_DIR := conf
|
|
|
|
%:
|
|
dh $@ --with systemd,python2,python3 --buildsystem=pybuild
|
|
|
|
clean:
|
|
dh_testdir
|
|
dh_testroot
|
|
dh_clean
|
|
|
|
build:
|
|
#make modules -C $(KERNEL_SRC)/build M=$(MODULE_SRC)
|
|
(for mod in $(MODULE_DIRS); do \
|
|
make modules -C $(KERNEL_SRC)/build M=$(MOD_SRC_DIR)/$${mod}/modules; \
|
|
cd $(MOD_SRC_DIR)/$${mod}; \
|
|
$(PYTHON) setup.py build; \
|
|
$(PYTHON) setup.py bdist_wheel -d $(MOD_SRC_DIR)/$${mod}/utils; \
|
|
if [ $$mod = "snj60d0-320f" ]; then \
|
|
python3 setup.py build; \
|
|
python3 setup.py bdist_wheel -d $(MOD_SRC_DIR)/$${mod}/utils; \
|
|
fi; \
|
|
cd $(MOD_SRC_DIR); \
|
|
done)
|
|
|
|
binary: binary-arch binary-indep
|
|
# Nothing to do
|
|
|
|
binary-arch:
|
|
# Nothing to do
|
|
|
|
#install: build
|
|
#dh_testdir
|
|
#dh_testroot
|
|
#dh_clean -k
|
|
#dh_installdirs
|
|
|
|
binary-indep:
|
|
dh_testdir
|
|
dh_installdirs
|
|
|
|
# Custom package commands
|
|
(for mod in $(MODULE_DIRS); do \
|
|
dh_installdirs -p$(PACKAGE_PRE_NAME)-$${mod} $(KERNEL_SRC)/$(INSTALL_MOD_DIR); \
|
|
dh_installdirs -p$(PACKAGE_PRE_NAME)-$${mod} usr/local/bin; \
|
|
platform_name=`echo $${mod} | sed "s/-/_/g"`; \
|
|
dh_installdirs -p$(PACKAGE_PRE_NAME)-$${mod} usr/share/sonic/device/x86_64-alphanetworks_$${platform_name}-r0; \
|
|
dh_installdirs -p$(PACKAGE_PRE_NAME)-$${mod} lib/systemd/system; \
|
|
cp $(MOD_SRC_DIR)/$${mod}/$(MODULE_DIR)/*.ko debian/$(PACKAGE_PRE_NAME)-$${mod}/$(KERNEL_SRC)/$(INSTALL_MOD_DIR); \
|
|
cp $(MOD_SRC_DIR)/$${mod}/$(UTILS_DIR)/*.py debian/$(PACKAGE_PRE_NAME)-$${mod}/usr/local/bin/; \
|
|
cp $(MOD_SRC_DIR)/$${mod}/$(UTILS_DIR)/*.whl debian/$(PACKAGE_PRE_NAME)-$${mod}/usr/share/sonic/device/x86_64-alphanetworks_$${platform_name}-r0; \
|
|
cp $(MOD_SRC_DIR)/$${mod}/$(SERVICE_DIR)/*.service debian/$(PACKAGE_PRE_NAME)-$${mod}/lib/systemd/system/; \
|
|
cd $(MOD_SRC_DIR)/$${mod}; \
|
|
$(PYTHON) setup.py install --root=$(MOD_SRC_DIR)/debian/$(PACKAGE_PRE_NAME)-$${mod} --install-layout=deb; \
|
|
if [ $$mod = "snj60d0-320f" ]; then \
|
|
python3 setup.py install --root=$(MOD_SRC_DIR)/debian/$(PACKAGE_PRE_NAME)-$${mod} --install-layout=deb; \
|
|
fi; \
|
|
cd $(MOD_SRC_DIR); \
|
|
done)
|
|
# Resuming debhelper scripts
|
|
dh_testroot
|
|
dh_install
|
|
dh_installchangelogs
|
|
dh_installdocs
|
|
dh_systemd_enable
|
|
dh_installinit
|
|
dh_systemd_start
|
|
dh_link
|
|
dh_fixperms
|
|
dh_compress
|
|
dh_strip
|
|
dh_installdeb
|
|
dh_gencontrol
|
|
dh_md5sums
|
|
dh_builddeb
|
|
.PHONY: build binary binary-arch binary-indep clean
|