diff options
-rw-r--r-- | cmake/msvc/config.h | 3 | ||||
-rw-r--r-- | gr-analog/lib/fastnoise_source_X_impl.cc.t | 4 | ||||
-rw-r--r-- | gr-blocks/lib/ConfigChecks.cmake | 7 | ||||
-rw-r--r-- | gr-blocks/lib/test_tag_variable_rate_ff_impl.cc | 12 |
4 files changed, 21 insertions, 5 deletions
diff --git a/cmake/msvc/config.h b/cmake/msvc/config.h index db0088e3a9..d3daed1587 100644 --- a/cmake/msvc/config.h +++ b/cmake/msvc/config.h @@ -61,7 +61,4 @@ static inline float rintf(float x){return (x > 0.0f)? floorf(x + 0.5f) : ceilf(x static inline long int random (void) { return rand(); } static inline void srandom (unsigned int seed) { srand(seed); } -#define srand48(seed) srand(seed) -#define drand48() (double(rand()) / RAND_MAX) - #endif // _MSC_CONFIG_H_ ] diff --git a/gr-analog/lib/fastnoise_source_X_impl.cc.t b/gr-analog/lib/fastnoise_source_X_impl.cc.t index 21f963b65a..940918b11b 100644 --- a/gr-analog/lib/fastnoise_source_X_impl.cc.t +++ b/gr-analog/lib/fastnoise_source_X_impl.cc.t @@ -144,7 +144,7 @@ namespace gr { @TYPE@ @IMPL_NAME@::sample() { -#ifdef __USE_GNU +#ifdef HAVE_RAND48 size_t idx = lrand48() % d_samples.size(); #else size_t idx = rand() % d_samples.size(); @@ -153,7 +153,7 @@ namespace gr { } #ifndef FASTNOISE_RANDOM_SIGN -#ifdef _MSC_VER +#ifndef HAVE_RAND48 #define FASTNOISE_RANDOM_SIGN ((rand()%2==0)?1:-1) #else #define FASTNOISE_RANDOM_SIGN ((lrand48()%2==0)?1:-1) diff --git a/gr-blocks/lib/ConfigChecks.cmake b/gr-blocks/lib/ConfigChecks.cmake index 1effaa8360..222a221dc1 100644 --- a/gr-blocks/lib/ConfigChecks.cmake +++ b/gr-blocks/lib/ConfigChecks.cmake @@ -89,3 +89,10 @@ CHECK_CXX_SOURCE_COMPILES(" " HAVE_COSF ) GR_ADD_COND_DEF(HAVE_COSF) + +CHECK_CXX_SOURCE_COMPILES(" + #include <stdlib.h> + int main(){srand48(0); drand48(); lrand48(); return 0;} + " HAVE_RAND48 +) +GR_ADD_COND_DEF(HAVE_RAND48) diff --git a/gr-blocks/lib/test_tag_variable_rate_ff_impl.cc b/gr-blocks/lib/test_tag_variable_rate_ff_impl.cc index 4927cc1408..ec239c9fa7 100644 --- a/gr-blocks/lib/test_tag_variable_rate_ff_impl.cc +++ b/gr-blocks/lib/test_tag_variable_rate_ff_impl.cc @@ -57,7 +57,11 @@ namespace gr { d_new_in = 0; d_last_out = 0; +#ifdef HAVE_RAND48 srand48(time(NULL)); +#else + srand(time(NULL)); +#endif } test_tag_variable_rate_ff_impl::~test_tag_variable_rate_ff_impl() @@ -78,7 +82,11 @@ namespace gr { GR_LOG_DEBUG(d_logger, boost::format("noutput_items: %1%") % noutput_items); if(d_update_once) { +#ifdef HAVE_RAND48 if(drand48() > 0.5) { +#else + if (rand() > RAND_MAX / 2) { +#endif d_rrate += d_update_step; } else { @@ -95,7 +103,11 @@ namespace gr { while(i < ninput_items[0]) { if(!d_update_once) { +#ifdef HAVE_RAND48 if(drand48() > 0.5) { +#else + if (rand() > RAND_MAX / 2) { +#endif d_rrate += d_update_step; } else { |