summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorViacheslav Hletenko <v.gletenko@vyos.io>2024-03-13 17:13:28 +0200
committerGitHub <noreply@github.com>2024-03-13 17:13:28 +0200
commit1639080e893a9fcc735cf2ebfd92cf7ab6f90b70 (patch)
tree9eecae230eeb6f3e3e2ac735657d8cd7bfb2e18e
parent613a8b022974cca43ba3eec5b2bb85fd8892e90a (diff)
parentc0bb360c099ff5528f8f7c5aa593c8378f796a04 (diff)
downloadvyos-build-1639080e893a9fcc735cf2ebfd92cf7ab6f90b70.tar.gz
vyos-build-1639080e893a9fcc735cf2ebfd92cf7ab6f90b70.zip
Merge pull request #528 from c-po/radvd-T6118
radvd: T6118: add custom build support with recent source version
-rw-r--r--packages/radvd/.gitignore2
-rw-r--r--packages/radvd/Jenkinsfile30
-rwxr-xr-xpackages/radvd/build.sh29
3 files changed, 61 insertions, 0 deletions
diff --git a/packages/radvd/.gitignore b/packages/radvd/.gitignore
new file mode 100644
index 00000000..142acc2d
--- /dev/null
+++ b/packages/radvd/.gitignore
@@ -0,0 +1,2 @@
+radvd/
+*.deb
diff --git a/packages/radvd/Jenkinsfile b/packages/radvd/Jenkinsfile
new file mode 100644
index 00000000..f6d92ab4
--- /dev/null
+++ b/packages/radvd/Jenkinsfile
@@ -0,0 +1,30 @@
+// Copyright (C) 2024 VyOS maintainers and contributors
+//
+// This program is free software; you can redistribute it and/or modify
+// in order to easy exprort images built to "external" world
+// it under the terms of the GNU General Public License version 2 or later as
+// published by the Free Software Foundation.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see <http://www.gnu.org/licenses/>.
+@NonCPS
+
+// Using a version specifier library, use 'current' branch. The underscore (_)
+// is not a typo! You need this underscore if the line immediately after the
+// @Library annotation is not an import statement!
+@Library('vyos-build@sagitta')_
+
+def pkgList = [
+ ['name': 'radvd',
+ 'scmCommit': 'f2de4764559',
+ 'scmUrl': 'https://github.com/radvd-project/radvd',
+ 'buildCmd': 'cd ..; ./build.sh'],
+]
+
+// Start package build using library function from https://github.com/vyos/vyos-build
+buildPackage('radvd', pkgList, null, true, "**/packages/radvd/**")
diff --git a/packages/radvd/build.sh b/packages/radvd/build.sh
new file mode 100755
index 00000000..36057e27
--- /dev/null
+++ b/packages/radvd/build.sh
@@ -0,0 +1,29 @@
+#!/bin/sh
+SRC=radvd
+if [ ! -d $SRC ]; then
+ echo "source directory $SRC does not exist!"
+ echo "$ git clone https://github.com/radvd-project/radvd"
+ exit 1
+fi
+cd $SRC
+
+INSTALL_DIR=debian
+if [ -d $INSTALL_DIR ]; then
+ rm -rf $INSTALL_DIR
+fi
+
+./autogen.sh
+./configure
+make
+
+install --directory debian/lib/systemd/system debian/usr/sbin
+install --mode 0644 radvd.service debian/lib/systemd/system
+install --strip --mode 0755 radvd debian/usr/sbin
+
+# Version' field value 'v0.14-20-g613277f': version number does not start with digit
+# "cut" first character from version string
+fpm --input-type dir --output-type deb --name radvd \
+ --version $(git describe --always | cut -c2- | tr _ -) --deb-compression gz \
+ --maintainer "VyOS Package Maintainers <maintainers@vyos.net>" \
+ --description "RADVD router advertisement daemon" \
+ --license "RADVD" -C $INSTALL_DIR --package ..