timevaltimesec変換マクロ

sys/time.hにあった。

#ifdef __USE_GNU
/* Macros for converting between `struct timeval' and `struct timespec'.  */
# define TIMEVAL_TO_TIMESPEC(tv, ts) {                                   \
        (ts)->tv_sec = (tv)->tv_sec;                                    \
        (ts)->tv_nsec = (tv)->tv_usec * 1000;                           \
}
# define TIMESPEC_TO_TIMEVAL(tv, ts) {                                   \
        (tv)->tv_sec = (ts)->tv_sec;                                    \
        (tv)->tv_usec = (ts)->tv_nsec / 1000;                           \
}
#endif


__USE_GNUがいるみたい。
__USE_GNUって見たことないので調べると、
#define _GNU_SOURCE
を行えば良いみたい。


_GNU_SOURCEってgetopt_long()ぐらいにしか使用したことが無い。
他にもあるのかな?
そのうち調べようかな。