summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorNimrod Maclomhair2016-05-27 16:34:55 +0200
committerNimrod Maclomhair2016-05-27 20:44:14 +0200
commit841180ffd59284d89f4ac20f80099ea6f2d34030 (patch)
tree4332d979e1eaf30981b555eb0d4f5837debe5247
downloadaur-841180ffd59284d89f4ac20f80099ea6f2d34030.tar.gz
First working version of the PKGBUILD.
-rw-r--r--.SRCINFO21
-rw-r--r--PKGBUILD50
-rw-r--r--olsrd.install12
-rw-r--r--olsrd.service12
4 files changed, 95 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..fe134cad8b0c
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,21 @@
+pkgbase = olsrd
+ pkgdesc = The olsr.org implementation of the Optimized Link State Routing Protocol.
+ pkgver = 0.9.0.3
+ pkgrel = 1
+ url = http://www.olsr.org/mediawiki/index.php/Olsrd
+ install = olsrd.install
+ arch = i686
+ arch = x86_64
+ arch = armv6h
+ license = custom
+ makedepends = bison
+ makedepends = flex
+ source = https://github.com/OLSR/olsrd/archive/v0.9.0.3.tar.gz
+ source = olsrd.install
+ source = olsrd.service
+ sha256sums = 1b1a64e73109d8bfbc8cc10432baaca6f6da9adddade196b7f8caa5f01f86e09
+ sha256sums = 16b93b2e9d6e80e554b5b49b4a12fe17bd831d54015b4e3de7f452bb14e6c33e
+ sha256sums = 321f2e0d30af597a38442eb8f039757767efc5da88205b85cf96819384c94ac7
+
+pkgname = olsrd
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..5f46dec921eb
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,50 @@
+# Maintainer: Nimrod Maclomair <nimrod4garoa at gmail dot com>
+pkgname=olsrd
+pkgrel=1
+pkgver=0.9.0.3
+pkgdesc='The olsr.org implementation of the Optimized Link State Routing Protocol.'
+arch=('i686' 'x86_64' 'armv6h')
+url='http://www.olsr.org/mediawiki/index.php/Olsrd'
+license=('custom')
+depends=()
+makedepends=('bison' 'flex')
+install='olsrd.install'
+source=('https://github.com/OLSR/olsrd/archive/v0.9.0.3.tar.gz'
+ 'olsrd.install'
+ 'olsrd.service')
+sha256sums=('1b1a64e73109d8bfbc8cc10432baaca6f6da9adddade196b7f8caa5f01f86e09'
+ '16b93b2e9d6e80e554b5b49b4a12fe17bd831d54015b4e3de7f452bb14e6c33e'
+ '321f2e0d30af597a38442eb8f039757767efc5da88205b85cf96819384c94ac7')
+
+build(){
+ cd $pkgname-$pkgver
+ make build_all
+}
+
+package(){
+
+ mkdir instroot
+ cd $pkgname-$pkgver
+ make DESTDIR=`pwd`/../instroot install_all
+ cd ..
+
+ # manual install, because make install seems messed up to me.
+ mkdir --parents $pkgdir/etc/olsrd
+ mkdir --parents $pkgdir/usr/bin
+ mkdir --parents $pkgdir/usr/lib/${pkgname}
+ mkdir --parents $pkgdir/usr/share/licenses/${pkgname}
+ mkdir --parents $pkgdir/usr/share/man/{man5,man8}
+ mkdir --parents $pkgdir/usr/lib/systemd/system
+
+ mv instroot/etc/olsrd/* $pkgdir/etc/olsrd/
+ mv instroot/usr/local/lib/libOlsrdPudWireFormat.so* $pkgdir/usr/lib/
+ mv instroot/usr/local/lib/libnmea.so* $pkgdir/usr/lib/
+ mv instroot/usr/local/lib/* $pkgdir/usr/lib/${pkgname}/
+ mv instroot/usr/local/sbin/* $pkgdir/usr/bin/
+ mv instroot/usr/local/share/man/man5/* $pkgdir/usr/share/man/man5/
+ mv instroot/usr/local/share/man/man8/* $pkgdir/usr/share/man/man8/
+
+ mv $pkgname-$pkgver/license.txt $pkgdir/usr/share/licenses/${pkgname}/LICENSE
+
+ cp 'olsrd.service' $pkgdir/usr/lib/systemd/system/
+}
diff --git a/olsrd.install b/olsrd.install
new file mode 100644
index 000000000000..9f2fa03aa4bb
--- /dev/null
+++ b/olsrd.install
@@ -0,0 +1,12 @@
+
+post_install(){
+ echo "Updating linker cache so olsrd2 finds it's libs instantly."
+ ldconfig
+ echo "Attention: When configuring plugins, you likely need to specify the full path."
+ echo "Attention: The libraries are installed in /usr/lib/olsrd/"
+}
+
+post_upgrade(){
+ echo "Updating linker cache so olsrd2 finds it's libs instantly."
+ ldconfig
+}
diff --git a/olsrd.service b/olsrd.service
new file mode 100644
index 000000000000..ee053e3e4a73
--- /dev/null
+++ b/olsrd.service
@@ -0,0 +1,12 @@
+# service file for olsrd.
+[Unit]
+Description=Optimized Link State Routing Daemon
+Requires=network.target
+After=network.target
+
+[Service]
+Type=forking
+ExecStart=/usr/bin/olsrd -f /etc/olsrd/olsrd.conf
+
+[Install]
+WantedBy=multi-user.target