The package rpms/upm.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/upm.git/commit/?id=d7a1d1b8ea476c....
Change:
+ExcludeArch: %{power64} s390x
Thanks.
Full change:
============
commit d7a1d1b8ea476c3dbd4bb51b9cc5bbdb4fe4bfa5
Author: Peter Robinson <pbrobinson(a)gmail.com>
Date: Fri Sep 14 14:37:02 2018 +0100
initial import
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..eb11a9d
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1 @@
+/v1.7.0.tar.gz
diff --git a/0001-Use-IdleNotificationDeadline-as-deprecated-IdleNotif.patch
b/0001-Use-IdleNotificationDeadline-as-deprecated-IdleNotif.patch
new file mode 100644
index 0000000..d91fbcd
--- /dev/null
+++ b/0001-Use-IdleNotificationDeadline-as-deprecated-IdleNotif.patch
@@ -0,0 +1,33 @@
+From 11d1bf11b5d5e4d85dc99e9a9ad76a7d94954a6f Mon Sep 17 00:00:00 2001
+From: Peter Robinson <pbrobinson(a)gmail.com>
+Date: Sun, 9 Sep 2018 18:24:06 +0100
+Subject: [PATCH] Use IdleNotificationDeadline as deprecated IdleNotification
+ has been removed
+
+In v8 API 6.5 the long deprecated IdleNotification has been removed so we
+need to use IdleNotificationDeadline as nodejs 10.x uses newer v8.
+
+Signed-off-by: Peter Robinson <pbrobinson(a)gmail.com>
+---
+ src/common_top.i | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/common_top.i b/src/common_top.i
+index c9edb585..ae2b904e 100644
+--- a/src/common_top.i
++++ b/src/common_top.i
+@@ -28,9 +28,9 @@ void cleanUp()
+ * See
https://codereview.chromium.org/412163003 for this API change
+ */
+ #if (SWIG_V8_VERSION < 0x032838)
+- while (!v8::V8::IdleNotification())
++ while (!v8::V8::IdleNotificationDeadline())
+ #else
+- while (!v8::Isolate::GetCurrent()->IdleNotification(1000))
++ while (!v8::Isolate::GetCurrent()->IdleNotificationDeadline(1000))
+ #endif
+ {;}
+ }
+--
+2.19.0.rc1
+
diff --git a/0001-initise-all-uint8_t-variables-to-0.patch
b/0001-initise-all-uint8_t-variables-to-0.patch
new file mode 100644
index 0000000..9c7a166
--- /dev/null
+++ b/0001-initise-all-uint8_t-variables-to-0.patch
@@ -0,0 +1,80 @@
+From 0f843a1533c1088a4290b23f8f7dd9b0957dcf12 Mon Sep 17 00:00:00 2001
+From: Peter Robinson <pbrobinson(a)gmail.com>
+Date: Sun, 9 Sep 2018 19:18:18 +0100
+Subject: [PATCH] initise all uint8_t variables to 0
+
+Signed-off-by: Peter Robinson <pbrobinson(a)gmail.com>
+---
+ src/kxtj3/kxtj3.c | 14 +++++++-------
+ 1 file changed, 7 insertions(+), 7 deletions(-)
+
+diff --git a/src/kxtj3/kxtj3.c b/src/kxtj3/kxtj3.c
+index 54a3a8f4..a6f3c4f8 100755
+--- a/src/kxtj3/kxtj3.c
++++ b/src/kxtj3/kxtj3.c
+@@ -304,7 +304,7 @@ static upm_result_t kxtj3_write_register(const kxtj3_context dev,
uint8_t reg, u
+
+ static upm_result_t kxtj3_set_bit_on(const kxtj3_context dev, uint8_t reg, uint8_t
bit_mask)
+ {
+- uint8_t reg_value;
++ uint8_t reg_value = 0;
+ if (kxtj3_read_register(dev, reg, ®_value) != UPM_SUCCESS)
+ return UPM_ERROR_OPERATION_FAILED;
+
+@@ -314,7 +314,7 @@ static upm_result_t kxtj3_set_bit_on(const kxtj3_context dev, uint8_t
reg, uint8
+
+ static upm_result_t kxtj3_set_bit_off(const kxtj3_context dev, uint8_t reg, uint8_t
bit_mask)
+ {
+- uint8_t reg_value;
++ uint8_t reg_value = 0;
+ if (kxtj3_read_register(dev, reg, ®_value) != UPM_SUCCESS)
+ return UPM_ERROR_OPERATION_FAILED;
+
+@@ -324,7 +324,7 @@ static upm_result_t kxtj3_set_bit_off(const kxtj3_context dev,
uint8_t reg, uint
+
+ static upm_result_t kxtj3_set_bits_with_mask(const kxtj3_context dev, uint8_t reg,
uint8_t val, uint8_t bit_mask)
+ {
+- uint8_t reg_val;
++ uint8_t reg_val = 0;
+ if (kxtj3_read_register(dev, reg, ®_val) != UPM_SUCCESS)
+ return UPM_ERROR_OPERATION_FAILED;
+
+@@ -600,7 +600,7 @@ upm_result_t kxtj3_set_odr_wakeup_function(const kxtj3_context dev,
KXTJ3_ODR_WA
+
+ static bool kxtj3_check_digital_communication_reg_value(kxtj3_context dev, uint8_t
expected_val)
+ {
+- uint8_t dcst_reg;
++ uint8_t dcst_reg = 0;
+ if (kxtj3_read_register(dev, KXTJ3_DCST_RESP, &dcst_reg) != UPM_SUCCESS)
+ return UPM_ERROR_OPERATION_FAILED;
+
+@@ -1017,7 +1017,7 @@ upm_result_t kxtj3_set_wakeup_motion_time(kxtj3_context dev, float
desired_time)
+ upm_result_t kxtj3_get_wakeup_motion_time(kxtj3_context dev, float *out_time)
+ {
+ assert(dev != NULL);
+- uint8_t motion_count;
++ uint8_t motion_count = 0;
+ if (kxtj3_read_register(dev, KXTJ3_WAKEUP_COUNTER, &motion_count) !=
UPM_SUCCESS)
+ return UPM_ERROR_OPERATION_FAILED;
+
+@@ -1044,7 +1044,7 @@ upm_result_t kxtj3_set_wakeup_non_activity_time(kxtj3_context dev,
float desired
+ upm_result_t kxtj3_get_wakeup_non_activity_time(kxtj3_context dev, float *out_time)
+ {
+ assert(dev != NULL);
+- uint8_t non_activity_reg_count;
++ uint8_t non_activity_reg_count = 0;
+ if (kxtj3_read_register(dev, KXTJ3_NA_COUNTER, &non_activity_reg_count) !=
UPM_SUCCESS)
+ return UPM_ERROR_OPERATION_FAILED;
+
+@@ -1082,7 +1082,7 @@ upm_result_t kxtj3_set_wakeup_threshold_g_value(kxtj3_context dev,
float g_thres
+ upm_result_t kxtj3_get_wakeup_threshold(kxtj3_context dev, float *out_threshold)
+ {
+ assert(dev != NULL);
+- uint8_t reg_value_h, reg_value_l;
++ uint8_t reg_value_h = 0, reg_value_l = 0;
+ if (kxtj3_read_register(dev, KXTJ3_WAKEUP_THRESHOLD_H, ®_value_h) !=
UPM_SUCCESS)
+ return UPM_ERROR_OPERATION_FAILED;
+
+--
+2.19.0.rc1
+
diff --git a/sources b/sources
new file mode 100644
index 0000000..883a97f
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+SHA512 (v1.7.0.tar.gz) =
d882582bc051d504728ddbf8253a0c1528a411fbb01db2e25ac124108018bb7fa7fb7c98e4c1358e407b58e20006fd30b7af019eea552d1b7e60562690134f60
diff --git a/upm.spec b/upm.spec
new file mode 100644
index 0000000..99e5f40
--- /dev/null
+++ b/upm.spec
@@ -0,0 +1,112 @@
+Name: upm
+Version: 1.7.0
+Release: 2%{?dist}
+Summary: A high level library for sensors and actuators
+License: MIT
+URL:
http://iotdk.intel.com/docs/master/upm/index.html
+
+Source0:
https://github.com/intel-iot-devkit/upm/archive/v%{version}.tar.gz
+
+#
https://github.com/intel-iot-devkit/upm/pull/666
+Patch1: 0001-Use-IdleNotificationDeadline-as-deprecated-IdleNotif.patch
+#
https://github.com/intel-iot-devkit/upm/pull/667
+Patch2: 0001-initise-all-uint8_t-variables-to-0.patch
+
+# To quote "Only x86, arm and mock platforms currently supported"
+ExcludeArch: %{power64} s390x
+
+BuildRequires: cmake
+BuildRequires: gcc gcc-c++
+BuildRequires: libjpeg-turbo-devel
+BuildRequires: mraa-devel
+BuildRequires: nodejs-devel nodejs-packaging nodejs-mraa
+BuildRequires: python3-devel python3-setuptools python3-mraa
+BuildRequires: swig
+BuildRequires: doxygen graphviz sphinx
+
+%description
+UPM is a high level repository that provides software drivers for a wide variety
+of commonly used sensors and actuators. These software drivers interact with the
+underlying hardware platform through calls to MRAA APIs.
+
+%package devel
+Summary: Development package for %{name}
+Requires: %{name}%{?_isa} = %{version}-%{release}
+
+%description devel
+Files for development with %{name}.
+
+%package -n python3-upm
+Summary: Python3 bindings for sensors and actuators
+License: GPLv2+
+%{?python_provide:%python_provide python3-upm}
+Requires: %{name}%{?_isa} = %{version}-%{release}
+Requires: python3-mraa
+
+%description -n python3-upm
+Python3 bindings for sensors and actuators
+
+%package -n nodejs-upm
+Summary: NodeJS package for sensors and actuators
+License: GPLv2+
+Requires: %{name}%{?_isa} = %{version}-%{release}
+Requires: nodejs-mraa
+
+%description -n nodejs-upm
+NodeJS bindings for sensors and actuators
+
+%prep
+%autosetup -p1
+
+find . -name \*.cxx -exec chmod -x {} \;
+
+%build
+if [ "%{_libdir}" = "%{_prefix}/lib64" ]; then
+ %cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr -DCMAKE_SKIP_RPATH=ON -DUSE_LIB64:BOOL=ON
-DVERSION:STRING=%{version} .
+else
+ %cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr -DCMAKE_SKIP_RPATH=ON -DUSE_LIB64:BOOL=OFF
-DVERSION:STRING=%{version} .
+fi
+
+make %{?_smp_mflags} V=1
+
+%install
+make install DESTDIR=%{buildroot} INSTALL='install -p'
+
+rpm -f %{buildroot}/%{_includedir}/upm/upm_utilities.hpp
+
+# Symlink nodejs dependencies
+%nodejs_symlink_deps
+
+%post -p /sbin/ldconfig
+
+%postun -p /sbin/ldconfig
+
+%files
+%license LICENSE
+%doc README.md
+%{_libdir}/lib%{name}*.so.*
+
+%files devel
+%{_includedir}/upm/
+%{_datadir}/upm/
+%{_libdir}/pkgconfig/%{name}*.pc
+%{_libdir}/lib%{name}*.so
+
+%files -n python3-upm
+%{python3_sitearch}/upm/
+
+%files -n nodejs-upm
+%{nodejs_sitelib}/jsupm_*/
+
+%changelog
+* Mon Sep 10 2018 Peter Robinson <pbrobinson(a)fedoraproject.org> 1.7.0-2
+- Add nodejs-mraa dep for nodejs-upm sub package
+
+* Sun Sep 9 2018 Peter Robinson <pbrobinson(a)fedoraproject.org> 1.7.0-1
+- New upstream 1.7.0 release
+
+* Thu Oct 12 2017 Peter Robinson <pbrobinson(a)fedoraproject.org> 1.5.0-1
+- New upstream 1.5.0 release
+
+* Tue May 16 2017 Peter Robinson <pbrobinson(a)fedoraproject.org> 1.3.0-1
+- Initial package