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