1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-04-18 03:51:48 -07:00
Commit graph

2 commits

Author SHA1 Message Date
Eli Zaretskii
265981c232 Support the MinGW build of MPS and tests, part 2
* mps/code/mingw.gmk (CFLAGSCOMPILERSTRICT): Use gnu99, not gnu89.

* mps/configure.ac (EXEEXT): Define and use for program names.
(i*86-*-mingw*/no, x86_64-*-mingw*/no): Add definitions for MinGW.
2025-09-24 16:28:33 +03:00
Eli Zaretskii
e722ec9cfe Support the MinGW build of MPS and tests, part 1
* mps/code/w3i6gc.gmk:
* mps/code/w3i3gc.gmk:
* mps/code/mingw.gmk: New files, for the MinGW build.

* mps/code/ss.c (StackHot) [__MINGW32__ && __GNUC__ >= 12]: Ignore
dangling-pointer warnings.

* mps/code/global.c (ArenaFinalize): Avoid compiler warnings.

* mps/code/thw3.c (ThreadScan): Avoid compilation errors due to
prototype mismatch.

* mps/code/testlib.h (alloca): Don't redefine for MinGW.
(setenv): Don't redefine for mingw.org's MinGW.
(ulongest_t, longest_t): Separate definitions for MinGW64.

* mps/code/testlib.c (sizelog2) [__MINGW32__]: Fix comparison.
(rnd_align): Avoid name clashes with 'min' and 'max'.

* mps/code/spw3i3.c (StackProbe) [__GNUC__]: Implementation for
MinGW.

* mps/code/protw3.c: Avoid compiler warning.

* mps/code/mpstd.h: Define MinGW (_X86_) and MinGW64 (__X86_64)
configurations.

* mps/code/mpsiw3.c (mps_SEH_filter, mps_SEH_handler): Add
prototypes.

* mps/code/mps.c [MPS_PF_W3I3GC]: Define 32-bit MinGW stuff.
[MPS_PF_W3I6GC]: Define 64-bit MinGW64 stuff.

* mps/code/lockw3.c (RTL_RUN_ONCE, PRTL_RUN_ONCE_INIT_FN)
(RTL_RUN_ONCE_INIT, INIT_ONCE_STATIC_INIT, RTL_RUN_ONCE INIT_ONCE)
(PRTL_RUN_ONCE PINIT_ONCE, PINIT_ONCE_FN, InitOnceExecuteOnce):
Define for mingw.org's MinGW.

* mps/code/comm.gmk (EVENT_TARGETS, EXTRA_TARGETS, TEST_TARGETS)
(UNBUILDABLE_TARGETS): Add $(EXEEXT) to program names.
(TESTTHR): Define correct test for MS-Windows.
Don't fail the build if the *.d dependency files don't exist.
2025-09-24 13:02:30 +03:00