aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRomain Forlot <romain.forlot@iot.bzh>2018-10-25 11:38:38 +0200
committerRomain Forlot <romain.forlot@iot.bzh>2018-10-26 10:43:36 +0200
commit91e90e59a593bea0ef1771a860140ae347692910 (patch)
treeae91484dd2f6b72d7bd27dd8dc48a0abf76bb215
parentafa8decdbbc2959a413c1d9d7cd054df4ea4e4ff (diff)
Add packaging materials
Files used by an OBS server to be able to build deb and rpm packages. The afb-test binding could be then used in a native environment. Change-Id: Ifd5ab363c90269bed949ff63315d228017de7d05 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
-rw-r--r--conf.d/packaging/deb/agl-app-afb-test.dsc22
-rw-r--r--conf.d/packaging/deb/debian.agl-app-afb-test-bin.install2
-rw-r--r--conf.d/packaging/deb/debian.agl-app-afb-test-dev.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.control20
-rw-r--r--conf.d/packaging/deb/debian.rules85
-rw-r--r--conf.d/packaging/project_version.patch13
-rw-r--r--conf.d/packaging/rpm/agl-app-afb-test.spec94
9 files changed, 243 insertions, 0 deletions
diff --git a/conf.d/packaging/deb/agl-app-afb-test.dsc b/conf.d/packaging/deb/agl-app-afb-test.dsc
new file mode 100644
index 0000000..ee57c95
--- /dev/null
+++ b/conf.d/packaging/deb/agl-app-afb-test.dsc
@@ -0,0 +1,22 @@
+Format: 1.0
+Source: agl-app-afb-test
+Binary: agl-app-afb-test-bin, agl-app-afb-test-dev
+Architecture: any
+Version: 2.0-0
+Maintainer: unknown <unknown@debian.org>
+Standards-Version: 3.8.2
+Homepage: https://gerrit.automotivelinux.org/gerrit/apps/app-afb-test
+Build-Depends: debhelper (>= 5),
+ pkg-config,
+ dpkg-dev,
+ cmake,
+ agl-app-framework-binder-bin,
+ agl-app-framework-binder-dev,
+ gcc-c++,
+ lua5.3,
+ liblua5.3-dev,
+ libjson-c-dev,
+ libsystemd-dev,
+DEBTRANSFORM-RELEASE: 1
+Files:
+ app-afb-test_2.0.tar.gz
diff --git a/conf.d/packaging/deb/debian.agl-app-afb-test-bin.install b/conf.d/packaging/deb/debian.agl-app-afb-test-bin.install
new file mode 100644
index 0000000..4a7a01e
--- /dev/null
+++ b/conf.d/packaging/deb/debian.agl-app-afb-test-bin.install
@@ -0,0 +1,2 @@
+/opt/AGL/afm/applications/afTest/*
+/opt/AGL/bin/afm-test
diff --git a/conf.d/packaging/deb/debian.agl-app-afb-test-dev.install b/conf.d/packaging/deb/debian.agl-app-afb-test-dev.install
new file mode 100644
index 0000000..699f573
--- /dev/null
+++ b/conf.d/packaging/deb/debian.agl-app-afb-test-dev.install
@@ -0,0 +1 @@
+/opt/AGL/lib/pkgconfig/*.pc
diff --git a/conf.d/packaging/deb/debian.changelog b/conf.d/packaging/deb/debian.changelog
new file mode 100644
index 0000000..552fc6d
--- /dev/null
+++ b/conf.d/packaging/deb/debian.changelog
@@ -0,0 +1,5 @@
+agl-app-afb-test (2.0-0) unstable; urgency=low
+
+ * init build
+
+ -- Romain Forlot <romain.forlot@iot.bzh> Thu, 25 Oct 2018 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..ec63514
--- /dev/null
+++ b/conf.d/packaging/deb/debian.compat
@@ -0,0 +1 @@
+9
diff --git a/conf.d/packaging/deb/debian.control b/conf.d/packaging/deb/debian.control
new file mode 100644
index 0000000..feffc1b
--- /dev/null
+++ b/conf.d/packaging/deb/debian.control
@@ -0,0 +1,20 @@
+Priority: optional
+Maintainer: unknown <unknown@debian.org>
+Source: agl-app-afb-test
+Build-Depends:
+ debhelper (>= 5),
+ pkg-config,
+ cmake,
+Standards-Version: 3.8.2
+Homepage: https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/app-afb-test
+
+Package: agl-app-afb-test-bin
+Section: libs
+Architecture: any
+Description: agl-app-afb-test
+
+Package: agl-app-afb-test-dev
+Section: libs
+Architecture: any
+Depends: agl-app-afb-test-bin
+Description: agl-app-afb-test-devel
diff --git a/conf.d/packaging/deb/debian.rules b/conf.d/packaging/deb/debian.rules
new file mode 100644
index 0000000..5a71d2a
--- /dev/null
+++ b/conf.d/packaging/deb/debian.rules
@@ -0,0 +1,85 @@
+#!/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
+ patch -p1 < ../SOURCES/project_version.patch
+ mkdir -p build
+ export PKG_CONFIG_PATH=/opt/AGL/lib/$(DEB_HOST_MULTIARCH)/pkgconfig
+ cd build && \
+ cmake -DCMAKE_INSTALL_PREFIX:PATH=/opt/AGL -DCMAKE_BUILD_TYPE=DEBUG .. && \
+ $(MAKE)
+ touch build-stamp
+
+clean:
+ #dh_testdir
+ dh_testroot
+ rm -f configure-stamp build-stamp
+ [ ! -f Makefile ] || $(MAKE) distclean
+ #dh_clean
+
+install: build
+ dh_testdir
+ dh_testroot
+ dh_prep
+ dh_installdirs
+ # Add here commands to install the package into debian/tmp
+ cd build && \
+ make install DESTDIR=/usr/src/packages/BUILD/debian/tmp
+ mkdir -p /usr/src/packages/BUILD/debian/tmp/opt/AGL/afm/applications/
+ mv /usr/src/packages/BUILD/debian/tmp/opt/AGL/afTest /usr/src/packages/BUILD/debian/tmp/opt/AGL/afm/applications/
+ # Move all files in their corresponding package
+ dh_install --list-missing -a --sourcedir=debian/tmp
+ # empty dependency_libs in .la files
+
+# 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
diff --git a/conf.d/packaging/project_version.patch b/conf.d/packaging/project_version.patch
new file mode 100644
index 0000000..0e9ab8f
--- /dev/null
+++ b/conf.d/packaging/project_version.patch
@@ -0,0 +1,13 @@
+diff --git a/conf.d/app-templates/cmake/common.cmake b/conf.d/app-templates/cmake/common.cmake
+index 77ecd3f..f17a567 100644
+--- a/conf.d/app-templates/cmake/common.cmake
++++ b/conf.d/app-templates/cmake/common.cmake
+@@ -100,7 +100,7 @@ configure_files_in_dir(${PROJECT_APP_TEMPLATES_DIR}/${ENTRY_POINT}/template.d)
+ configure_files_in_dir($ENV{HOME}/.config/app-templates/scripts)
+ configure_files_in_dir(/etc/app-templates/scripts)
+
+-check_version()
++#check_version()
+ project_targets_populate()
+ remote_targets_populate()
+ project_package_build()
diff --git a/conf.d/packaging/rpm/agl-app-afb-test.spec b/conf.d/packaging/rpm/agl-app-afb-test.spec
new file mode 100644
index 0000000..bf02a07
--- /dev/null
+++ b/conf.d/packaging/rpm/agl-app-afb-test.spec
@@ -0,0 +1,94 @@
+#
+# spec file for package app-afb-test
+#
+
+%define _prefix /opt/AGL
+%define __cmake cmake
+
+%if 0%{?fedora_version}
+%global debug_package %{nil}
+%endif
+
+Name: agl-app-afb-test
+# WARNING {name} is not used for tar file name in source nor for setup
+# Check hard coded values required to match git directory naming
+Version: 2.0
+Release: 0
+License: Apache-2.0
+Summary: AGL app-afb-test
+Group: Development/Libraries/C and C++
+Url: https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/app-afb-test
+Source: app-afb-test-%{version}.tar.gz
+Patch0: project_version.patch
+BuildRequires: pkgconfig(lua) >= 5.3
+BuildRequires: cmake
+BuildRequires: gcc-c++
+BuildRequires: pkgconfig(json-c)
+BuildRequires: pkgconfig(afb-daemon)
+BuildRequires: pkgconfig(libsystemd) >= 222
+
+BuildRoot: %{_tmppath}/%{name}-%{version}-build
+
+%description
+This is a migration of former app-templates git submodule which let you ease the
+development of apps and widget building.
+
+%package devel
+Group: Development/Libraries/C and C++
+Requires: %{name} = %{version}
+Provides: pkgconfig(%{name}) = %{version}
+Summary: AGL app-afb-test-devel
+%description devel
+This is a migration of former app-templates git submodule which let you ease the
+development of apps and widget building.
+
+%prep
+%setup -q -n app-afb-test-%{version}
+%patch0 -p1
+
+%build
+export PKG_CONFIG_PATH=%{_libdir}/pkgconfig
+[ ! -d build ] && mkdir build
+cd build
+cmake -DCMAKE_BUILD_TYPE=DEBUG ..
+%__make %{?_smp_mflags}
+
+%install
+[ -d build ] && cd build
+%make_install
+mkdir -p %{buildroot}%{_prefix}/afm/applications/afTest/%{version}
+mv %{buildroot}%{_prefix}/afTest/* %{buildroot}/%{_prefix}/afm/applications/afTest/%{version}
+rmdir %{buildroot}/%{_prefix}/afTest
+
+%post
+
+%postun
+
+%files
+%defattr(-,root,root)
+%dir %{_prefix}
+%dir %{_bindir}
+%{_bindir}/afm-test
+%dir %{_prefix}/afm/
+%dir %{_prefix}/afm/applications/
+%dir %{_prefix}/afm/applications/afTest/
+%dir %{_prefix}/afm/applications/afTest/%{version}/
+%dir %{_prefix}/afm/applications/afTest/%{version}/etc
+%{_prefix}/afm/applications/afTest/%{version}/etc/aft-afbtest.json
+%dir %{_prefix}/afm/applications/afTest/%{version}/bin
+%dir %{_prefix}/afm/applications/afTest/%{version}/lib
+%{_prefix}/afm/applications/afTest/%{version}/lib/aft.so
+%dir %{_prefix}/afm/applications/afTest/%{version}/htdocs
+%dir %{_prefix}/afm/applications/afTest/%{version}/var
+%{_prefix}/afm/applications/afTest/%{version}/var/aft.lua
+%{_prefix}/afm/applications/afTest/%{version}/var/luaunit.lua
+
+%files devel
+%defattr(-,root,root)
+%dir %{_prefix}
+%dir %{_libdir}/pkgconfig
+%{_libdir}/pkgconfig/*.pc
+
+%changelog
+* Thu Oct 25 2018 Romain
+- initial creation