From 25e228f53f694b5b97674343dac6f44f6fc1f73f Mon Sep 17 00:00:00 2001 From: degomme Date: Wed, 4 Apr 2018 09:54:18 +0200 Subject: [PATCH] try to get rid of warning by defining calls here To avoid redefining them, move also the definition from smpi.h to private.hpp --- include/smpi/smpi.h | 16 +--------------- include/smpi/smpi_helpers.h | 15 +++++++++++++++ src/smpi/include/private.hpp | 18 ++++++++++++++++++ 3 files changed, 34 insertions(+), 15 deletions(-) diff --git a/include/smpi/smpi.h b/include/smpi/smpi.h index d0913c11f4..bccb165e6d 100644 --- a/include/smpi/smpi.h +++ b/include/smpi/smpi.h @@ -8,10 +8,6 @@ #include #include -#if _POSIX_TIMERS -#include -#endif - #include #include #include @@ -919,13 +915,7 @@ XBT_PUBLIC int smpi_get_host_pstate(); XBT_PUBLIC double smpi_get_host_consumed_energy(); -XBT_PUBLIC int smpi_usleep(useconds_t usecs); -#if _POSIX_TIMERS > 0 -XBT_PUBLIC int smpi_nanosleep(const struct timespec* tp, struct timespec* t); -XBT_PUBLIC int smpi_clock_gettime(clockid_t clk_id, struct timespec* tp); -#endif -XBT_PUBLIC unsigned int smpi_sleep(unsigned int secs); -XBT_PUBLIC int smpi_gettimeofday(struct timeval* tv, struct timezone* tz); + XBT_PUBLIC unsigned long long smpi_rastro_resolution(); XBT_PUBLIC unsigned long long smpi_rastro_timestamp(); XBT_PUBLIC void smpi_sample_1(int global, const char* file, int line, int iters, double threshold); @@ -994,10 +984,6 @@ XBT_PUBLIC void SMPI_finalize(); XBT_PUBLIC void smpi_register_static(void* arg, void_f_pvoid_t free_fn); XBT_PUBLIC void smpi_free_static(); - -struct option; -XBT_PUBLIC int smpi_getopt_long (int argc, char *const *argv, const char *options, const struct option *long_options, int *opt_index); -XBT_PUBLIC int smpi_getopt (int argc, char *const *argv, const char *options); #define SMPI_VARINIT_GLOBAL(name,type) \ type *name = NULL; \ static void __attribute__((constructor)) __preinit_##name(void) { \ diff --git a/include/smpi/smpi_helpers.h b/include/smpi/smpi_helpers.h index d6e828e9b2..b76af574da 100644 --- a/include/smpi/smpi_helpers.h +++ b/include/smpi/smpi_helpers.h @@ -3,6 +3,21 @@ #include #include /* Load it before the define next line to not mess with the system headers */ +#if _POSIX_TIMERS +#include +#endif + +int smpi_usleep(useconds_t usecs); +#if _POSIX_TIMERS > 0 +int smpi_nanosleep(const struct timespec* tp, struct timespec* t); +int smpi_clock_gettime(clockid_t clk_id, struct timespec* tp); +#endif +unsigned int smpi_sleep(unsigned int secs); +int smpi_gettimeofday(struct timeval* tv, struct timezone* tz); + +struct option; +int smpi_getopt_long (int argc, char *const *argv, const char *options, const struct option *long_options, int *opt_index); +int smpi_getopt (int argc, char *const *argv, const char *options); #define sleep(x) smpi_sleep(x) #define usleep(x) smpi_usleep(x) diff --git a/src/smpi/include/private.hpp b/src/smpi/include/private.hpp index 5bb015ba8e..82ec82cd35 100644 --- a/src/smpi/include/private.hpp +++ b/src/smpi/include/private.hpp @@ -12,6 +12,10 @@ #include "src/internal_config.h" #include #include +#include +#if _POSIX_TIMERS +#include +#endif extern "C" { @@ -404,6 +408,20 @@ void mpi_file_set_view_(int* fh, long long int* offset, int* etype, int* filetyp void mpi_file_read_(int* fh, void* buf, int* count, int* datatype, MPI_Status* status, int* ierr); void mpi_file_write_(int* fh, void* buf, int* count, int* datatype, MPI_Status* status, int* ierr); + +XBT_PUBLIC int smpi_usleep(useconds_t usecs); +#if _POSIX_TIMERS > 0 +XBT_PUBLIC int smpi_nanosleep(const struct timespec* tp, struct timespec* t); +XBT_PUBLIC int smpi_clock_gettime(clockid_t clk_id, struct timespec* tp); +#endif +XBT_PUBLIC unsigned int smpi_sleep(unsigned int secs); +XBT_PUBLIC int smpi_gettimeofday(struct timeval* tv, struct timezone* tz); + + +struct option; +XBT_PUBLIC int smpi_getopt_long (int argc, char *const *argv, const char *options, const struct option *long_options, int *opt_index); +XBT_PUBLIC int smpi_getopt (int argc, char *const *argv, const char *options); + // TODO, make this static and expose it more cleanly struct s_smpi_privatization_region_t { -- 2.20.1