diff --git a/CMakeModules/UseCompat.cmake b/CMakeModules/UseCompat.cmake
index 7d7a338..a3be828 100644
--- a/CMakeModules/UseCompat.cmake
+++ b/CMakeModules/UseCompat.cmake
@@ -47,6 +47,10 @@
 
     check_include_file("stdatomic.h" HAVE_STDATOMIC)
 
+    include(CheckStructHasMember)
+    check_struct_has_member("struct tm" tm_gmtoff time.h HAVE_TM_GMTOFF)
+    check_symbol_exists(timezone time.h HAVE_TIME_H_TIMEZONE)
+
     unset(CMAKE_REQUIRED_DEFINITIONS)
     unset(CMAKE_REQUIRED_LIBRARIES)
 
diff --git a/compat/compat.h.in b/compat/compat.h.in
index 9383f2d..8ff7c89 100644
--- a/compat/compat.h.in
+++ b/compat/compat.h.in
@@ -58,6 +58,8 @@
 #cmakedefine HAVE_STRCHRNUL
 #cmakedefine HAVE_GET_CURRENT_DIR_NAME
 #cmakedefine HAVE_PTHREAD_MUTEX_TIMEDLOCK
+#cmakedefine HAVE_TM_GMTOFF
+#cmakedefine HAVE_TIME_H_TIMEZONE
 
 #ifndef bswap64
 #define bswap64(val) \
diff --git a/src/plugins_types/date_and_time.c b/src/plugins_types/date_and_time.c
index 62e304c..627869b 100644
--- a/src/plugins_types/date_and_time.c
+++ b/src/plugins_types/date_and_time.c
@@ -115,6 +115,7 @@
     ret = ly_time_str2time(value, &val->time, &val->fractions_s);
     LY_CHECK_GOTO(ret, cleanup);
 
+#ifdef HAVE_TIME_H_TIMEZONE
     if (!strncmp(((char *)value + value_len) - 6, "-00:00", 6)) {
         /* unknown timezone, move the timestamp to UTC */
         tzset();
@@ -136,6 +137,10 @@
             }
         }
     }
+#else
+    (void)tm;
+    val->unknown_tz = 1;
+#endif
 
     if (format == LY_VALUE_CANON) {
         /* store canonical value */
diff --git a/src/tree_data_helpers.c b/src/tree_data_helpers.c
index 714b1fd..94b5fd1 100644
--- a/src/tree_data_helpers.c
+++ b/src/tree_data_helpers.c
@@ -934,6 +934,7 @@
         return LY_ESYS;
     }
 
+#ifdef HAVE_TM_GMTOFF
     /* get timezone offset */
     if (tm.tm_gmtoff == 0) {
         /* time is Zulu (UTC) */
@@ -945,6 +946,11 @@
         zonediff_m = tm.tm_gmtoff / 60 % 60;
     }
     sprintf(zoneshift, "%+03d:%02d", zonediff_h, zonediff_m);
+#else
+    (void)zonediff_h;
+    (void)zonediff_m;
+    sprintf(zoneshift, "-00:00");
+#endif
 
     /* print */
     if (asprintf(str, "%04d-%02d-%02dT%02d:%02d:%02d%s%s%s",
diff --git a/tests/utests/types/yang_types.c b/tests/utests/types/yang_types.c
index 2ed427c..567df72 100644
--- a/tests/utests/types/yang_types.c
+++ b/tests/utests/types/yang_types.c
@@ -18,6 +18,7 @@
 
 #include <stdlib.h>
 
+#include "compat.h"
 #include "libyang.h"
 
 #define MODULE_CREATE_YIN(MOD_NAME, NODES) \
@@ -90,6 +91,7 @@
     UTEST_ADD_MODULE(schema, LYS_IN_YANG, NULL, NULL);
 
     /* date-and-time */
+#if defined (HAVE_TM_GMTOFF) && defined (HAVE_TIME_H_TIMEZONE)
     TEST_SUCCESS_XML("a", "l", "2005-05-25T23:15:15.88888Z", STRING, "2005-05-25T21:15:15.88888-02:00");
     TEST_SUCCESS_XML("a", "l", "2005-05-31T23:15:15-08:59", STRING, "2005-06-01T06:14:15-02:00");
     TEST_SUCCESS_XML("a", "l", "2005-05-31T23:15:15-23:00", STRING, "2005-06-01T20:15:15-02:00");
@@ -104,6 +106,12 @@
     /* unknown timezone */
     TEST_SUCCESS_XML("a", "l", "2017-02-01T00:00:00-00:00", STRING, "2017-02-01T00:00:00-00:00");
     TEST_SUCCESS_XML("a", "l", "2021-02-29T00:00:00-00:00", STRING, "2021-03-01T00:00:00-00:00");
+#else
+    /* Tests run with a TZ offset of +02:00.
+     * Strictly speaking, this result is "not wrong" because we're indeed saying "unspecified TZ". */
+    TEST_SUCCESS_XML("a", "l", "2005-05-25T23:15:15.88888Z", STRING, "2005-05-25T21:15:15.88888-00:00");
+    TEST_SUCCESS_XML("a", "l", "2005-05-25T23:15:15.88888+04:30", STRING, "2005-05-25T16:45:15.88888-00:00");
+#endif
 
     TEST_ERROR_XML("a", "l", "2005-05-31T23:15:15.-08:00");
     CHECK_LOG_CTX("Unsatisfied pattern - \"2005-05-31T23:15:15.-08:00\" does not conform to "
