tree-optimization/112281 - loop distribution and zero dependence distances
[official-gcc.git] / libgm2 / ChangeLog
blobc79542b48789d651120bb058a88ee2cc970de237
1 2023-11-13  Gaius Mulley  <gaiusmod2@gmail.com>
3         PR modula2/110779
4         * Makefile.in: Regenerate.
5         * aclocal.m4: Regenerate.
6         * config.h.in: Regenerate.
7         * configure: Regenerate.
8         * configure.ac: Remove newline.
9         * libm2cor/Makefile.in: Regenerate.
10         * libm2iso/Makefile.in: Regenerate.
11         * libm2log/Makefile.in: Regenerate.
12         * libm2min/Makefile.in: Regenerate.
13         * libm2pim/Makefile.in: Regenerate.
14         * acinclude.m4: New file.
15         * configure.host: New file.
17 2023-10-27  Gaius Mulley  <gaiusmod2@gmail.com>
19         PR modula2/112110
20         * libm2iso/wrapclock.cc (timezone): Return 0 if unable
21         to get the timezone from the tm struct.
23 2023-10-27  Gaius Mulley  <gaiusmod2@gmail.com>
25         PR modula2/111530
26         * Makefile.in: Regenerate.
27         * aclocal.m4: Regenerate.
28         * config.h.in: Regenerate.
29         * configure: Regenerate.
30         * configure.ac (AC_CHECK_HEADERS): Include getopt.h.
31         (GM2_CHECK_LIB): getopt_long check.
32         (GM2_CHECK_LIB): getopt_long_only check.
33         * libm2cor/Makefile.in: Regenerate.
34         * libm2iso/Makefile.in: Regenerate.
35         * libm2log/Makefile.in: Regenerate.
36         * libm2min/Makefile.in: Regenerate.
37         * libm2pim/Makefile.in: Regenerate.
38         * libm2pim/cgetopt.cc: Re-write using conditional on configure
39         and long function code from libiberty/getopt.c.
41 2023-10-25  Gaius Mulley  <gaiusmod2@gmail.com>
43         PR modula2/111955
44         * libm2pim/wrapc.cc (isnan): Export new function.
45         (isnanf): Export new function.
46         (isnanl): Export new function.
48 2023-10-22  Iain Sandoe  <iain@sandoe.co.uk>
50         * Makefile.am: Handle Darwin rpaths.
51         * Makefile.in: Regenerate.
52         * aclocal.m4: Regenerate.
53         * configure: Regenerate.
54         * configure.ac: Handle Darwin rpaths.
55         * libm2cor/Makefile.am: Handle Darwin rpaths.
56         * libm2cor/Makefile.in: Regenerate.
57         * libm2iso/Makefile.am: Handle Darwin rpaths.
58         * libm2iso/Makefile.in: Regenerate.
59         * libm2log/Makefile.am: Handle Darwin rpaths.
60         * libm2log/Makefile.in: Regenerate.
61         * libm2min/Makefile.am: Handle Darwin rpaths.
62         * libm2min/Makefile.in: Regenerate.
63         * libm2pim/Makefile.am: Handle Darwin rpaths.
64         * libm2pim/Makefile.in: Regenerate.
66 2023-09-29  Gaius Mulley  <gaiusmod2@gmail.com>
68         * libm2iso/wrapclock.cc (longint_t): New declaration.
69         (GetTimespec): Replace types for sec and nano with
70         longint_t.
71         (SetTimespec): Replace types for sec and nano with
72         longint_t.
74 2023-09-19  Gaius Mulley  <gaiusmod2@gmail.com>
76         * Makefile.am (TARGET_LONGDOUBLE_ABI): New variable set to
77         -mabi=ieeelongdouble if the target is powerpc64le.
78         (AM_MAKEFLAGS): Append TARGET_LONGDOUBLE_ABI.
79         * Makefile.in: Rebuild.
80         * libm2cor/Makefile.am (AM_MAKEFLAGS): Add CFLAGS_LONGDOUBLE and
81         TARGET_LONGDOUBLE_ABI.
82         (libm2cor_la_CFLAGS): Add TARGET_LONGDOUBLE_ABI.
83         (libm2cor_la_M2FLAGS): Add TARGET_LONGDOUBLE_ABI.
84         * libm2cor/Makefile.in: Rebuild.
85         * libm2iso/Makefile.am (AM_MAKEFLAGS): Add CFLAGS_LONGDOUBLE and
86         TARGET_LONGDOUBLE_ABI.
87         (libm2iso_la_CFLAGS): Add TARGET_LONGDOUBLE_ABI.
88         (libm2iso_la_M2FLAGS): Add TARGET_LONGDOUBLE_ABI.
89         * libm2iso/Makefile.in: Rebuild.
90         * libm2log/Makefile.am (AM_MAKEFLAGS): Add CFLAGS_LONGDOUBLE and
91         TARGET_LONGDOUBLE_ABI.
92         (libm2log_la_CFLAGS): Add TARGET_LONGDOUBLE_ABI.
93         (libm2log_la_M2FLAGS): Add TARGET_LONGDOUBLE_ABI.
94         * libm2log/Makefile.in: Rebuild.
95         * libm2min/Makefile.am (AM_MAKEFLAGS): Add CFLAGS_LONGDOUBLE and
96         TARGET_LONGDOUBLE_ABI.
97         (libm2min_la_CFLAGS): Add TARGET_LONGDOUBLE_ABI.
98         (libm2min_la_M2FLAGS): Add TARGET_LONGDOUBLE_ABI.
99         * libm2min/Makefile.in: Rebuild.
100         * libm2pim/Makefile.am (AM_MAKEFLAGS): Add CFLAGS_LONGDOUBLE and
101         TARGET_LONGDOUBLE_ABI.
102         (libm2pim_la_CFLAGS): Add TARGET_LONGDOUBLE_ABI.
103         (libm2pim_la_M2FLAGS): Add TARGET_LONGDOUBLE_ABI.
104         * libm2pim/Makefile.in: Rebuild.
106 2023-09-13  Gaius Mulley  <gaiusmod2@gmail.com>
108         * libm2cor/Makefile.am (libm2cor_la_M2FLAGS): Add
109         -Wcase-enum.
110         * libm2cor/Makefile.in: Regenerate.
111         * libm2iso/Makefile.am (libm2iso_la_M2FLAGS): Add
112         -Wcase-enum.
113         * libm2iso/Makefile.in: Regenerate.
114         * libm2log/Makefile.am (libm2log_la_M2FLAGS): Add
115         -Wcase-enum.
116         * libm2log/Makefile.in: Regenerate.
117         * libm2pim/Makefile.am (libm2pim_la_M2FLAGS): Add
118         -Wcase-enum.
119         * libm2pim/Makefile.in: Regenerate.
121 2023-08-12  Gaius Mulley  <gaiusmod2@gmail.com>
123         PR modula2/110779
124         * configure: Regenerate.
125         * configure.ac: Provide special case test for Darwin cross
126         configuration.
127         (GLIBCXX_CONFIGURE): New statement.
128         (GLIBCXX_CHECK_GETTIMEOFDAY): New statement.
129         (GLIBCXX_ENABLE_LIBSTDCXX_TIME): New statement.
130         * libm2iso/wrapclock.cc: New sys/time.h conditional include.
131         (sys/syscall.h): Conditional include.
132         (unistd.h): Conditional include.
133         (GetTimeRealtime): Re-implement.
134         (SetTimeRealtime): Re-implement.
135         (timezone): Re-implement.
136         (istimezone): New function.
137         (daylight): Re-implement.
138         (isdst): Re-implement.
139         (tzname): Re-implement.
141 2023-08-09  Gaius Mulley  <gaiusmod2@gmail.com>
143         PR modula2/110779
144         * config.h.in: Regenerate.
145         * configure: Regenerate.
146         * configure.ac (AC_CACHE_CHECK): Check for tm_gmtoff field in
147         struct tm.
148         (GM2_CHECK_LIB): Check for daylight, timezone and tzname.
149         * libm2iso/wrapclock.cc (timezone): Guard against absence of
150         struct tm and tm_gmtoff.
151         (daylight): Check for daylight.
152         (timezone): Check for timezone.
153         (isdst): Check for isdst.
154         (tzname): Check for tzname.
155         (GetTimeRealtime): Check for struct timespec.
156         (SetTimeRealtime): Check for struct timespec.
157         (InitTimespec): Check for struct timespec.
158         (KillTimespec): Check for struct timespec.
159         (SetTimespec): Check for struct timespec.
160         (GetTimespec): Check for struct timespec.
162 2023-08-07  Nick Alcock  <nick.alcock@oracle.com>
164         * configure: Regenerate.
166 2023-08-07  Alexander von Gluck IV  <kallisti5@unixzen.com>
168         * configure: Regenerate.
170 2023-08-07  Nick Alcock  <nick.alcock@oracle.com>
172         * configure: Regenerate.
174 2023-08-07  Nick Alcock  <nick.alcock@oracle.com>
176         * configure: Regenerate.
178 2023-08-07  H.J. Lu  <hjl.tools@gmail.com>
180         * configure: Regenerate.
182 2023-08-07  H.J. Lu  <hjl.tools@gmail.com>
184         * configure: Regenerate.
186 2023-08-05  Gaius Mulley  <gaiusmod2@gmail.com>
188         PR modula2/110779
189         * config.h.in: Regenerate.
190         * configure: Regenerate.
191         * configure.ac (GM2_CHECK_LIB): Check for clock_gettime
192         and clock_settime.
193         * libm2iso/Makefile.am (M2DEFS): Add wrapclock.def.
194         * libm2iso/Makefile.in: Regenerate.
195         * libm2iso/wraptime.cc: Replace HAVE_TIMEVAL with
196         HAVE_STRUCT_TIMEVAL.
197         * libm2iso/wrapclock.cc: New file.
199 2023-06-02  Thomas Schwinge  <thomas@codesourcery.com>
201         * configure.ac (PERL): Remove.
202         * configure: Regenerate.
203         * Makefile.in: Likewise.
204         * libm2cor/Makefile.in: Likewise.
205         * libm2iso/Makefile.in: Likewise.
206         * libm2log/Makefile.in: Likewise.
207         * libm2min/Makefile.in: Likewise.
208         * libm2pim/Makefile.in: Likewise.
210 2023-05-16  Gaius Mulley  <gaiusmod2@gmail.com>
212         PR modula2/109879
213         * Makefile.in: Regenerate.
214         * aclocal.m4: Regenerate.
215         * libm2cor/Makefile.in: Regenerate.
216         * libm2iso/Makefile.am (M2DEFS): Add TextUtil.def.
217         (M2MODS): Add TextUtil.mod.
218         * libm2iso/Makefile.in: Regenerate.
219         * libm2log/Makefile.in: Regenerate.
220         * libm2min/Makefile.in: Regenerate.
221         * libm2pim/Makefile.in: Regenerate.
223 2023-05-16  Gaius Mulley  <gaiusmod2@gmail.com>
225         PR modula2/108344
226         * libm2cor/KeyBoardLEDs.cc (initialize_module): New function.
227         (SwitchScroll): Call initialize_module.
228         (SwitchNum): Call initialize_module.
229         (SwitchCaps): Call initialize_module.
230         (SwitchLEDs): Call initialize_module.
231         (M2EXPORT): Remove initialization code.
233 2023-05-13  Gaius Mulley  <gaiusmod2@gmail.com>
235         * libm2cor/KeyBoardLEDs.cc (TRUE): Remove.
236         (FALSE): Remove.
237         (init): Replace TRUE with true.
238         * libm2iso/RTco.cc (TRUE): Remove.
239         (FALSE): Remove.
240         (initSem): Replace int with bool.
241         (init): Replace FALSE with false.
242         * libm2pim/sckt.cc (TRUE): Remove.
243         (FALSE): Remove.
244         * libm2pim/wrapc.cc: Replace TRUE with true
245         and FALSE with false.
246         (FALSE): Remove.
247         (TRUE): Remove.
249 2023-05-08  Thomas Schwinge  <thomas@codesourcery.com>
251         * autogen.sh: Remove.
253 2023-05-08  Thomas Schwinge  <thomas@codesourcery.com>
255         * autogen.sh: For 'aclocal', 'autoreconf', remove '-I .',
256         add '-I ..'.
257         * Makefile.am (ACLOCAL_AMFLAGS): Remove '-I .'.
258         * libm2cor/Makefile.am (ACLOCAL_AMFLAGS): Likewise.
259         * libm2iso/Makefile.am (ACLOCAL_AMFLAGS): Likewise.
260         * libm2log/Makefile.am (ACLOCAL_AMFLAGS): Likewise.
261         * libm2min/Makefile.am (ACLOCAL_AMFLAGS): Likewise.
262         * libm2pim/Makefile.am (ACLOCAL_AMFLAGS): Likewise.
263         * aclocal.m4: Regenerate.
264         * Makefile.in: Likewise.
265         * libm2cor/Makefile.in: Likewise.
266         * libm2iso/Makefile.in: Likewise.
267         * libm2log/Makefile.in: Likewise.
268         * libm2min/Makefile.in: Likewise.
269         * libm2pim/Makefile.in: Likewise.
271 2023-03-22  Gaius Mulley  <gaiusmod2@gmail.com>
273         * libm2pim/Makefile.am (M2DEFS): Remove M2LINK.def.
274         * libm2pim/Makefile.in: Rebuild.
276 2023-03-16  Gaius Mulley  <gaiusmod2@gmail.com>
278         * libm2cor/Makefile.am: Remove
279         * libm2cor/Makefile.in: Rebuild.
280         * libm2iso/RTco.cc (newSem): Halt parameters reordered.
281         (currentThread): Ditto.
282         (never): Ditto.
283         (defined): Ditto.
284         (initThread): Ditto.
285         * libm2iso/m2rts.h (m2iso_M2RTS_HaltC): Ditto.
287 2023-03-15  Gaius Mulley  <gaiusmod2@gmail.com>
289         PR modula2/109125
290         * libm2pim/dtoa.cc (TRUE): Remove.
291         (FALSE): Remove.  Replace int with bool.
292         * libm2pim/ldtoa.cc (TRUE): Remove.
293         (FALSE): Remove.  Replace int with bool.
295 2023-03-14  Gaius Mulley  <gaiusmod2@gmail.com>
297         PR modula2/109125
298         * libm2iso/ErrnoCategory.cc (FALSE): Remove.
299         (TRUE): Remove.
300         * libm2iso/wrapsock.c (TRUE): Remove.
301         (FALSE): Remove.
302         * libm2iso/wraptime.cc (TRUE): Remove.
303         (FALSE): Remove.
304         * libm2pim/cgetopt.cc: Replace int for bool for every BOOLEAN
305         parameter in the definition module.
306         * libm2pim/dtoa.cc: Ditto.
307         * libm2pim/ldtoa.cc: Ditto.
308         * libm2pim/termios.cc: Ditto.
309         (doSetUnset): Replace int for bool.
311 2023-02-27  Gaius Mulley  <gaiusmod2@gmail.com>
313         PR modula2/108944
314         * libm2pim/sckt.cc (getLocalIP): Correct parameter order.
316 2023-02-25  Gaius Mulley  <gaiusmod2@gmail.com>
318         PR modula2/108261
319         * libm2cor/KeyBoardLEDs.cc (EXPORT): New define.
320         (M2EXPORT): New define.
321         (M2LIBNAME): New define.
322         (KeyBoardLEDs_SwitchScroll): EXPORT.
323         (KeyBoardLEDs_SwitchNum): EXPORT.
324         (KeyBoardLEDs_SwitchCaps): EXPORT.
325         (KeyBoardLEDs_SwitchLeds): EXPORT.
326         (_M2_KeyBoardLEDs_init): M2EXPORT.
327         (_M2_KeyBoardLEDs_finish): M2EXPORT.
328         (_M2_KeyBoardLEDs_dep): M2EXPORT.
329         * libm2cor/Makefile.am (libm2cor_la_M2FLAGS): Define
330         path names.
331         * libm2cor/Makefile.in: Rebuild.
332         * libm2iso/ErrnoCategory.cc (EXPORT): New define.
333         (M2EXPORT): New define.
334         (M2LIBNAME): New define.
335         (ErrnoCategory_IsErrnoHard): EXPORT.
336         (ErrnoCategory_IsErrnoSoft): EXPORT.
337         (ErrnoCategory_UnAvailable): EXPORT.
338         (ErrnoCategory_GetOpenResults): EXPORT.
339         (_M2_ErrnoCategory_init): M2EXPORT.
340         (_M2_ErrnoCategory_fini): M2EXPORT.
341         (_M2_ErrnoCategory_dep): M2EXPORT.
342         (_M2_ErrnoCategory_ctor): M2EXPORT.
343         * libm2iso/Makefile.am (libm2iso_la_M2FLAGS): Define
344         path names.
345         * libm2iso/Makefile.in: Rebuild.
346         * libm2iso/RTco.cc (EXPORT): New define.
347         (M2EXPORT): New define.
348         (M2LIBNAME): New define.
349         (newSem): Add module libname prefix to HaltC.
350         (currentThread): Remove variable and replace with a function.
351         (never): Add module libname prefix to HaltC.
352         (initThread): Add module libname prefix to HaltC.
353         * libm2iso/m2rts.h (str): New define.
354         (M2RTS_RequestDependant): Change to the mangled name equivalent.
355         (M2RTS_RegisterModule): Change to the mangled name equivalent.
356         (m2iso_M2RTS_RequestDependant): Add libname parameter.
357         (m2iso_M2RTS_RegisterModule): Add libname parameter.
358         (m2pim_M2RTS_RegisterModule): Add libname parameter.
359         (_M2_M2RTS_init): Rename this...
360         (m2iso_M2_M2RTS_init): ...to this.
361         (M2RTS_ConstructModules): Change to the mangled name equivalent.
362         (M2RTS_Terminate): Change to the mangled name equivalent.
363         (M2RTS_DeconstructModules): Change to the mangled name equivalent.
364         (m2iso_M2RTS_ConstructModules): Add libname parameter.
365         (m2iso_M2RTS_Terminate): Add libname parameter.
366         (m2iso_M2RTS_DeconstructModules): Add libname parameter.
367         (M2RTS_HaltC): Rename this...
368         (m2iso_M2RTS_HaltC): ...to this.
369         * libm2iso/wrapsock.c (EXPORT): New define.
370         (IMPORT): New define.
371         (M2EXPORT): New define.
372         (M2LIBNAME): New define.
373         (m2iso_M2RTS_RequestDependant): Add prototype.
374         (wrapsock_clientOpen): EXPORT.
375         (wrapsock_clientOpenIP): EXPORT.
376         (wrapsock_getClientPortNo): EXPORT.
377         (wrapsock_getClientHostname): EXPORT.
378         (wrapsock_getClientSocketFd): EXPORT.
379         (wrapsock_getClientIP): EXPORT.
380         (wrapsock_getPushBackChar): EXPORT.
381         (wrapsock_setPushBackChar): EXPORT.
382         (wrapsock_getSizeOfClientInfo): EXPORT.
383         (_M2_wrapsock_init): M2EXPORT.
384         (_M2_wrapsock_fini): M2EXPORT.
385         (ctor): M2EXPORT.  New function.
386         * libm2iso/wraptime.c: Rename to...
387         * libm2iso/wraptime.cc: ...this.
388         (EXPORT): New define.
389         (M2EXPORT): New define.
390         (M2LIBNAME): New define.
391         (wraptime_InitTimeval): EXPORT.
392         (wraptime_KillTimeval): EXPORT.
393         (wraptime_InitTimezone): EXPORT.
394         (wraptime_KillTimezone): EXPORT.
395         (wraptime_InitTM): EXPORT.
396         (wraptime_KillTM): EXPORT.
397         (wraptime_gettimeofday): EXPORT.
398         (wraptime_settimeofday): EXPORT.
399         (wraptime_GetFractions): EXPORT.
400         (wraptime_localtime_r): EXPORT.
401         (wraptime_GetYear): EXPORT.
402         (wraptime_GetMonth): EXPORT.
403         (wraptime_GetDay): EXPORT.
404         (wraptime_GetHour): EXPORT.
405         (wraptime_GetMinute): EXPORT.
406         (wraptime_GetSecond): EXPORT.
407         (wraptime_GetSummerTime): EXPORT.
408         (wraptime_GetDST): EXPORT.
409         (wraptime_SetTimezone): EXPORT.
410         (wraptime_SetTimeval): EXPORT.
411         (_M2_wraptime_init): M2EXPORT.
412         (_M2_wraptime_fini): M2EXPORT.
413         (ctor): M2EXPORT.  New function.
414         * libm2log/Makefile.am (libm2log_la_M2FLAGS): Define
415         path names.
416         * libm2log/Makefile.in:
417         * libm2min/Makefile.am (libm2min_la_M2FLAGS): Define
418         path names.
419         * libm2min/Makefile.in:
420         * libm2pim/Makefile.am (libm2pim_la_M2FLAGS): Define
421         path names.
422         * libm2pim/Makefile.in:
423         * libm2pim/Selective.cc (EXPORT): New define.
424         (M2EXPORT): New define.
425         (M2LIBNAME): New define.
426         (Selective_Select): EXPORT.
427         (Selective_InitTime): EXPORT.
428         (Selective_GetTime): EXPORT.
429         (Selective_SetTime): EXPORT.
430         (Selective_KillTime): EXPORT.
431         (Selective_InitSet): EXPORT.
432         (Selective_KillSet): EXPORT.
433         (Selective_FdZero): EXPORT.
434         (Selective_FdSet): EXPORT.
435         (Selective_FdClr): EXPORT.
436         (Selective_FdIsSet): EXPORT.
437         (Selective_GetTimeOfDay): EXPORT.
438         (Selective_MaxFdsPlusOne): EXPORT.
439         (Selective_WriteCharRaw): EXPORT.
440         (Selective_ReadCharRaw): EXPORT.
441         (_M2_Selective_init): M2EXPORT.
442         (_M2_Selective_fini): M2EXPORT.
443         (_M2_Selective_dep): M2EXPORT.
444         (_M2_Selective_ctor): M2EXPORT.
445         * libm2pim/SysExceptions.cc (EXPORT): New define.
446         (M2EXPORT): New define.
447         (M2LIBNAME): New define.
448         (SysExceptions_InitExceptionHandlers): EXPORT.
449         (_M2_SysExceptions_init): M2EXPORT.
450         (_M2_SysExceptions_fini): M2EXPORT.
451         (_M2_SysExceptions_dep): M2EXPORT.
452         (_M2_SysExceptions_ctor): M2EXPORT.
453         * libm2pim/UnixArgs.cc (EXPORT): New define.
454         (M2EXPORT): New define.
455         (M2LIBNAME): New define.
456         (UnixArgs_GetArgC): EXPORT.
457         (UnixArgs_GetArgV): EXPORT.
458         (UnixArgs_GetEnvV): EXPORT.
459         (_M2_UnixArgs_init): M2EXPORT.
460         (_M2_UnixArgs_fini): M2EXPORT.
461         (_M2_UnixArgs_dep): M2EXPORT.
462         (_M2_UnixArgs_ctor): M2EXPORT.
463         * libm2pim/cgetopt.cc (EXPORT): New define.
464         (M2EXPORT): New define.
465         (M2LIBNAME): New define.
466         (cgetopt_getopt): EXPORT.
467         (cgetopt_getopt_long): EXPORT.
468         (cgetopt_getopt_long_only): EXPORT.
469         (cgetopt_InitOptions): EXPORT.
470         (cgetopt_KillOptions): EXPORT.
471         (cgetopt_SetOption): EXPORT.
472         (cgetopt_GetLongOptionArray): EXPORT.
473         (_M2_cgetopt_init): M2EXPORT.
474         (_M2_cgetopt_fini): M2EXPORT.
475         (_M2_cgetopt_dep): M2EXPORT.
476         (_M2_cgetopt_ctor): M2EXPORT.
477         * libm2pim/dtoa.cc (EXPORT): New define.
478         (M2EXPORT): New define.
479         (M2LIBNAME): New define.
480         (dtoa_strtod): EXPORT.
481         (dtoa_calcmaxsig): EXPORT.
482         (dtoa_calcdecimal): EXPORT.
483         (dtoa_calcsign): EXPORT.
484         (dtoa_dtoa): EXPORT.
485         (_M2_dtoa_init): M2EXPORT.
486         (_M2_dtoa_fini): M2EXPORT.
487         (_M2_dtoa_dep): M2EXPORT.
488         (_M2_dtoa_ctor): M2EXPORT.
489         * libm2pim/errno.cc (EXPORT): New define.
490         (M2EXPORT): New define.
491         (M2LIBNAME): New define.
492         (errno_geterrno): EXPORT.
493         (_M2_errno_init): M2EXPORT.
494         (_M2_errno_fini): M2EXPORT.
495         (_M2_errno_dep): M2EXPORT.
496         (_M2_errno_ctor): M2EXPORT.
497         * libm2pim/ldtoa.cc (EXPORT): New define.
498         (IMPORT): New define.
499         (M2EXPORT): New define.
500         (M2LIBNAME): New define.
501         (dtoa_calcmaxsig): EXPORT.
502         (dtoa_calcdecimal): EXPORT.
503         (dtoa_calcsign): EXPORT.
504         (ldtoa_strtold): EXPORT.
505         (ldtoa_ldtoa): EXPORT.
506         (_M2_ldtoa_init): M2EXPORT.
507         (_M2_ldtoa_fini): M2EXPORT.
508         (_M2_ldtoa_dep): M2EXPORT.
509         (_M2_ldtoa_ctor): M2EXPORT.
510         * libm2pim/sckt.cc (EXPORT): New define.
511         (M2EXPORT): New define.
512         (M2LIBNAME): New define.
513         (tcpServerEstablishPort): EXPORT.
514         (tcpServerEstablish): EXPORT.
515         (tcpServerAccept): EXPORT.
516         (tcpServerPortNo): EXPORT.
517         (tcpServerSocketFd): EXPORT.
518         (getLocalIP): EXPORT.
519         (tcpServerIP): EXPORT.
520         (tcpServerClientIP): EXPORT.
521         (tcpServerClientPortNo): EXPORT.
522         (tcpClientSocket): EXPORT.
523         (tcpClientSocketIP): EXPORT.
524         (tcpClientConnect): EXPORT.
525         (tcpClientPortNo): EXPORT.
526         (tcpClientSocketFd): EXPORT.
527         (tcpClientIP): EXPORT.
528         (_M2_sckt_init): M2EXPORT.
529         (_M2_sckt_finish): M2EXPORT.
530         (_M2_sckt_dep): M2EXPORT.
531         (_M2_sckt_ctor): M2EXPORT.
532         * libm2pim/termios.cc (EXPORT): New define.
533         (M2EXPORT): New define.
534         (M2LIBNAME): New define.
535         (_M2_termios_init): M2EXPORT.
536         (_M2_termios_fini): M2EXPORT.
537         (_M2_termios_dep): M2EXPORT.
538         (_M2_termios_ctor): M2EXPORT.
539         * libm2pim/wrapc.c (EXPORT): New define.
540         (M2EXPORT): New define.
541         (M2LIBNAME): New define.
542         (wrapc_strtime): EXPORT.
543         (wrapc_filesize): EXPORT.
544         (wrapc_filemtime): EXPORT.
545         (wrapc_fileinode): EXPORT.
546         (wrapc_getrand): EXPORT.
547         (wrapc_getusername): EXPORT.
548         (wrapc_getnameuidgid): EXPORT.
549         (wrapc_signbit): EXPORT.
550         (wrapc_signbitl): EXPORT.
551         (wrapc_signbitf): EXPORT.
552         (wrapc_isfinite): EXPORT.
553         (wrapc_isfinitel): EXPORT.
554         (wrapc_isfinitef): EXPORT.
555         (_M2_wrapc_init): M2EXPORT.
556         (_M2_wrapc_fini): M2EXPORT.
557         (_M2_wrapc_ctor): M2EXPORT.
558         * libm2pim/wrapc.cc: New file.
560 2023-02-19  Gaius Mulley  <gaiusmod2@gmail.com>
562         PR testsuite/108835
563         * libm2iso/RTco.cc: Re-implementation using a single lock
564         mutex and inlined wait/signal implementation within
565         transfer.
567 2023-02-13  Gaius Mulley  <gaiusmod2@gmail.com>
569         * libm2iso/RTco.cc (tprintf): Replace definition.
571 2023-02-01  Gaius Mulley  <gaiusmod2@gmail.com>
573         PR modula2/108612
574         PR modula2/108551
575         * libm2cor/Makefile.am (libm2cor_la_M2FLAGS): Add -Wreturn-type
576         -fcase.
577         * libm2cor/Makefile.in: Rebuild.
578         * libm2iso/Makefile.am (libm2iso_la_M2FLAGS): Add -Wreturn-type
579         -fcase.
580         * libm2iso/Makefile.in: Rebuild.
581         * libm2log/Makefile.am (libm2log_la_M2FLAGS): Add -Wreturn-type
582         -fcase.
583         * libm2log/Makefile.in: Rebuild.
584         * libm2pim/Makefile.am (libm2pim_la_M2FLAGS): Add -Wreturn-type
585         -fcase.
586         * libm2pim/Makefile.in: Rebuild.
588 2023-01-31  Richard Biener  <rguenther@suse.de>
590         PR modula2/108462
591         * libm2cor/Makefile.am: Remove static lib install from
592         install-data-local.
593         * libm2iso/Makefile.am: Likewise.
594         * libm2log/Makefile.am: Likewise.
595         * libm2min/Makefile.am: Likewise.
596         * libm2pim/Makefile.am: Likewise.
597         * libm2cor/Makefile.in: Regenerate.
598         * libm2iso/Makefile.in: Likewise.
599         * libm2log/Makefile.in: Likewise.
600         * libm2min/Makefile.in: Likewise.
601         * libm2pim/Makefile.in: Likewise.
603 2023-01-31  Gaius Mulley  <gaiusmod2@gmail.com>
605         * libm2log/Makefile.am (VPATH): Replace gm2-libs-pim
606         with gm2-libs-log.
607         (libm2log_la_M2FLAGS): Replace gm2-libs-pim with
608         gm2-libs-log.
609         (install-data-local): Replace gm2-libs-pim with
610         gm2-libs-log.
611         * libm2log/Makefile.in: Rebuilt.
613 2023-01-26  Gaius Mulley  <gaiusmod2@gmail.com>
615         * configure.ac (AM_INIT_AUTOMAKE): Specify 1.15.1.
617 2023-01-24  Co-Authored by: Iain Sandoe  <iain@sandoe.co.uk>
619         * libm2cor/Makefile.am (SYSTEM.def): Split path into
620         multiple -I components.
621         * libm2cor/Makefile.in: Rebuild.
622         * libm2min/Makefile.am (SYSTEM.def): Split path into
623         multiple -I components.
624         * libm2min/Makefile.in: Rebuild.
625         * libm2iso/Makefile.am (SYSTEM.def): Split path into
626         multiple -I components.
627         * libm2iso/Makefile.in: Rebuild.
629 2023-01-23  Richard Biener  <rguenther@suse.de>
631         PR modula2/108144
632         * libm2cor/Makefile.am: Revert previous change, instead
633         drop the redundant $(MULTIDIR).
634         * libm2iso/Makefile.am: Likewise.
635         * libm2log/Makefile.am: Likewise.
636         * libm2min/Makefile.am: Likewise.
637         * libm2pim/Makefile.am: Likewise.
638         * libm2cor/Makefile.in: Regenerate.
639         * libm2iso/Makefile.in: Likewise.
640         * libm2log/Makefile.in: Likewise.
641         * libm2min/Makefile.in: Likewise.
642         * libm2pim/Makefile.in: Likewise.
644 2023-01-23  Richard Biener  <rguenther@suse.de>
646         PR modula2/108144
647         * configure.ac: Apply config-ml.pl to the generated Makefiles.
648         Set multilib_arg, use AM_PROG_LIBTOOL.
649         * configure: Regenerate.
650         * Makefile.am (AM_MAKEFLAGS): Do not override MULTI* flags.
651         * Makefile.in: Regenerate.
652         * libm2cor/Makefile.am: Install to $(toolexeclibdir)$(M2LIBDIR)
653         rather than $(inst_libdir)/$(MULTIDIR)$(M2LIBDIR).
654         * libm2iso/Makefile.am: Likewise.
655         * libm2log/Makefile.am: Likewise.
656         * libm2min/Makefile.am: Likewise.
657         * libm2pim/Makefile.am: Likewise.
658         * libm2cor/Makefile.in: Regenerate.
659         * libm2iso/Makefile.in: Likewise.
660         * libm2log/Makefile.in: Likewise.
661         * libm2min/Makefile.in: Likewise.
662         * libm2pim/Makefile.in: Likewise.
664 2023-01-19  Richard Biener  <rguenther@suse.de>
666         PR modula2/108144
667         * configure.ac: Add GCC_BASE_VER.
668         * configure: Re-generate.
669         * Makefile.am: Use @get_gcc_base_ver@ for gcc_version.
670         * libm2cor/Makefile.am: Likewise.  Use gcc_version instead
671         of version.
672         * libm2iso/Makefile.am: Likewise.
673         * libm2log/Makefile.am: Likewise.
674         * libm2min/Makefile.am: Likewise.
675         * libm2pim/Makefile.am: Likewise.
676         * Makefile.in: Re-generate.
677         * libm2cor/Makefile.in: Likewise.
678         * libm2iso/Makefile.in: Likewise.
679         * libm2log/Makefile.in: Likewise.
680         * libm2min/Makefile.in: Likewise.
681         * libm2pim/Makefile.in: Likewise.
683 2023-01-17  Gaius Mulley  <gaiusmod2@gmail.com>
685         * libm2iso/RTco.cc (_M2_RTco_fini): Call M2RTS_HaltC.
686         (newSem): Call M2RTS_HaltC.
687         (currentThread): Call M2RTS_HaltC.
688         (never): Call M2RTS_HaltC.
689         (defined): Call M2RTS_HaltC.
690         (initThread): Call M2RTS_HaltC.
691         (RTco_transfer): Call M2RTS_HaltC.
692         * libm2iso/m2rts.h (M2RTS_Halt): Provide parameter names.
693         (M2RTS_HaltC): New procedure declaration.
695 2023-01-06  v  <gaiusmod2@gmail.com>
697         * configure: Regenerate.
698         * configure.ac (libtool_VERSION): Bump to 18:0:0.
700 2023-01-04  Iain Sandoe  <iain@sandoe.co.uk>
702         PR modula2/108183
703         * libm2cor/KeyBoardLEDs.cc (_M2_KeyBoardLEDs_ctor): Rework to use
704         an extern "C" function with 'constructor' attribute.
705         * libm2iso/ErrnoCategory.cc (_M2_ErrnoCategory_ctor): Likewise.
706         * libm2iso/RTco.cc (_M2_RTco_ctor): Likewise.
707         * libm2pim/Selective.cc (_M2_Selective_ctor): Likewise.
708         * libm2pim/SysExceptions.cc (_M2_SysExceptions_ctor): Likewise.
709         * libm2pim/UnixArgs.cc (_M2_UnixArgs_ctor): Likewise.
710         * libm2pim/cgetopt.cc (_M2_cgetopt_ctor): Likewise.
711         * libm2pim/dtoa.cc (_M2_dtoa_ctor): Likewise.
712         * libm2pim/errno.cc (_M2_errno_ctor): Likewise.
713         * libm2pim/ldtoa.cc (_M2_ldtoa_ctor): Likewise.
714         * libm2pim/sckt.cc (_M2_sckt_ctor): Likewise.
715         * libm2pim/termios.cc (_M2_termios_ctor): Likewise.
716         * libm2pim/wrapc.c: Add a new line to the file end.
718 2022-12-31  Iain Sandoe  <iain@sandoe.co.uk>
720         * configure: Regenerate.
721         * configure.ac: Make a conditional for configurations targeting
722         Darwin.
723         * libm2cor/Makefile.am: Use -undefined,dynamic_lookup on Darwin.
724         * libm2iso/Makefile.am: Likewise.
725         * libm2log/Makefile.am: Likewise.
726         * libm2pim/Makefile.am: Likewise
727         * libm2min/Makefile.am: Likewise
728         * libm2cor/Makefile.in: Regenerate.
729         * libm2iso/Makefile.in: Regenerate.
730         * libm2log/Makefile.in: Regenerate.
731         * libm2min/Makefile.in: Regenerate.
732         * libm2pim/Makefile.in: Regenerate.
734 2022-12-14  Gaius Mulley  <gaiusmod2@gmail.com>
736         * Makefile.am: New file.
737         * autogen.sh: New file.
738         * config.h.in: New file.
739         * configure.ac: New file.
740         * libm2cor/KeyBoardLEDs.cc: New file.
741         * libm2cor/Makefile.am: New file.
742         * libm2iso/ChanConsts.h: New file.
743         * libm2iso/ErrnoCategory.cc: New file.
744         * libm2iso/Makefile.am: New file.
745         * libm2iso/RTco.cc: New file.
746         * libm2iso/m2rts.h: New file.
747         * libm2iso/wrapsock.c: New file.
748         * libm2iso/wraptime.c: New file.
749         * libm2log/Break.c: New file.
750         * libm2log/Makefile.am: New file.
751         * libm2min/Makefile.am: New file.
752         * libm2min/libc.c: New file.
753         * libm2pim/Makefile.am: New file.
754         * libm2pim/Selective.cc: New file.
755         * libm2pim/SysExceptions.cc: New file.
756         * libm2pim/UnixArgs.cc: New file.
757         * libm2pim/cgetopt.cc: New file.
758         * libm2pim/dtoa.cc: New file.
759         * libm2pim/errno.cc: New file.
760         * libm2pim/ldtoa.cc: New file.
761         * libm2pim/sckt.cc: New file.
762         * libm2pim/target.c: New file.
763         * libm2pim/termios.cc: New file.
764         * libm2pim/wrapc.c: New file.
765         * configure: Generated.
766         * libm2log/Makefile.in: Generated.
767         * libm2min/Makefile.in: Generated.
768         * libm2cor/Makefile.in: Generated.
769         * libm2pim/Makefile.in: Generated.
770         * libm2iso/Makefile.in: Generated.
771         * Makefile.in: New file.
772         * aclocal.m4: New file.