[Debian-iot-packaging] [alljoyn-services-1604] 02/02: Import Debian patch 16.04-2

Thorsten Alteholz alteholz at moszumanska.debian.org
Tue Oct 11 18:11:52 UTC 2016


This is an automated email from the git hooks/post-receive script.

alteholz pushed a commit to branch master
in repository alljoyn-services-1604.

commit 1a9a586bcd05f38a134c919b37dfdbacaf77d0bb
Author: Thorsten Alteholz <debian at alteholz.de>
Date:   Tue Sep 13 18:28:32 2016 +0200

    Import Debian patch 16.04-2
---
 debian/README.Debian                            |  16 ++++
 debian/alljoyn-services-1604.install            |  21 +++++
 debian/changelog                                |  13 +++
 debian/clean                                    |   1 +
 debian/compat                                   |   1 +
 debian/control                                  |  71 +++++++++++++++
 debian/copyright                                |  18 ++++
 debian/liballjoynservices-dev-1604.install      |  16 ++++
 debian/liballjoynservices1509.lintian-overrides |   2 +
 debian/liballjoynservices1604.install           |   7 ++
 debian/patches/add-linux-pthread.patch          |  41 +++++++++
 debian/patches/hardening.patch                  |  76 ++++++++++++++++
 debian/patches/no-bsymbolic.patch               |  65 ++++++++++++++
 debian/patches/remove-alljoyn_config.patch      |  26 ++++++
 debian/patches/series                           |   7 ++
 debian/patches/soname.patch                     |  50 +++++++++++
 debian/patches/spelling.patch                   |  54 ++++++++++++
 debian/patches/use-global-build_core.patch      |  67 ++++++++++++++
 debian/rules                                    | 111 ++++++++++++++++++++++++
 debian/source/format                            |   1 +
 debian/watch                                    |   5 ++
 21 files changed, 669 insertions(+)

