diff --git a/dash-pipeline/Makefile b/dash-pipeline/Makefile index 77eafe36b..ae9dcc903 100644 --- a/dash-pipeline/Makefile +++ b/dash-pipeline/Makefile @@ -214,6 +214,14 @@ SAI/lib/libsai.so: sai-headers sai-meta libsai-clean: rm -rf SAI/lib/* +libsai-debs: libsai + @echo "build dash libsai debian packages ..." + cd SAI/debian && make + +.PHONY: libsai-debs-clean +libsai-debs-clean: + cd SAI/debian && make clean + .PHONY:sai-clean sai-clean: SAI/SAI libsai-clean saithrift-server-clean @echo "Restoring SAI subdirectories to baseline..." diff --git a/dash-pipeline/SAI/debian/.gitignore b/dash-pipeline/SAI/debian/.gitignore new file mode 100644 index 000000000..af8fc55cf --- /dev/null +++ b/dash-pipeline/SAI/debian/.gitignore @@ -0,0 +1,3 @@ +*.deb +**/usr +**/DEBIAN/md5sums diff --git a/dash-pipeline/SAI/debian/Makefile b/dash-pipeline/SAI/debian/Makefile new file mode 100644 index 000000000..87ace1d3a --- /dev/null +++ b/dash-pipeline/SAI/debian/Makefile @@ -0,0 +1,29 @@ + +# TODO lib directory could be changed to /usr/local/lib + +VERSION=1.0.0 + +all: debs + +debs: libsai-dev_$(VERSION)_amd64.deb libsai_$(VERSION)_amd64.deb + +libsai-dev_$(VERSION)_amd64.deb: ../SAI/inc/*.h ../SAI/experimental/*.h + mkdir -p -m 755 libsai-dev_$(VERSION)_amd64/usr/include/sai + find -type d |xargs chmod go-w + install -vCD -m 644 ../SAI/inc/*.h libsai-dev_$(VERSION)_amd64/usr/include/sai/ + install -vCD -m 644 ../SAI/experimental/*.h libsai-dev_$(VERSION)_amd64/usr/include/sai/ + cd libsai-dev_$(VERSION)_amd64 && find usr -type f | xargs md5sum > DEBIAN/md5sums + dpkg-deb --build --root-owner-group libsai-dev_$(VERSION)_amd64 + +libsai_$(VERSION)_amd64.deb: ../lib/libsai.so + mkdir -p -m 755 libsai_$(VERSION)_amd64/usr/lib/x86_64-linux-gnu/ + find -type d |xargs chmod go-w + install -vCD ../lib/libsai.so libsai_$(VERSION)_amd64/usr/lib/x86_64-linux-gnu/libsai.so + cd libsai_$(VERSION)_amd64 && find usr -type f | xargs md5sum > DEBIAN/md5sums + dpkg-deb --build --root-owner-group libsai_$(VERSION)_amd64 + +.PHONY: clean + +clean: + rm -f *.deb */DEBIAN/md5sums + rm -rf libsai_$(VERSION)_amd64/usr libsai-dev_$(VERSION)_amd64/usr diff --git a/dash-pipeline/SAI/debian/libsai-dev_1.0.0_amd64/DEBIAN/control b/dash-pipeline/SAI/debian/libsai-dev_1.0.0_amd64/DEBIAN/control new file mode 100644 index 000000000..d99790f45 --- /dev/null +++ b/dash-pipeline/SAI/debian/libsai-dev_1.0.0_amd64/DEBIAN/control @@ -0,0 +1,8 @@ +Package: libsai-dev +Source: dash +Version: 1.0.0 +Architecture: amd64 +Maintainer: Kamil Cudnik +Section: libdevel +Priority: optional +Description: This package contains development files for DASH libsai diff --git a/dash-pipeline/SAI/debian/libsai_1.0.0_amd64/DEBIAN/control b/dash-pipeline/SAI/debian/libsai_1.0.0_amd64/DEBIAN/control new file mode 100644 index 000000000..4b942a729 --- /dev/null +++ b/dash-pipeline/SAI/debian/libsai_1.0.0_amd64/DEBIAN/control @@ -0,0 +1,8 @@ +Package: libsai +Source: dash +Version: 1.0.0 +Architecture: amd64 +Maintainer: Kamil Cudnik +Section: libs +Priority: optional +Description: This package contains DASH libsai diff --git a/dash-pipeline/SAI/debian/libsai_1.0.0_amd64/DEBIAN/shlibs b/dash-pipeline/SAI/debian/libsai_1.0.0_amd64/DEBIAN/shlibs new file mode 100644 index 000000000..93ca2571f --- /dev/null +++ b/dash-pipeline/SAI/debian/libsai_1.0.0_amd64/DEBIAN/shlibs @@ -0,0 +1 @@ +libsai 0 libsai diff --git a/dash-pipeline/SAI/debian/libsai_1.0.0_amd64/DEBIAN/triggers b/dash-pipeline/SAI/debian/libsai_1.0.0_amd64/DEBIAN/triggers new file mode 100644 index 000000000..dd8660367 --- /dev/null +++ b/dash-pipeline/SAI/debian/libsai_1.0.0_amd64/DEBIAN/triggers @@ -0,0 +1 @@ +activate-noawait ldconfig