[clock_time] Fix rt_timespec_to_tick availability for POSIX semaphores

- Moved rt_timespec_to_tick outside of RT_USING_CLOCK_TIME guard
- Function now available with just RT_USING_POSIX_CLOCK defined
- Fixes undefined reference error when building with POSIX semaphores
- Maintains backward compatibility with configurations that don't use clock_time yet

Co-authored-by: BernardXiong <1241087+BernardXiong@users.noreply.github.com>
This commit is contained in:
copilot-swe-agent[bot]
2025-12-28 23:36:08 +00:00
parent c7d1918e37
commit 533806c344

View File

@@ -750,6 +750,17 @@ int clock_settime(clockid_t clockid, const struct timespec *tp)
}
RTM_EXPORT(clock_settime);
#endif /* RT_USING_POSIX_CLOCK && RT_USING_CLOCK_TIME */
#ifdef RT_USING_POSIX_CLOCK
/**
* @brief Convert absolute timespec to relative tick
* @param time Absolute time
* @return Relative tick value
*
* @note This function is available when RT_USING_POSIX_CLOCK is defined,
* regardless of RT_USING_CLOCK_TIME, to support POSIX semaphores and other APIs.
*/
int rt_timespec_to_tick(const struct timespec *time)
{
int tick;
@@ -784,7 +795,7 @@ int rt_timespec_to_tick(const struct timespec *time)
}
RTM_EXPORT(rt_timespec_to_tick);
#endif /* RT_USING_POSIX_CLOCK && RT_USING_CLOCK_TIME */
#endif /* RT_USING_POSIX_CLOCK */
#if defined(RT_USING_POSIX_TIMER) && defined(RT_USING_CLOCK_TIME)