summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cmake/Modules/GrBoost.cmake30
-rw-r--r--cmake/Packaging/Fedora-18.cmake12
-rw-r--r--gnuradio-core/src/lib/io/gr_file_source.cc10
-rw-r--r--gr-blocks/lib/file_source_impl.cc8
-rw-r--r--gruel/src/include/gruel/thread.h2
5 files changed, 49 insertions, 13 deletions
diff --git a/cmake/Modules/GrBoost.cmake b/cmake/Modules/GrBoost.cmake
index 2b4e4bac2..dfd17fc24 100644
--- a/cmake/Modules/GrBoost.cmake
+++ b/cmake/Modules/GrBoost.cmake
@@ -50,14 +50,38 @@ if(MSVC)
endif(BOOST_ALL_DYN_LINK)
endif(MSVC)
-# Boost 1.52 disabled, see https://svn.boost.org/trac/boost/ticket/7669
+find_package(Boost "1.35" COMPONENTS ${BOOST_REQUIRED_COMPONENTS})
+
+# This does not allow us to disable specific versions. It is used
+# internally by cmake to know the formation newer versions. As newer
+# Boost version beyond what is shown here are produced, we must extend
+# this list. To disable Boost versions, see below.
set(Boost_ADDITIONAL_VERSIONS
"1.35.0" "1.35" "1.36.0" "1.36" "1.37.0" "1.37" "1.38.0" "1.38" "1.39.0" "1.39"
"1.40.0" "1.40" "1.41.0" "1.41" "1.42.0" "1.42" "1.43.0" "1.43" "1.44.0" "1.44"
"1.45.0" "1.45" "1.46.0" "1.46" "1.47.0" "1.47" "1.48.0" "1.48" "1.49.0" "1.49"
- "1.50.0" "1.50" "1.51.0" "1.51" "1.53.0" "1.53" "1.54.0" "1.54"
+ "1.50.0" "1.50" "1.51.0" "1.51" "1.52.0" "1.52" "1.53.0" "1.53" "1.54.0" "1.54"
"1.55.0" "1.55" "1.56.0" "1.56" "1.57.0" "1.57" "1.58.0" "1.58" "1.59.0" "1.59"
"1.60.0" "1.60" "1.61.0" "1.61" "1.62.0" "1.62" "1.63.0" "1.63" "1.64.0" "1.64"
"1.65.0" "1.65" "1.66.0" "1.66" "1.67.0" "1.67" "1.68.0" "1.68" "1.69.0" "1.69"
)
-find_package(Boost "1.35" COMPONENTS ${BOOST_REQUIRED_COMPONENTS})
+
+# Boost 1.52 disabled, see https://svn.boost.org/trac/boost/ticket/7669
+# Similar problems with Boost 1.46 and 1.47.
+
+# For any unsuitable Boost version, add the version number below in
+# the following format: XXYYZZ
+# Where:
+# XX is the major version ('10' for version 1)
+# YY is the minor version number ('46' for 1.46)
+# ZZ is the patcher version number (typically just '00')
+set(Boost_NOGO_VERSIONS
+ 104600 104700 105200
+)
+
+foreach(ver ${Boost_NOGO_VERSIONS})
+ if(${Boost_VERSION} EQUAL ${ver})
+ MESSAGE(STATUS "Found incompatible Boost (version ${Boost_VERSION}). Disabling.")
+ set(Boost_FOUND FALSE)
+ endif(${Boost_VERSION} EQUAL ${ver})
+endforeach(ver)
diff --git a/cmake/Packaging/Fedora-18.cmake b/cmake/Packaging/Fedora-18.cmake
new file mode 100644
index 000000000..2e9e78ee1
--- /dev/null
+++ b/cmake/Packaging/Fedora-18.cmake
@@ -0,0 +1,12 @@
+SET(PACKAGE_DEPENDS_GRUEL_RUNTIME "boost-python" "glibc")
+SET(PACKAGE_DEPENDS_GRUEL_PYTHON "python")
+SET(PACKAGE_DEPENDS_CORE_RUNTIME "fftw-libs")
+SET(PACKAGE_DEPENDS_QTGUI_RUNTIME "qt" "qwt")
+SET(PACKAGE_DEPENDS_QTGUI_PYTHON "PyQt4" "PyQwt")
+SET(PACKAGE_DEPENDS_GRC "python" "numpy" "gtk2" "python-lxml" "python-cheetah")
+SET(PACKAGE_DEPENDS_WXGUI "wxGTK" "python" "numpy")
+SET(PACKAGE_DEPENDS_VIDEO_SDL_RUNTIME "SDL")
+SET(PACKAGE_DEPENDS_UHD_RUNTIME "uhd")
+SET(PACKAGE_DEPENDS_AUDIO_RUNTIME "pulseaudio" "alsa-lib" "jack-audio-connection-kit")
+SET(PACKAGE_DEPENDS_WAVELET_RUNTIME "gsl")
+SET(PACKAGE_DEPENDS_WAVELET_PYTHON "python" "numpy")
diff --git a/gnuradio-core/src/lib/io/gr_file_source.cc b/gnuradio-core/src/lib/io/gr_file_source.cc
index 09f3986cd..f3def0721 100644
--- a/gnuradio-core/src/lib/io/gr_file_source.cc
+++ b/gnuradio-core/src/lib/io/gr_file_source.cc
@@ -89,7 +89,7 @@ gr_file_source::work (int noutput_items,
if(d_fp == NULL)
throw std::runtime_error("work with file not open");
- boost::mutex::scoped_lock lock(fp_mutex); // hold for the rest of this function
+ gruel::scoped_lock lock(fp_mutex); // hold for the rest of this function
while (size) {
i = fread(o, d_itemsize, size, (FILE *) d_fp);
@@ -129,7 +129,7 @@ bool
gr_file_source::seek (long seek_point, int whence)
{
// obtain exclusive access for duration of this function
- boost::mutex::scoped_lock lock(fp_mutex);
+ gruel::scoped_lock lock(fp_mutex);
return fseek((FILE *) d_fp, seek_point * d_itemsize, whence) == 0;
}
@@ -137,7 +137,7 @@ void
gr_file_source::open(const char *filename, bool repeat)
{
// obtain exclusive access for duration of this function
- boost::mutex::scoped_lock lock(fp_mutex);
+ gruel::scoped_lock lock(fp_mutex);
int fd;
@@ -166,7 +166,7 @@ void
gr_file_source::close()
{
// obtain exclusive access for duration of this function
- boost::mutex::scoped_lock lock(fp_mutex);
+ gruel::scoped_lock lock(fp_mutex);
if(d_new_fp != NULL) {
fclose(d_new_fp);
@@ -179,7 +179,7 @@ void
gr_file_source::do_update()
{
if(d_updated) {
- boost::mutex::scoped_lock lock(fp_mutex); // hold while in scope
+ gruel::scoped_lock lock(fp_mutex); // hold while in scope
if(d_fp)
fclose(d_fp);
diff --git a/gr-blocks/lib/file_source_impl.cc b/gr-blocks/lib/file_source_impl.cc
index ed1f50c43..a8db31be7 100644
--- a/gr-blocks/lib/file_source_impl.cc
+++ b/gr-blocks/lib/file_source_impl.cc
@@ -84,7 +84,7 @@ namespace gr {
file_source_impl::open(const char *filename, bool repeat)
{
// obtain exclusive access for duration of this function
- boost::mutex::scoped_lock lock(fp_mutex);
+ gruel::scoped_lock lock(fp_mutex);
int fd;
@@ -113,7 +113,7 @@ namespace gr {
file_source_impl::close()
{
// obtain exclusive access for duration of this function
- boost::mutex::scoped_lock lock(fp_mutex);
+ gruel::scoped_lock lock(fp_mutex);
if(d_new_fp != NULL) {
fclose(d_new_fp);
@@ -126,7 +126,7 @@ namespace gr {
file_source_impl::do_update()
{
if(d_updated) {
- boost::mutex::scoped_lock lock(fp_mutex); // hold while in scope
+ gruel::scoped_lock lock(fp_mutex); // hold while in scope
if(d_fp)
fclose(d_fp);
@@ -150,7 +150,7 @@ namespace gr {
if(d_fp == NULL)
throw std::runtime_error("work with file not open");
- boost::mutex::scoped_lock lock(fp_mutex); // hold for the rest of this function
+ gruel::scoped_lock lock(fp_mutex); // hold for the rest of this function
while(size) {
i = fread(o, d_itemsize, size, (FILE*)d_fp);
diff --git a/gruel/src/include/gruel/thread.h b/gruel/src/include/gruel/thread.h
index 63143c8b4..c0b54b0a4 100644
--- a/gruel/src/include/gruel/thread.h
+++ b/gruel/src/include/gruel/thread.h
@@ -31,7 +31,7 @@ namespace gruel {
typedef boost::thread thread;
typedef boost::mutex mutex;
- typedef boost::mutex::scoped_lock scoped_lock;
+ typedef boost::unique_lock<boost::mutex> scoped_lock;
typedef boost::condition_variable condition_variable;
} /* namespace gruel */