diff --git a/debian/README.Debian b/debian/README.Debian
new file mode 100644
index 0000000..85e2fe4
--- /dev/null
+++ b/debian/README.Debian
@@ -0,0 +1,16 @@
+Alljoyn for Debian
+
+This is the base services package of Alljoyn.
+
+There are several parts of the Alljoyn framework which are developed by
+different Workgroup. As all workgroups develop with varying speeds,
+several versions of the core library are needed to be able to use all 
+parts of the framework.
+
+At the moment following versions of the base services are needed:
+        15.04 -> alljoyn-services-1504
+        15.09 -> alljoyn-services-1509
+        16.04 -> alljoyn-services-1604
+
+ -- Thorsten Alteholz <debian at alteholz.de>  Tue, 31 May 2016 18:28:32 +0200
+
diff --git a/debian/alljoyn-services-1604.install b/debian/alljoyn-services-1604.install
new file mode 100644
index 0000000..797c28d
--- /dev/null
+++ b/debian/alljoyn-services-1604.install
@@ -0,0 +1,21 @@
+#onboarding/*/*/*/release/dist/onboarding/bin/OnboardingService.conf /etc/alljoyn
+#onboarding/*/*/*/release/dist/onboarding/bin/OnboardingClient /usr/bin
+#onboarding/*/*/*/release/dist/onboarding/bin/onboarding-daemon /usr/bin
+#onboarding/*/*/*/release/dist/onboarding/bin/FactoryOnboardingService.conf /etc/alljoyn
+#config/*/*/*/release/dist/config/bin/FactoryConfigService.conf /etc/alljoyn
+#config/*/*/*/release/dist/config/bin/ConfigClient /usr/bin
+#config/*/*/*/release/dist/config/bin/ConfigService.conf /etc/alljoyn
+#config/*/*/*/release/dist/config/bin/ConfigService /usr/bin
+notification/*/*/*/release/dist/notification/bin/TestService /usr/bin
+notification/*/*/*/release/dist/notification/bin/ProducerService /usr/bin
+notification/*/*/*/release/dist/notification/bin/ProducerBasic /usr/bin
+notification/*/*/*/release/dist/notification/bin/ConsumerService /usr/bin
+controlpanel/*/*/*/release/dist/controlpanel/bin/ControlPanelController /usr/bin
+controlpanel/*/*/*/release/dist/controlpanel/bin/ControlPanelProducer /usr/bin
+controlpanel/*/*/*/release/dist/controlpanel/bin/ControlPanelSample /usr/bin
+#sample_apps/*/*/*/release/dist/sample_apps/bin/ACServerSample /usr/bin
+#sample_apps/*/*/*/release/dist/sample_apps/bin/ServerSample.conf /etc/alljoyn
+#sample_apps/*/*/*/release/dist/sample_apps/bin/FactoryServerSample.conf /etc/alljoyn
+#sample_apps/*/*/*/release/dist/sample_apps/bin/ACServerSample.conf /etc/alljoyn
+#sample_apps/*/*/*/release/dist/sample_apps/bin/ServerSample /usr/bin
+#sample_apps/*/*/*/release/dist/sample_apps/bin/FactoryACServerSample.conf /etc/alljoyn
diff --git a/debian/changelog b/debian/changelog
new file mode 100644
index 0000000..0968e09
--- /dev/null
+++ b/debian/changelog
@@ -0,0 +1,13 @@
+alljoyn-services-1604 (16.04-2) unstable; urgency=medium
+
+  * adapt soname patch to create 1604 shared library (Closes: #836719)
+  * debian/control: add conflict for 1504 (Closes: #836717)
+  * debian/control: add conflict for 1509 (Closes: #836718)
+
+ -- Thorsten Alteholz <debian at alteholz.de>  Tue, 13 Sep 2016 18:28:32 +0200
+
+alljoyn-services-1604 (16.04-1) unstable; urgency=medium
+
+  * Initial release (Closes: #828133)
+
+ -- Thorsten Alteholz <debian at alteholz.de>  Sun, 04 Sep 2016 11:28:32 +0200
diff --git a/debian/clean b/debian/clean
new file mode 100644
index 0000000..4a97dfa
--- /dev/null
+++ b/debian/clean
@@ -0,0 +1 @@
+# You must remove unused comment lines for the released package.
diff --git a/debian/compat b/debian/compat
new file mode 100644
index 0000000..ec63514
--- /dev/null
+++ b/debian/compat
@@ -0,0 +1 @@
+9
diff --git a/debian/control b/debian/control
new file mode 100644
index 0000000..40d9c7d
--- /dev/null
+++ b/debian/control
@@ -0,0 +1,71 @@
+Source: alljoyn-services-1604
+Section: net
+Priority: extra
+Maintainer: Thorsten Alteholz <debian at alteholz.de>
+Build-Depends: dh-exec (>=0.3)
+               , debhelper (>=9)
+	       , liballjoyn-common-dev-1604
+	       , liballjoyn-dev-1604
+               , scons
+               , libssl-dev
+               , libgtest-dev
+	       , libxml2-dev
+#	       , javahelper
+#	       , junit
+#	       , libcsv-java
+#	       , libmatthew-debug-java
+#	       , libitext-java
+#               , ant
+#               , libcap-dev
+Standards-Version: 3.9.8
+Homepage: https://allseenalliance.org/framework
+Vcs-Browser: https://anonscm.debian.org/cgit/debian-iot/alljoyn-services-1604.git
+Vcs-Git: https://anonscm.debian.org/git/debian-iot/alljoyn-services-1604.git
+
+Package: liballjoynservices1604
+Architecture: any
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Description: AllJoyn base services library
+ AllJoyn is a collaborative open-source software framework that makes 
+ it easy for developers to write applications that can discover nearby
+ devices, and communicate with each other directly regardless of 
+ brands, categories, transports, and OSes without the need of the cloud. 
+ .
+ The AllJoyn framework is extremely flexible with many features to help 
+ make the vision of the Internet of Things come to life.
+ .
+ This package contains the libraries for the base services 
+ in version 1604.
+
+Package: liballjoynservices-dev-1604
+Architecture: any
+Depends: ${shlibs:Depends}, ${misc:Depends},
+         liballjoynservices1604 (= ${binary:Version}),
+         liballjoyn-common-dev-1604
+Section: libdevel
+Description: AllJoyn base services C++ development library
+ AllJoyn is a collaborative open-source software framework that makes 
+ it easy for developers to write applications that can discover nearby
+ devices, and communicate with each other directly regardless of 
+ brands, categories, transports, and OSes without the need of the cloud. 
+ .
+ The AllJoyn framework is extremely flexible with many features to help 
+ make the vision of the Internet of Things come to life.
+ .
+ This package contains the C++ development files for the base services.
+
+Package: alljoyn-services-1604
+Architecture: any
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Conflicts: alljoyn-services-1504, alljoyn-services-1509
+Description: AllJoyn base services for 1604
+ AllJoyn is a collaborative open-source software framework that makes 
+ it easy for developers to write applications that can discover nearby
+ devices, and communicate with each other directly regardless of 
+ brands, categories, transports, and OSes without the need of the cloud. 
+ .
+ The AllJoyn framework is extremely flexible with many features to help 
+ make the vision of the Internet of Things come to life.
+ .
+ This package contains the software for the base services 
+ in version 1604.
diff --git a/debian/copyright b/debian/copyright
new file mode 100644
index 0000000..16fb0f2
--- /dev/null
+++ b/debian/copyright
@@ -0,0 +1,18 @@
+Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Upstream-Name: alljoyn
+Source: https://allseenalliance.org/framework
+
+Files:     *
+Copyright: 2003-2016 AllSeen Alliance
+License:   ISC
+ Permission to use, copy, modify, and/or distribute this software for any
+ purpose with or without fee is hereby granted, provided that the above
+ copyright notice and this permission notice appear in all copies.
+ .
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+ OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
diff --git a/debian/liballjoynservices-dev-1604.install b/debian/liballjoynservices-dev-1604.install
new file mode 100755
index 0000000..4486b7b
--- /dev/null
+++ b/debian/liballjoynservices-dev-1604.install
@@ -0,0 +1,16 @@
+#! /usr/bin/dh-exec
+services_common/build/*/*/*/dist/services_common/inc/a* /usr/include/${DEB_HOST_MULTIARCH}
+#onboarding/build/*/*/*/dist/onboarding/inc/a* /usr/include/${DEB_HOST_MULTIARCH}
+#config/build/*/*/*/dist/config/inc/a* /usr/include/${DEB_HOST_MULTIARCH}
+notification/build/*/*/*/dist/notification/inc/a* /usr/include/${DEB_HOST_MULTIARCH}
+controlpanel/build/*/*/*/dist/controlpanel/inc/a* /usr/include/${DEB_HOST_MULTIARCH}
+services_common/build/*/*/*/obj/services/common/cpp/src/liballjoyn_services_common.so /usr/lib/${DEB_HOST_MULTIARCH}
+#onboarding/build/*/*/*/obj/services/onboarding/cpp/src/liballjoyn_onboarding.so /usr/lib/${DEB_HOST_MULTIARCH}
+#config/build/*/*/*/obj/services/config/cpp/src/liballjoyn_config.so /usr/lib/${DEB_HOST_MULTIARCH}
+notification/build/*/*/*/obj/services/notification/cpp/src/liballjoyn_notification.so /usr/lib/${DEB_HOST_MULTIARCH}
+controlpanel/build/*/*/*/obj/services/controlpanel/cpp/src/liballjoyn_controlpanel.so /usr/lib/${DEB_HOST_MULTIARCH}
+services_common/build/*/*/*/dist/services_common/lib/liballjoyn_services_common.a /usr/lib/${DEB_HOST_MULTIARCH}
+#onboarding/build/*/*/*/dist/onboarding/lib/liballjoyn_onboarding.a /usr/lib/${DEB_HOST_MULTIARCH}
+#config/build/*/*/*/dist/config/lib/liballjoyn_config.a /usr/lib/${DEB_HOST_MULTIARCH}
+notification/build/*/*/*/dist/notification/lib/liballjoyn_notification.a /usr/lib/${DEB_HOST_MULTIARCH}
+controlpanel/build/*/*/*/dist/controlpanel/lib/liballjoyn_controlpanel.a /usr/lib/${DEB_HOST_MULTIARCH}
diff --git a/debian/liballjoynservices1509.lintian-overrides b/debian/liballjoynservices1509.lintian-overrides
new file mode 100644
index 0000000..66dac3c
--- /dev/null
+++ b/debian/liballjoynservices1509.lintian-overrides
@@ -0,0 +1,2 @@
+#library package contains several small libs
+liballjoynservices1604: package-name-doesnt-match-sonames
diff --git a/debian/liballjoynservices1604.install b/debian/liballjoynservices1604.install
new file mode 100755
index 0000000..83d099d
--- /dev/null
+++ b/debian/liballjoynservices1604.install
@@ -0,0 +1,7 @@
+#! /usr/bin/dh-exec
+#build/*/*/*/obj/alljoyn_core/liballjoyn.so.* /usr/lib/${DEB_HOST_MULTIARCH}
+#build/*/*/*/dist/cpp/lib/liballjoyn_about.so.* /usr/lib/${DEB_HOST_MULTIARCH}
+services_common/build/*/*/*/dist/services_common/lib/liballjoyn_services_common.so.* /usr/lib/${DEB_HOST_MULTIARCH}
+controlpanel/build/*/*/*/dist/controlpanel/lib/liballjoyn_controlpanel.so.* /usr/lib/${DEB_HOST_MULTIARCH}
+notification/build/*/*/*/dist/notification/lib/liballjoyn_notification.so.* /usr/lib/${DEB_HOST_MULTIARCH}
+#onboarding/build/*/*/*/dist/onboarding/lib/liballjoyn_onboarding.so.* /usr/lib/${DEB_HOST_MULTIARCH}
diff --git a/debian/patches/add-linux-pthread.patch b/debian/patches/add-linux-pthread.patch
new file mode 100644
index 0000000..1fb4d18
--- /dev/null
+++ b/debian/patches/add-linux-pthread.patch
@@ -0,0 +1,41 @@
+Author: Thorsten Alteholz <debian at alteholz.de>
+Description: pthread is needed for linux stuff
+Index: alljoyn-services-1604/controlpanel/cpp/SConscript
+===================================================================
+--- alljoyn-services-1604.orig/controlpanel/cpp/SConscript	2016-06-24 13:15:48.000000000 +0200
++++ alljoyn-services-1604/controlpanel/cpp/SConscript	2016-06-24 13:15:48.000000000 +0200
+@@ -20,6 +20,8 @@
+         cpsenv['ajrlib'] = 'ajrouter'
+     if cpsenv['OS'] == 'openwrt':
+         cpsenv.AppendUnique(LIBS = [ 'stdc++', 'pthread' ])
++    if cpsenv['OS'] == 'linux':
++        cpsenv.AppendUnique(LIBS = [ 'pthread' ])
+ 
+ cpsenv['CPS_DISTDIR'] = cpsenv['DISTDIR'] + '/controlpanel'
+ 
+Index: alljoyn-services-1604/notification/cpp/SConscript
+===================================================================
+--- alljoyn-services-1604.orig/notification/cpp/SConscript	2016-06-24 13:15:48.000000000 +0200
++++ alljoyn-services-1604/notification/cpp/SConscript	2016-06-24 13:15:48.000000000 +0200
+@@ -20,6 +20,8 @@
+         nsenv['ajrlib'] = 'ajrouter'
+     if nsenv['OS'] == 'openwrt':
+         nsenv.AppendUnique(LIBS = [ 'stdc++', 'pthread' ])
++    if nsenv['OS'] == 'linux':
++        nsenv.AppendUnique(LIBS = [ 'pthread' ])
+ 
+ nsenv['NS_DISTDIR'] = nsenv['DISTDIR'] + '/notification'
+ 
+Index: alljoyn-services-1604/sample_apps/cpp/SConscript
+===================================================================
+--- alljoyn-services-1604.orig/sample_apps/cpp/SConscript	2016-06-24 13:15:48.000000000 +0200
++++ alljoyn-services-1604/sample_apps/cpp/SConscript	2016-06-24 13:15:48.000000000 +0200
+@@ -21,6 +21,8 @@
+         server_sample_env['ajrlib'] = 'ajrouter'
+     if server_sample_env['OS'] == 'openwrt':
+         server_sample_env.AppendUnique(LIBS = [ 'stdc++', 'pthread' ])
++    if server_sample_env['OS'] == 'linux':
++        server_sample_env.AppendUnique(LIBS = [ 'pthread' ])
+ 
+ # Make serversample dist a sub-directory of the alljoyn dist.  This avoids any conflicts with alljoyn dist targets.
+ server_sample_env['SAMPLE_APPS_DISTDIR'] = server_sample_env['DISTDIR'] + '/sample_apps'
diff --git a/debian/patches/hardening.patch b/debian/patches/hardening.patch
new file mode 100644
index 0000000..740a5c5
--- /dev/null
+++ b/debian/patches/hardening.patch
@@ -0,0 +1,76 @@
+Author: Thorsten Alteholz <debian at alteholz.de>
+Description: add hardening flags to calm lintian
+Index: alljoyn-services-1604/controlpanel/cpp/SConscript
+===================================================================
+--- alljoyn-services-1604.orig/controlpanel/cpp/SConscript	2016-06-24 13:15:57.000000000 +0200
++++ alljoyn-services-1604/controlpanel/cpp/SConscript	2016-06-24 13:15:57.000000000 +0200
+@@ -22,6 +22,9 @@
+         cpsenv.AppendUnique(LIBS = [ 'stdc++', 'pthread' ])
+     if cpsenv['OS'] == 'linux':
+         cpsenv.AppendUnique(LIBS = [ 'pthread' ])
++        cpsenv.Append(LINKFLAGS = ['-fPIE', '-pie', '-fPIC'])
++        cpsenv.Append(CFLAGS = ['-fPIE', '-fPIC', '-D_FORTIFY_SOURCE=2'])
++        cpsenv.Append(CPPFLAGS = ['-fPIE', '-fPIC', '-D_FORTIFY_SOURCE=2'])
+ 
+ cpsenv['CPS_DISTDIR'] = cpsenv['DISTDIR'] + '/controlpanel'
+ 
+Index: alljoyn-services-1604/notification/cpp/SConscript
+===================================================================
+--- alljoyn-services-1604.orig/notification/cpp/SConscript	2016-06-24 13:15:57.000000000 +0200
++++ alljoyn-services-1604/notification/cpp/SConscript	2016-06-24 13:15:57.000000000 +0200
+@@ -22,6 +22,9 @@
+         nsenv.AppendUnique(LIBS = [ 'stdc++', 'pthread' ])
+     if nsenv['OS'] == 'linux':
+         nsenv.AppendUnique(LIBS = [ 'pthread' ])
++        nsenv.Append(LINKFLAGS = ['-fPIE', '-pie', '-fPIC'])
++        nsenv.Append(CFLAGS = ['-fPIE', '-fPIC', '-D_FORTIFY_SOURCE=2'])
++        nsenv.Append(CPPFLAGS = ['-fPIE', '-fPIC', '-D_FORTIFY_SOURCE=2'])
+ 
+ nsenv['NS_DISTDIR'] = nsenv['DISTDIR'] + '/notification'
+ 
+Index: alljoyn-services-1604/onboarding/cpp/SConscript
+===================================================================
+--- alljoyn-services-1604.orig/onboarding/cpp/SConscript	2016-06-24 13:15:57.000000000 +0200
++++ alljoyn-services-1604/onboarding/cpp/SConscript	2016-06-24 13:15:57.000000000 +0200
+@@ -23,6 +23,9 @@
+         onb_env.AppendUnique(LIBS = [ 'stdc++', 'pthread' ])
+     if onb_env['OS'] == 'linux':
+         onb_env.AppendUnique(LIBS = [ 'rt', 'pthread' ])
++        onb_env.Append(LINKFLAGS = ['-fPIE', '-pie', '-fPIC'])
++        onb_env.Append(CFLAGS = ['-fPIE', '-fPIC', '-D_FORTIFY_SOURCE=2'])
++        onb_env.Append(CPPFLAGS = ['-fPIE', '-fPIC', '-D_FORTIFY_SOURCE=2'])
+ 
+ # Make onboarding dist a sub-directory of the alljoyn dist.  This avoids any conflicts with alljoyn dist targets.
+ onb_env['ONBOARDING_DISTDIR'] = onb_env['DISTDIR'] + '/onboarding'
+Index: alljoyn-services-1604/services_common/cpp/SConscript
+===================================================================
+--- alljoyn-services-1604.orig/services_common/cpp/SConscript	2016-06-24 13:15:57.000000000 +0200
++++ alljoyn-services-1604/services_common/cpp/SConscript	2016-06-24 13:15:57.000000000 +0200
+@@ -18,6 +18,12 @@
+     services_common_env.Append(LIBS = ['alljoyn'])
+     if services_common_env['OS'] == 'openwrt':
+         services_common_env.AppendUnique(LIBS = [ 'stdc++', 'pthread' ])
++    if services_common_env['OS'] == 'linux':
++        services_common_env.AppendUnique(LIBS = [ 'pthread' ])
++        services_common_env.Append(LINKFLAGS = ['-fPIE', '-pie', '-fPIC'])
++        services_common_env.Append(CFLAGS = ['-fPIE', '-fPIC', '-D_FORTIFY_SOURCE=2'])
++        services_common_env.Append(CPPFLAGS = ['-fPIE', '-fPIC', '-D_FORTIFY_SOURCE=2'])
++
+ 
+ services_common_env['SC_DISTDIR'] = services_common_env['DISTDIR'] + '/services_common'
+ 
+Index: alljoyn-services-1604/sample_apps/cpp/SConscript
+===================================================================
+--- alljoyn-services-1604.orig/sample_apps/cpp/SConscript	2016-06-24 13:15:57.000000000 +0200
++++ alljoyn-services-1604/sample_apps/cpp/SConscript	2016-06-24 13:15:57.000000000 +0200
+@@ -23,6 +23,10 @@
+         server_sample_env.AppendUnique(LIBS = [ 'stdc++', 'pthread' ])
+     if server_sample_env['OS'] == 'linux':
+         server_sample_env.AppendUnique(LIBS = [ 'pthread' ])
++        server_sample_env.Append(LINKFLAGS = ['-fPIE', '-pie', '-fPIC'])
++        server_sample_env.Append(CFLAGS = ['-fPIE', '-fPIC', '-D_FORTIFY_SOURCE=2'])
++        server_sample_env.Append(CPPFLAGS = ['-fPIE', '-fPIC', '-D_FORTIFY_SOURCE=2'])
++
+ 
+ # Make serversample dist a sub-directory of the alljoyn dist.  This avoids any conflicts with alljoyn dist targets.
+ server_sample_env['SAMPLE_APPS_DISTDIR'] = server_sample_env['DISTDIR'] + '/sample_apps'
diff --git a/debian/patches/no-bsymbolic.patch b/debian/patches/no-bsymbolic.patch
new file mode 100644
index 0000000..9e5e9a6
--- /dev/null
+++ b/debian/patches/no-bsymbolic.patch
@@ -0,0 +1,65 @@
+Author: Thorsten Alteholz <debian at alteholz.de>
+Description: scons automatically add '-Wl,-Bsymbolic' which results in
+             segmentation faults for Debug-calls
+             so better don't use that linker option
+Index: alljoyn-services-1604/controlpanel/cpp/SConscript
+===================================================================
+--- alljoyn-services-1604.orig/controlpanel/cpp/SConscript	2016-06-24 13:16:16.000000000 +0200
++++ alljoyn-services-1604/controlpanel/cpp/SConscript	2016-06-24 13:16:16.000000000 +0200
+@@ -25,6 +25,7 @@
+         cpsenv.Append(LINKFLAGS = ['-fPIE', '-pie', '-fPIC'])
+         cpsenv.Append(CFLAGS = ['-fPIE', '-fPIC', '-D_FORTIFY_SOURCE=2'])
+         cpsenv.Append(CPPFLAGS = ['-fPIE', '-fPIC', '-D_FORTIFY_SOURCE=2'])
++        cpsenv['SHLIBVERSIONFLAGS'] = " "
+ 
+ cpsenv['CPS_DISTDIR'] = cpsenv['DISTDIR'] + '/controlpanel'
+ 
+Index: alljoyn-services-1604/notification/cpp/SConscript
+===================================================================
+--- alljoyn-services-1604.orig/notification/cpp/SConscript	2016-06-24 13:16:16.000000000 +0200
++++ alljoyn-services-1604/notification/cpp/SConscript	2016-06-24 13:16:16.000000000 +0200
+@@ -25,6 +25,7 @@
+         nsenv.Append(LINKFLAGS = ['-fPIE', '-pie', '-fPIC'])
+         nsenv.Append(CFLAGS = ['-fPIE', '-fPIC', '-D_FORTIFY_SOURCE=2'])
+         nsenv.Append(CPPFLAGS = ['-fPIE', '-fPIC', '-D_FORTIFY_SOURCE=2'])
++        nsenv['SHLIBVERSIONFLAGS'] = " "
+ 
+ nsenv['NS_DISTDIR'] = nsenv['DISTDIR'] + '/notification'
+ 
+Index: alljoyn-services-1604/onboarding/cpp/SConscript
+===================================================================
+--- alljoyn-services-1604.orig/onboarding/cpp/SConscript	2016-06-24 13:16:16.000000000 +0200
++++ alljoyn-services-1604/onboarding/cpp/SConscript	2016-06-24 13:16:16.000000000 +0200
+@@ -26,6 +26,7 @@
+         onb_env.Append(LINKFLAGS = ['-fPIE', '-pie', '-fPIC'])
+         onb_env.Append(CFLAGS = ['-fPIE', '-fPIC', '-D_FORTIFY_SOURCE=2'])
+         onb_env.Append(CPPFLAGS = ['-fPIE', '-fPIC', '-D_FORTIFY_SOURCE=2'])
++        onb_env['SHLIBVERSIONFLAGS'] = " "
+ 
+ # Make onboarding dist a sub-directory of the alljoyn dist.  This avoids any conflicts with alljoyn dist targets.
+ onb_env['ONBOARDING_DISTDIR'] = onb_env['DISTDIR'] + '/onboarding'
+Index: alljoyn-services-1604/sample_apps/cpp/SConscript
+===================================================================
+--- alljoyn-services-1604.orig/sample_apps/cpp/SConscript	2016-06-24 13:16:16.000000000 +0200
++++ alljoyn-services-1604/sample_apps/cpp/SConscript	2016-06-24 13:16:16.000000000 +0200
+@@ -26,7 +26,7 @@
+         server_sample_env.Append(LINKFLAGS = ['-fPIE', '-pie', '-fPIC'])
+         server_sample_env.Append(CFLAGS = ['-fPIE', '-fPIC', '-D_FORTIFY_SOURCE=2'])
+         server_sample_env.Append(CPPFLAGS = ['-fPIE', '-fPIC', '-D_FORTIFY_SOURCE=2'])
+-
++        server_sample_env['SHLIBVERSIONFLAGS'] = " "
+ 
+ # Make serversample dist a sub-directory of the alljoyn dist.  This avoids any conflicts with alljoyn dist targets.
+ server_sample_env['SAMPLE_APPS_DISTDIR'] = server_sample_env['DISTDIR'] + '/sample_apps'
+Index: alljoyn-services-1604/services_common/cpp/SConscript
+===================================================================
+--- alljoyn-services-1604.orig/services_common/cpp/SConscript	2016-06-24 13:16:16.000000000 +0200
++++ alljoyn-services-1604/services_common/cpp/SConscript	2016-06-24 13:16:16.000000000 +0200
+@@ -23,6 +23,7 @@
+         services_common_env.Append(LINKFLAGS = ['-fPIE', '-pie', '-fPIC'])
+         services_common_env.Append(CFLAGS = ['-fPIE', '-fPIC', '-D_FORTIFY_SOURCE=2'])
+         services_common_env.Append(CPPFLAGS = ['-fPIE', '-fPIC', '-D_FORTIFY_SOURCE=2'])
++        services_common_env['SHLIBVERSIONFLAGS'] = " "
+ 
+ 
+ services_common_env['SC_DISTDIR'] = services_common_env['DISTDIR'] + '/services_common'
diff --git a/debian/patches/remove-alljoyn_config.patch b/debian/patches/remove-alljoyn_config.patch
new file mode 100644
index 0000000..e21ae39
--- /dev/null
+++ b/debian/patches/remove-alljoyn_config.patch
@@ -0,0 +1,26 @@
+Author: Thorsten Alteholz <debian at alteholz.de>
+Description: no config library available
+Index: alljoyn-services-1604/onboarding/cpp/samples/SConscript
+===================================================================
+--- alljoyn-services-1604.orig/onboarding/cpp/samples/SConscript	2016-05-26 05:55:44.000000000 +0200
++++ alljoyn-services-1604/onboarding/cpp/samples/SConscript	2016-06-24 15:43:34.000000000 +0200
+@@ -26,7 +26,6 @@
+ local_env.Append(CPPPATH = ['.'])
+ 
+ local_env.Prepend(LIBS = [ 'alljoyn_onboarding',
+-                           'alljoyn_config',
+                            'alljoyn_about',
+                            'alljoyn_services_common' ])
+ 
+Index: alljoyn-services-1604/onboarding/cpp/src/OnboardingDaemon/SConscript
+===================================================================
+--- alljoyn-services-1604.orig/onboarding/cpp/src/OnboardingDaemon/SConscript	2016-05-26 05:55:44.000000000 +0200
++++ alljoyn-services-1604/onboarding/cpp/src/OnboardingDaemon/SConscript	2016-06-24 15:43:28.000000000 +0200
+@@ -26,7 +26,6 @@
+ local_env.Append(CPPPATH = ['.'])
+ 
+ local_env.Prepend(LIBS = [ 'alljoyn_onboarding',
+-                           'alljoyn_config',
+                            'alljoyn_about',
+                            'alljoyn_services_common'])
+ 
diff --git a/debian/patches/series b/debian/patches/series
new file mode 100644
index 0000000..7f8f66c
--- /dev/null
+++ b/debian/patches/series
@@ -0,0 +1,7 @@
+#XXX not needed anymore? use-global-build_core.patch
+soname.patch
+add-linux-pthread.patch
+hardening.patch
+spelling.patch
+no-bsymbolic.patch
+remove-alljoyn_config.patch
diff --git a/debian/patches/soname.patch b/debian/patches/soname.patch
new file mode 100644
index 0000000..22d7e24
--- /dev/null
+++ b/debian/patches/soname.patch
@@ -0,0 +1,50 @@
+Description: add SONAME to libraries
+Author: Thorsten Alteholz <debian at alteholz.de>
+Index: alljoyn-services-1604/controlpanel/cpp/src/SConscript
+===================================================================
+--- alljoyn-services-1604.orig/controlpanel/cpp/src/SConscript	2016-06-24 13:15:36.000000000 +0200
++++ alljoyn-services-1604/controlpanel/cpp/src/SConscript	2016-06-24 13:15:36.000000000 +0200
+@@ -29,6 +29,6 @@
+ # Shared library
+ if cpsenv.get('LIBTYPE', 'static') != 'static':
+     shobjs = cpsenv.SharedObject(srcs)
+-    libs.append(cpsenv.SharedLibrary('alljoyn_controlpanel', shobjs))
++    libs.append(cpsenv.SharedLibrary('alljoyn_controlpanel', shobjs, SHLIBVERSION='1604'))
+ 
+ Return('libs')
+Index: alljoyn-services-1604/notification/cpp/src/SConscript
+===================================================================
+--- alljoyn-services-1604.orig/notification/cpp/src/SConscript	2016-06-24 13:15:36.000000000 +0200
++++ alljoyn-services-1604/notification/cpp/src/SConscript	2016-06-24 13:15:36.000000000 +0200
+@@ -27,6 +27,6 @@
+ # Shared library
+ if nsenv.get('LIBTYPE', 'static') != 'static':
+     shobjs = nsenv.SharedObject(srcs)
+-    libs.append(nsenv.SharedLibrary('alljoyn_notification', shobjs))
++    libs.append(nsenv.SharedLibrary('alljoyn_notification', shobjs, SHLIBVERSION='1604'))
+ 
+ Return('libs')
+Index: alljoyn-services-1604/onboarding/cpp/src/SConscript
+===================================================================
+--- alljoyn-services-1604.orig/onboarding/cpp/src/SConscript	2016-06-24 13:15:36.000000000 +0200
++++ alljoyn-services-1604/onboarding/cpp/src/SConscript	2016-06-24 13:15:36.000000000 +0200
+@@ -32,6 +32,6 @@
+ # Shared library
+ if onb_env.get('LIBTYPE', 'static') != 'static':
+     shobjs = onb_env.SharedObject(srcs)
+-    libs.append(onb_env.SharedLibrary('alljoyn_onboarding', shobjs))
++    libs.append(onb_env.SharedLibrary('alljoyn_onboarding', shobjs, SHLIBVERSION='1604'))
+ 
+ Return ('libs')
+Index: alljoyn-services-1604/services_common/cpp/src/SConscript
+===================================================================
+--- alljoyn-services-1604.orig/services_common/cpp/src/SConscript	2016-06-24 13:15:36.000000000 +0200
++++ alljoyn-services-1604/services_common/cpp/src/SConscript	2016-06-24 13:15:36.000000000 +0200
+@@ -27,6 +27,6 @@
+ # Shared library
+ if services_common_env.get('LIBTYPE', 'static') != 'static':
+     shobjs = services_common_env.SharedObject(srcs)
+-    libs.append(services_common_env.SharedLibrary('alljoyn_services_common', shobjs))
++    libs.append(services_common_env.SharedLibrary('alljoyn_services_common', shobjs, SHLIBVERSION='1604'))
+ 
+ Return('libs')
diff --git a/debian/patches/spelling.patch b/debian/patches/spelling.patch
new file mode 100644
index 0000000..d020a6d
--- /dev/null
+++ b/debian/patches/spelling.patch
@@ -0,0 +1,54 @@
+Author: Thorsten Alteholz <debian at alteholz.de>
+Description: fix spelling errors that lintian complained about (applied upstream)
+Index: alljoyn-services-1604/controlpanel/cpp/src/ControlPanelConstants.h
+===================================================================
+--- alljoyn-services-1604.orig/controlpanel/cpp/src/ControlPanelConstants.h	2016-06-24 13:16:06.000000000 +0200
++++ alljoyn-services-1604/controlpanel/cpp/src/ControlPanelConstants.h	2016-06-24 13:16:06.000000000 +0200
+@@ -101,7 +101,7 @@
+ static const qcc::String AJPARAM_DATE_OR_TIME = "(q(qqq))";
+ 
+ static const qcc::String AJ_ERROR_UNKNOWN = "Unknown Error";
+-static const qcc::String AJ_ERROR_UNKNOWN_MESSAGE = "An Unknown Error occured";
++static const qcc::String AJ_ERROR_UNKNOWN_MESSAGE = "An Unknown Error occurred";
+ 
+ enum OPT_PARAM_KEYS {
+     LABEL_KEY = 0,
+Index: alljoyn-services-1604/notification/java/NotificationService/src/org/alljoyn/ns/transport/DismissEmitter.java
+===================================================================
+--- alljoyn-services-1604.orig/notification/java/NotificationService/src/org/alljoyn/ns/transport/DismissEmitter.java	2016-06-24 13:16:06.000000000 +0200
++++ alljoyn-services-1604/notification/java/NotificationService/src/org/alljoyn/ns/transport/DismissEmitter.java	2016-06-24 13:16:06.000000000 +0200
+@@ -52,7 +52,7 @@
+ 		try {
+ 			logger = transport.getLogger();
+ 		} catch (NotificationServiceException nse) {
+-			System.out.println(TAG + ": Unexpected error occured: " + nse.getMessage());
++			System.out.println(TAG + ": Unexpected error occurred: " + nse.getMessage());
+ 			return;
+ 		}
+ 		
+Index: alljoyn-services-1604/notification/java/NotificationService/src/org/alljoyn/ns/transport/consumer/DismissConsumer.java
+===================================================================
+--- alljoyn-services-1604.orig/notification/java/NotificationService/src/org/alljoyn/ns/transport/consumer/DismissConsumer.java	2016-06-24 13:16:06.000000000 +0200
++++ alljoyn-services-1604/notification/java/NotificationService/src/org/alljoyn/ns/transport/consumer/DismissConsumer.java	2016-06-24 13:16:06.000000000 +0200
+@@ -48,7 +48,7 @@
+ 			logger = transport.getLogger();
+ 		}
+ 		catch(NotificationServiceException nse) {
+-			System.out.println(TAG + ": Unexpected error occured: " + nse.getMessage());
++			System.out.println(TAG + ": Unexpected error occurred: " + nse.getMessage());
+ 			return;
+ 		}
+ 		
+Index: alljoyn-services-1604/notification/java/NotificationService/src/org/alljoyn/ns/transport/consumer/NotificationTransportConsumer.java
+===================================================================
+--- alljoyn-services-1604.orig/notification/java/NotificationService/src/org/alljoyn/ns/transport/consumer/NotificationTransportConsumer.java	2016-06-24 13:16:06.000000000 +0200
++++ alljoyn-services-1604/notification/java/NotificationService/src/org/alljoyn/ns/transport/consumer/NotificationTransportConsumer.java	2016-06-24 13:16:06.000000000 +0200
+@@ -88,7 +88,7 @@
+ 			}
+ 		}
+ 		catch (NativePlatformFactoryException npfe) {
+-			System.out.println(TAG + ": Unexpected error occured: " + npfe.getMessage());
++			System.out.println(TAG + ": Unexpected error occurred: " + npfe.getMessage());
+ 		}
+ 	}//notify
+ 
diff --git a/debian/patches/use-global-build_core.patch b/debian/patches/use-global-build_core.patch
new file mode 100644
index 0000000..d8057d8
--- /dev/null
+++ b/debian/patches/use-global-build_core.patch
@@ -0,0 +1,67 @@
+Description: do not use internal scons files but those from the common-package
+Author: Thorsten Alteholz <debian at alteholz.de>
+Index: alljoyn-services-1604/services_common/SConstruct
+===================================================================
+--- alljoyn-services-1604.orig/services_common/SConstruct	2016-06-24 11:37:49.000000000 +0200
++++ alljoyn-services-1604/services_common/SConstruct	2016-06-24 11:37:49.000000000 +0200
+@@ -14,7 +14,7 @@
+ 
+ import os
+ 
+-env = SConscript('../../../core/alljoyn/build_core/SConscript')
++env = SConscript('/usr/share/alljoyn/build_core/SConscript')
+ 
+ vars = Variables()
+ vars.Add('BINDINGS', 'Bindings to build (comma separated list): cpp, java', 'cpp,java')
+Index: alljoyn-services-1604/notification/SConstruct
+===================================================================
+--- alljoyn-services-1604.orig/notification/SConstruct	2016-06-24 11:37:49.000000000 +0200
++++ alljoyn-services-1604/notification/SConstruct	2016-06-24 11:37:49.000000000 +0200
+@@ -14,7 +14,7 @@
+ 
+ import os
+ 
+-env = SConscript('../../../core/alljoyn/build_core/SConscript')
++env = SConscript('/usr/share/alljoyn/build_core/SConscript')
+ 
+ vars = Variables()
+ vars.Add('BINDINGS', 'Bindings to build (comma separated list): cpp, java', 'cpp,java')
+Index: alljoyn-services-1604/controlpanel/SConstruct
+===================================================================
+--- alljoyn-services-1604.orig/controlpanel/SConstruct	2016-06-24 11:37:49.000000000 +0200
++++ alljoyn-services-1604/controlpanel/SConstruct	2016-06-24 11:37:49.000000000 +0200
+@@ -14,7 +14,7 @@
+ 
+ import os
+ 
+-env = SConscript('../../../core/alljoyn/build_core/SConscript')
++env = SConscript('/usr/share/alljoyn/build_core/SConscript')
+ 
+ vars = Variables()
+ vars.Add('BINDINGS', 'Bindings to build (comma separated list): cpp, java', 'cpp,java')
+Index: alljoyn-services-1604/onboarding/SConstruct
+===================================================================
+--- alljoyn-services-1604.orig/onboarding/SConstruct	2016-06-24 11:37:49.000000000 +0200
++++ alljoyn-services-1604/onboarding/SConstruct	2016-06-24 11:37:49.000000000 +0200
+@@ -14,7 +14,7 @@
+ 
+ import os
+ 
+-env = SConscript('../../../core/alljoyn/build_core/SConscript')
++env = SConscript('/usr/share/alljoyn/build_core/SConscript')
+ 
+ vars = Variables()
+ vars.Add('BINDINGS', 'Bindings to build (comma separated list): cpp, java', 'cpp,java')
+Index: alljoyn-services-1604/sample_apps/SConstruct
+===================================================================
+--- alljoyn-services-1604.orig/sample_apps/SConstruct	2016-06-24 11:37:49.000000000 +0200
++++ alljoyn-services-1604/sample_apps/SConstruct	2016-06-24 11:37:49.000000000 +0200
+@@ -14,7 +14,7 @@
+ 
+ import os
+ 
+-env = SConscript('../../../core/alljoyn/build_core/SConscript')
++env = SConscript('/usr/share/alljoyn/build_core/SConscript')
+ 
+ vars = Variables()
+ vars.Add('BINDINGS', 'Bindings to build (comma separated list): cpp, java', 'cpp,java')
diff --git a/debian/rules b/debian/rules
new file mode 100755
index 0000000..c8dd1ba
--- /dev/null
+++ b/debian/rules
@@ -0,0 +1,111 @@
+#!/usr/bin/make -f
+# You must remove unused comment lines for the released package.
+#export DH_VERBOSE = 1
+export DEB_BUILD_MAINT_OPTIONS = hardening=+all
+export DEB_CFLAGS_MAINT_APPEND  = -Wall -pedantic
+export DEB_LDFLAGS_MAINT_APPEND = -Wl,--as-needed
+export JAVA_HOME=/usr/lib/jvm/default-java
+export CLASSPATH=/usr/share/java/csv.jar:/usr/share/java/debug-disable.jar:/usr/share/java/itext.jar
+export GTEST_DIR=/usr/src/gtest
+
+DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
+
+# mapping all i.86 to x86 for Alljoyn
+CPU=$(shell dpkg-architecture -qDEB_HOST_GNU_CPU | sed -e 's/i.86/x86/')
+BUILDARCH=$(shell dpkg-architecture -qDEB_BUILD_ARCH)
+OS=linux
+
+
+export VERSION := 16.04
+export SONAME := 1604
+export VARIANT := release
+export SCONS_ARGS := CPU=$(CPU) OS=$(OS) VARIANT=$(VARIANT) V=1 GTEST_DIR=$(GTEST_DIR)
+export BUILD_DIR := $(CURDIR)/build/$(OS)/$(CPU)/$(VARIANT)/dist
+export OBJ_DIR := $(CURDIR)/build/$(OS)/$(CPU)/$(VARIANT)/obj
+export ALLJOYN_DISTDIR := $(CURDIR)/build/$(OS)/$(CPU)/$(VARIANT)/dist
+
+%:
+	dh $@
+
+override_dh_auto_build:
+	mkdir -p $(ALLJOYN_DISTDIR)
+	(cd sample_apps; \
+	scons BINDINGS=cpp $(SCONS_ARGS) \
+		WS=off BT=off ICE=off \
+	)
+#	(cd time; \
+#	scons BINDINGS=cpp $(SCONS_ARGS) \
+#		WS=off BT=off ICE=off \
+#	)
+#	(cd config; \
+#	scons BINDINGS=cpp $(SCONS_ARGS) \
+#		WS=off BT=off ICE=off \
+#	)
+	(cd services_common; \
+	scons BINDINGS=cpp $(SCONS_ARGS) \
+		WS=off BT=off ICE=off \
+	)
+	(cd controlpanel; \
+	scons BINDINGS=cpp $(SCONS_ARGS) \
+		WS=off BT=off ICE=off \
+	)
+# onboarding needs config!?
+#	(cd onboarding; \
+#	scons BINDINGS=cpp $(SCONS_ARGS) \
+#		WS=off BT=off ICE=off \
+#	)
+	(cd notification; \
+	scons BINDINGS=cpp $(SCONS_ARGS) \
+		WS=off BT=off ICE=off \
+	)
+
+	touch ./to-be.removed-now.md5
+	find ./* |grep '\.md5'|xargs rm
+
+	dh_auto_build
+
+override_dh_auto_clean:
+	# see explanation of -I for dpkg-source
+	# as this dir contains an {arch}, dpkg-source ignores it
+	# "arm" in Alljoyn world means openWRT+cross compiling
+	# so this is not needed for Debian
+	rm -rf build_core/conf/linux/arm
+	rm -f sample_apps/.sconsign.dblite
+	rm -rf sample_apps/.sconf_temp
+	rm -f services_common/.sconsign.dblite
+	rm -rf services_common/.sconf_temp
+	rm -f notification/.sconsign.dblite
+	rm -rf notification/.sconf_temp
+	rm -f onboarding/.sconsign.dblite
+	rm -rf onboarding/.sconf_temp
+	rm -f controlpanel/.sconsign.dblite
+	rm -rf controlpanel/.sconf_temp
+	rm -f time/.sconsign.dblite
+	rm -rf time/.sconf_temp
+	rm -f config/.sconsign.dblite
+	rm -rf config/.sconf_temp
+	touch ./to-be-removed-now.config.log
+	find ./* -print|grep "config\.log"|xargs rm
+	touch ./build_core/to-be-removed-now.pyc
+	find ./build_core/* -print|grep "\.pyc"|xargs rm
+	touch ./to-be.removed-now.md5
+	find ./* |grep '\.md5'|xargs rm
+	rm -rf sample_apps/build
+	rm -rf services_common/build
+	rm -rf notification/build
+	rm -rf onboarding/build
+	rm -rf controlpanel/build
+	rm -rf time/build
+	rm -rf config/build
+	dh_auto_clean
+
+override_dh_install:
+	dh_install
+	# improve stuff
+	#XXX no longer needed: chmod 644 debian/alljoyn-services-1604/etc/alljoyn/*.conf
+
+override_dh_installchangelogs:
+	#XXX only one file now: cat */ReleaseNotes.txt > ReleaseNotes.txt
+	dh_installchangelogs ReleaseNotes.txt
+	rm ReleaseNotes.txt
+	dh_installchangelogs 
diff --git a/debian/source/format b/debian/source/format
new file mode 100644
index 0000000..163aaf8
--- /dev/null
+++ b/debian/source/format
@@ -0,0 +1 @@
+3.0 (quilt)
diff --git a/debian/watch b/debian/watch
new file mode 100644
index 0000000..7038bc2
--- /dev/null
+++ b/debian/watch
@@ -0,0 +1,5 @@
+version=3
+opts="dversionmangle=s/base/alljoyn-services/" \
+https://git.allseenalliance.org/cgit/services/base.git/ /cgit/services/base.git/snapshot/base-(16\.04.*)\.tar\.gz
+
+

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-iot/alljoyn-services-1604.git



More information about the Debian-iot-packaging mailing list