]> git.eshelyaron.com Git - emacs.git/commit
Port to modern GCC and pdumper on MS-DOS
authorPo Lu <luangruo@yahoo.com>
Thu, 20 Feb 2025 06:04:59 +0000 (14:04 +0800)
committerEshel Yaron <me@eshelyaron.com>
Thu, 20 Feb 2025 21:43:36 +0000 (22:43 +0100)
commit35fccb233f51636467ddb58c2a7b05fb28b6eb1d
tree06fb4432137ccda83fdbea5e9c6011991fcc23f6
parent9f124f6cf4fbb86aef85b4789693d31013b6cbca
Port to modern GCC and pdumper on MS-DOS

* config.bat (mvOk): Protoize.
(djgppOk): Include sys/version.h for _DJGPP_MINOR.

* lisp/loadup.el: If system-type is ms-dos, dump bootstrap-emacs
as b-emacs.dmp.

* msdos/INSTALL: Document new versions of tools that have been
verified successfully to compile Emacs.

* msdos/emacs.djl: New linker script that arranges to link
symbols in `.subrs' in a contiguous part of data, as the DJGPP
runtime appears to treat any non-data and non-text section as
allocatable.

* msdos/mainmake.v2 (install): Install emacs.dmp alongside
emacs.exe.

* msdos/sed1v2.inp (CFLAGS): Define to -O2 -g3.
(LDFLAGS): Provide the said linker script.
(HAVE_PDUMPER): Define to yes.
(UNEXEC_OBJ, PAXCTL_dumped, PAXCTL_notdumped): Delete.
(DUMPING): Set to pdumper.
(MAKE_PDUMPER_FINGERPRINT): Don't erase this variable.
Don't stubify or set minstack.  Remove native-comp specific
directives.  Don't remove temacs prior to copying and replace
`pdmp' extension with DOS-conformant `dmp'.

* msdos/sed2v2.inp (HAVE_UNEXEC): Remove definition.
(HAVE_PDUMPER): Define to 1.

* msdos/sed6.inp (top_srcdir): Define appropriately.

* msdos/sedlibmk.inp (HAVE_BLKCNT_T): Define to 1.

* src/emacs.c (load_pdump) [MSDOS]: Use `dmp' suffix.

* src/pdumper.c (Fdump_emacs_portable) [MSDOS]: Replace ".pdmp"
suffixes with ".dmp".

(cherry picked from commit c22957c4bf7dd25857a44946169c4818996a49d9)
12 files changed:
config.bat
lisp/loadup.el
msdos/INSTALL
msdos/emacs.djl [new file with mode: 0644]
msdos/mainmake.v2
msdos/sed1v2.inp
msdos/sed2v2.inp
msdos/sed6.inp
msdos/sedlibmk.inp
src/emacs.c
src/lisp.h
src/pdumper.c