tmlib revision 1
0N/Aset prototyped
1753N/A
0N/A_cc_export_dynamic = note{ probe CC.EXPORT.DYNAMIC supported }end run{
0N/A case `{ probe -l C make cc | grep '^CC.EXPORT.DYNAMIC = .'; } 2>/dev/null` in
0N/A '') exit 1 ;;
0N/A esac
0N/A}end
0N/A
0N/Atst tzset_environ note{ tzset() bypasses user getenv() }end execute{
0N/A #if _UWIN || !_cc_export_dynamic
0N/A int main()
0N/A {
0N/A return 0;
0N/A }
0N/A #else
0N/A #include <time.h>
0N/A extern char** environ;
0N/A extern char* tzname[2];
1472N/A #if _STD_
1472N/A extern char* getenv(char* s)
1472N/A #else
0N/A extern char* getenv(s)
0N/A char* s;
0N/A #endif
1879N/A {
1879N/A return "foo0bar";
1879N/A }
1879N/A int main()
1879N/A {
1879N/A tzset();
1879N/A return tzname[0] && !strcmp(tzname[0], "foo") &&
1879N/A tzname[1] && !strcmp(tzname[1], "bar");
1879N/A }
1879N/A #endif
1879N/A}end
1879N/A
1879N/Aif ( _tzset_environ ) {
1879N/A #define tmlocaltime(p) _tm_localtime(p)
1879N/A
1879N/A extern struct tm* _tm_localtime(const time_t*);
1879N/A}
0N/Aelse {
0N/A #define tmlocaltime(p) localtime(p)
0N/A}
0N/Aendif
0N/A