summaryrefslogtreecommitdiffstats
path: root/conf.d/packaging/deb
diff options
context:
space:
mode:
authorRonan Le Martret <ronan.lemartret@iot.bzh>2018-05-15 17:18:06 +0200
committerRonan Le Martret <ronan.lemartret@iot.bzh>2018-05-15 17:30:52 +0200
commit72c9174cecdfbe4cde9baa71c0c02d0bee753224 (patch)
treed7a92e6a059398d1c98666052cbed826b2064139 /conf.d/packaging/deb
parentf7993c2552f007f34bfbd1865951d9243923276e (diff)
Add packaging files
* it's easier to manage native build package. Signed-off-by: Ronan Le Martret <ronan.lemartret@iot.bzh>
Diffstat (limited to 'conf.d/packaging/deb')
-rw-r--r--conf.d/packaging/deb/agl-xds-agent.dsc11
-rw-r--r--conf.d/packaging/deb/agl-xds-agent.install1
-rw-r--r--conf.d/packaging/deb/debian.changelog5
-rw-r--r--conf.d/packaging/deb/debian.compat1
-rw-r--r--conf.d/packaging/deb/debian.control13
-rw-r--r--conf.d/packaging/deb/debian.rules111
6 files changed, 142 insertions, 0 deletions
diff --git a/conf.d/packaging/deb/agl-xds-agent.dsc b/conf.d/packaging/deb/agl-xds-agent.dsc
new file mode 100644
index 0000000..7034c51
--- /dev/null
+++ b/conf.d/packaging/deb/agl-xds-agent.dsc
@@ -0,0 +1,11 @@
+Format: 1.0
+Source: agl-xds-agent
+Binary: agl-xds-agent
+Architecture: any
+Version: 1.1.1
+Maintainer: Sebastien Douheret <sebastien@iot.bzh>
+Standards-Version: 3.8.2
+Homepage: https://github.com/iotbzh/xds-agent.git
+Build-Depends: debhelper (>= 5),
+ unzip
+Debtransform-Tar: xds-agent_linux-amd64-v1.1.1_2018-04-05_112625.zip
diff --git a/conf.d/packaging/deb/agl-xds-agent.install b/conf.d/packaging/deb/agl-xds-agent.install
new file mode 100644
index 0000000..6399692
--- /dev/null
+++ b/conf.d/packaging/deb/agl-xds-agent.install
@@ -0,0 +1 @@
+/opt/AGL/*
diff --git a/conf.d/packaging/deb/debian.changelog b/conf.d/packaging/deb/debian.changelog
new file mode 100644
index 0000000..321b83b
--- /dev/null
+++ b/conf.d/packaging/deb/debian.changelog
@@ -0,0 +1,5 @@
+agl-xds-agent (0.0.1-0) unstable; urgency=low
+
+ * init build
+
+ -- Sebastien Douheret <sebastien@iot.bzh> Tue, 27 Jun 2017 10:50:38 +0100
diff --git a/conf.d/packaging/deb/debian.compat b/conf.d/packaging/deb/debian.compat
new file mode 100644
index 0000000..45a4fb7
--- /dev/null
+++ b/conf.d/packaging/deb/debian.compat
@@ -0,0 +1 @@
+8
diff --git a/conf.d/packaging/deb/debian.control b/conf.d/packaging/deb/debian.control
new file mode 100644
index 0000000..afe4157
--- /dev/null
+++ b/conf.d/packaging/deb/debian.control
@@ -0,0 +1,13 @@
+Priority: optional
+Maintainer: Sebastien Douheret <sebastien@iot.bzh>
+Source: agl-xds-agent
+Build-Depends: debhelper (>= 5),
+ unzip
+Standards-Version: 3.8.2
+Homepage: https://github.com/iotbzh/xds-agent.git
+
+Package: agl-xds-agent
+Section: libs
+Architecture: any
+Description: agl-xds-agent
+
diff --git a/conf.d/packaging/deb/debian.rules b/conf.d/packaging/deb/debian.rules
new file mode 100644
index 0000000..b768ce6
--- /dev/null
+++ b/conf.d/packaging/deb/debian.rules
@@ -0,0 +1,111 @@
+#!/usr/bin/make -f
+# -*- makefile -*-
+# Uncomment this to turn on verbose mode.
+export DH_VERBOSE=1
+
+# These are used for cross-compiling and for saving the configure script
+# from having to guess our platform (since we know it already)
+DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
+DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
+
+
+CFLAGS = -Wall -g
+
+ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
+ CFLAGS += -O0
+else
+ CFLAGS += -O2
+endif
+ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
+ INSTALL_PROGRAM += -s
+endif
+
+configure: configure-stamp
+configure-stamp:
+ dh_testdir
+ #
+ touch configure-stamp
+
+build: build-stamp
+build-stamp: configure-stamp
+ dh_testdir
+ touch build-stamp
+
+clean:
+ #dh_testdir
+ dh_testroot
+ rm -f configure-stamp build-stamp
+ [ ! -f Makefile ] || $(MAKE) distclean
+ #dh_clean
+
+
+NAME=agl-xds-agent
+INSTALL_XDS_DIR=/opt/AGL/xds/agent
+INSTALL_BIN_DIR=/opt/AGL/bin
+
+DEB_BASE_DIR=debian/$(NAME)
+DEB_INSTALL_XDS_DIR=$(DEB_BASE_DIR)/$(INSTALL_XDS_DIR)
+DEB_INSTALL_BIN_DIR=$(DEB_BASE_DIR)/$(INSTALL_BIN_DIR)
+
+install: build
+ dh_testdir
+ dh_testroot
+ dh_prep
+ dh_installdirs
+ # Add here commands to install the package into debian/tmp
+ mkdir -p $(DEB_INSTALL_XDS_DIR) $(DEB_INSTALL_BIN_DIR)
+ find . -maxdepth 1 ! -name debian -exec cp -r {} $(DEB_INSTALL_XDS_DIR) \;
+ rm -fr $(DEB_INSTALL_XDS_DIR)/debian $(DEB_INSTALL_XDS_DIR)/*-stamp
+ cd $(DEB_INSTALL_BIN_DIR) && ln -s ../xds/agent/xds-agent
+ # Install service files
+ mkdir -p $(DEB_BASE_DIR)/usr/lib/systemd/user
+ cp $(DEB_INSTALL_XDS_DIR)/conf.d/usr/lib/systemd/user/xds-agent.service $(DEB_BASE_DIR)/usr/lib/systemd/user
+ mkdir -p $(DEB_BASE_DIR)/etc/default $(DEB_BASE_DIR)/etc/xds/agent
+ cp $(DEB_INSTALL_XDS_DIR)/conf.d/etc/default/xds-agent $(DEB_BASE_DIR)/etc/default/
+ cp $(DEB_INSTALL_XDS_DIR)/conf.d/etc/xds/agent/* $(DEB_BASE_DIR)/etc/xds/agent/
+ mkdir -p $(DEB_BASE_DIR)/etc/systemd/user/multi-user.target.wants
+ ln -s /usr/lib/systemd/user/xds-agent.service $(DEB_BASE_DIR)/etc/systemd/user/multi-user.target.wants/
+
+ # Add XDS in user's PATH
+ mkdir -p $(DEB_BASE_DIR)/etc/profile.d
+ sed -e "s;@XDS_INSTALL_BIN_DIR@;$(INSTALL_BIN_DIR);g" $(DEB_INSTALL_XDS_DIR)/conf.d/etc/profile.d/xds-agent.sh > $(DEB_BASE_DIR)/etc/profile.d/$(NAME).sh
+
+ # Cleanup
+ rm -rf $(DEB_INSTALL_XDS_DIR)/conf.d
+
+ # Move all files in their corresponding package
+ dh_install --list-missing -s --sourcedir=debian/tmp
+
+postinst: install
+ if [ -f "/etc/xds-agent/config.json" ]; then
+ install -b -S .rpmsave /etc/xds-agent/config.json /etc/xds/agent/agent-config.json
+ fi
+
+prerm:
+ rm -f /etc/xds-agent/*.rpm*
+
+# Build architecture-independent files here.
+binary-indep: build install
+# We have nothing to do by default.
+
+# Build architecture-dependent files here.
+binary-arch: build install
+ dh_testdir
+ dh_testroot
+ dh_installchangelogs
+ dh_installdocs
+ dh_installexamples
+ dh_installman
+ dh_link
+ dh_strip
+ dh_compress
+ dh_fixperms
+ dh_makeshlibs -V
+ dh_installdeb
+ #dh_shlibdeps
+ dh_gencontrol
+ dh_md5sums
+ dh_builddeb
+
+binary: binary-indep binary-arch
+.PHONY: build clean binary-indep binary-arch binary install