diff --git a/_constraints b/_constraints
deleted file mode 100644
index 2e7d479..0000000
--- a/_constraints
+++ /dev/null
@@ -1,7 +0,0 @@
-
-
-
- 4
-
-
-
diff --git a/boost_161.patch b/boost_161.patch
new file mode 100644
index 0000000..d1d43d3
--- /dev/null
+++ b/boost_161.patch
@@ -0,0 +1,48 @@
+Index: gnuradio-3.7.12.0/gr-blocks/lib/message_strobe_impl.cc
+===================================================================
+--- gnuradio-3.7.12.0.orig/gr-blocks/lib/message_strobe_impl.cc
++++ gnuradio-3.7.12.0/gr-blocks/lib/message_strobe_impl.cc
+@@ -91,7 +91,7 @@ namespace gr {
+ void message_strobe_impl::run()
+ {
+ while(!d_finished) {
+- boost::this_thread::sleep(boost::posix_time::milliseconds(d_period_ms));
++ boost::this_thread::sleep(boost::posix_time::microseconds(static_cast(d_period_ms * 1000)));
+ if(d_finished) {
+ return;
+ }
+Index: gnuradio-3.7.12.0/gr-uhd/lib/usrp_block_impl.cc
+===================================================================
+--- gnuradio-3.7.12.0.orig/gr-uhd/lib/usrp_block_impl.cc
++++ gnuradio-3.7.12.0/gr-uhd/lib/usrp_block_impl.cc
+@@ -196,7 +196,7 @@ bool usrp_block_impl::_wait_for_locked_s
+
+ while (true) {
+ if ((not first_lock_time.is_not_a_date_time()) and
+- (boost::get_system_time() > (first_lock_time + boost::posix_time::seconds(LOCK_TIMEOUT)))) {
++ (boost::get_system_time() > (first_lock_time + boost::posix_time::milliseconds(static_cast(1000*LOCK_TIMEOUT))))) {
+ break;
+ }
+
+@@ -207,7 +207,7 @@ bool usrp_block_impl::_wait_for_locked_s
+ else {
+ first_lock_time = boost::system_time(); //reset to 'not a date time'
+
+- if (boost::get_system_time() > (start + boost::posix_time::seconds(LOCK_TIMEOUT))){
++ if (boost::get_system_time() > (start + boost::posix_time::milliseconds(static_cast(1000*LOCK_TIMEOUT)))){
+ return false;
+ }
+ }
+Index: gnuradio-3.7.12.0/gr-blocks/lib/message_strobe_random_impl.cc
+===================================================================
+--- gnuradio-3.7.12.0.orig/gr-blocks/lib/message_strobe_random_impl.cc
++++ gnuradio-3.7.12.0/gr-blocks/lib/message_strobe_random_impl.cc
+@@ -110,7 +110,7 @@ namespace gr {
+ void message_strobe_random_impl::run()
+ {
+ while(!d_finished) {
+- boost::this_thread::sleep(boost::posix_time::milliseconds(std::max(0.0f,next_delay())));
++ boost::this_thread::sleep(boost::posix_time::microseconds(std::max(0L,static_cast(next_delay()))));
+ if(d_finished) {
+ return;
+ }
diff --git a/gnuradio.changes b/gnuradio.changes
index 7959421..c9213c0 100644
--- a/gnuradio.changes
+++ b/gnuradio.changes
@@ -1,3 +1,11 @@
+-------------------------------------------------------------------
+Tue May 29 09:56:10 UTC 2018 - adam.majer@suse.de
+
+- boost_161.patch: fix compilation with Boost 1.67 (bsc#1089806)
+- missing_library.patch: hack to fix linking with required
+ libraries.
+- use memory-constraints package instead of _constraints
+
-------------------------------------------------------------------
Mon Apr 2 22:28:38 UTC 2018 - mardnh@gmx.de
diff --git a/gnuradio.spec b/gnuradio.spec
index 8e1bab9..dd0c7d6 100644
--- a/gnuradio.spec
+++ b/gnuradio.spec
@@ -1,7 +1,7 @@
#
# spec file for package gnuradio
#
-# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -23,7 +23,7 @@ Name: gnuradio
Version: 3.7.12.0
Release: 0
Summary: GNU software radio
-License: GPL-3.0+
+License: GPL-3.0-or-later
Group: Productivity/Hamradio/Other
URL: http://gnuradio.org
Source: https://github.com/gnuradio/gnuradio/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz
@@ -31,6 +31,8 @@ Source1: https://github.com/gnuradio/volk/archive/v%{volk_version}.tar.gz
# http://www.nathanwest.us/grc_to_37.sh
Source2: grc_to_37.sh
Source99: %{name}-rpmlintrc
+Patch1: boost_161.patch
+Patch2: missing_library.patch
BuildRequires: alsa-devel
BuildRequires: boost-devel
BuildRequires: cmake
@@ -43,6 +45,7 @@ BuildRequires: gsl-devel
BuildRequires: libSDL-devel
BuildRequires: libjack-devel
BuildRequires: libxslt-python
+BuildRequires: memory-constraints
BuildRequires: orc
BuildRequires: pkgconfig
BuildRequires: portaudio-devel
@@ -190,14 +193,17 @@ This package contains the examples of using GNU Radio depending on wxWidgets.
%prep
%setup -q
tar xzf %{SOURCE1} -C volk/ --strip-components=1
+%patch1 -p1
+%patch2 -p1
# remove buildtime from documentation
sed -i 's|^HTML_TIMESTAMP = YES|HTML_TIMESTAMP = NO|' docs/doxygen/Doxyfile.in
sed -i 's|^HTML_TIMESTAMP = YES|HTML_TIMESTAMP = NO|' docs/doxygen/Doxyfile.swig_doc.in
%build
-%cmake \
- -DCMAKE_SHARED_LINKER_FLAGS=""
-make -j2
+%limit_build -m 2000
+%cmake
+# -DCMAKE_SHARED_LINKER_FLAGS=""
+%make_jobs
%install
%cmake_install
@@ -245,7 +251,7 @@ rm -rf %{buildroot}%{_prefix}/libexec
%files
%defattr(-,root,root,-)
-%doc COPYING
+%license COPYING
%{_bindir}/*
%dir %{_datadir}/gnuradio
%{_datadir}/gnuradio/grc/
diff --git a/missing_library.patch b/missing_library.patch
new file mode 100644
index 0000000..cb8a996
--- /dev/null
+++ b/missing_library.patch
@@ -0,0 +1,71 @@
+Index: gnuradio-3.7.12.0/gr-uhd/gnuradio-uhd.pc.in
+===================================================================
+--- gnuradio-3.7.12.0.orig/gr-uhd/gnuradio-uhd.pc.in
++++ gnuradio-3.7.12.0/gr-uhd/gnuradio-uhd.pc.in
+@@ -7,5 +7,5 @@ Name: gnuradio-uhd
+ Description: GNU Radio blocks for UHD
+ Requires: gnuradio-runtime
+ Version: @LIBVER@
+-Libs: -L${libdir} -lgnuradio-uhd
++Libs: -L${libdir} -lgnuradio-uhd -lpthread
+ Cflags: -I${includedir}
+Index: gnuradio-3.7.12.0/gr-uhd/examples/c++/CMakeLists.txt
+===================================================================
+--- gnuradio-3.7.12.0.orig/gr-uhd/examples/c++/CMakeLists.txt
++++ gnuradio-3.7.12.0/gr-uhd/examples/c++/CMakeLists.txt
+@@ -31,11 +31,14 @@ include_directories(
+ link_directories(${UHD_LIBRARY_DIRS})
+ link_directories(${Boost_LIBRARY_DIRS})
+
++set(THREADS_PREFER_PTHREAD_FLAG ON)
++find_package(Threads REQUIRED)
++
+ ########################################################################
+ # Build executable
+ ########################################################################
+ add_executable(tags_demo tags_demo.cc)
+-target_link_libraries(tags_demo gnuradio-uhd)
++target_link_libraries(tags_demo gnuradio-uhd Threads::Threads)
+
+ INSTALL(TARGETS
+ tags_demo
+Index: gnuradio-3.7.12.0/volk/lib/CMakeLists.txt
+===================================================================
+--- gnuradio-3.7.12.0.orig/volk/lib/CMakeLists.txt
++++ gnuradio-3.7.12.0/volk/lib/CMakeLists.txt
+@@ -532,7 +532,7 @@ if(CMAKE_VERSION VERSION_GREATER "2.8.11
+
+ #Add dynamic library
+ add_library(volk SHARED $)
+- target_link_libraries(volk ${volk_libraries})
++ target_link_libraries(volk ${volk_libraries} "m")
+ target_include_directories(volk
+ PUBLIC ${PROJECT_BINARY_DIR}/include
+ PUBLIC ${PROJECT_SOURCE_DIR}/include
+@@ -574,7 +574,7 @@ if(CMAKE_VERSION VERSION_GREATER "2.8.11
+ else()
+ #create the volk runtime library
+ add_library(volk SHARED ${volk_sources})
+- target_link_libraries(volk ${volk_libraries})
++ target_link_libraries(volk ${volk_libraries} "m")
+ include_directories(volk
+ PUBLIC ${PROJECT_BINARY_DIR}/include
+ PUBLIC ${PROJECT_SOURCE_DIR}/include
+Index: gnuradio-3.7.12.0/gnuradio-runtime/lib/pmt/CMakeLists.txt
+===================================================================
+--- gnuradio-3.7.12.0.orig/gnuradio-runtime/lib/pmt/CMakeLists.txt
++++ gnuradio-3.7.12.0/gnuradio-runtime/lib/pmt/CMakeLists.txt
+@@ -81,9 +81,13 @@ set(pmt_sources
+ ${CMAKE_CURRENT_SOURCE_DIR}/pmt_serialize.cc
+ )
+
++set(THREADS_PREFER_PTHREAD_FLAG ON)
++find_package(Threads REQUIRED)
++
+ list(APPEND gnuradio_pmt_libs
+ ${Boost_LIBRARIES}
+ ${LOG4CPP_LIBRARIES}
++ Threads::Threads
+ )
+
+ add_custom_target(pmt_generated