• Fabrice Popineau's avatar
    Use mmap(2) emulation for buffer text on MS-Windows. · 587fd086
    Fabrice Popineau authored
     src/Makefile.in (C_HEAP_SWITCH): Get the predefined heap size from
     configure.
     (ADDSECTION, MINGW_TEMACS_POST_LINK): Remove, no longer used.
     src/lisp.h (NONPOINTER_BITS): Modify the condition to define to zero
     for MinGW, since it no longer uses gmalloc.
     src/buffer.c: Do not define mmap allocations functions for Windows.
     Remove mmap_find which is unused. Remove mmap_set_vars which does
     nothing useful.
     [WINDOWSNT]: Include w32heap.h.
     (init_buffer): Always allocate new memory for buffers.
     src/emacs.c: Remove mmap_set_vars calls.
     src/image.c (free_image): Undef free for Windows because it is
     redirected to our private version.
     src/unexw32.c (COPY_PROC_CHUNK): Use %p format for 64bits
     compatibility.
     (copy_executable_and_dump_data): Remove dumping the heap section.
     (unexec): Restore using_dynamic_heap after dumping.
     src/w32heap.c (dumped_data_commit, malloc_after_dump)
     (malloc_before_dump, realloc_after_dump, realloc_before_dump)
     (free_after_dump, free_before_dump, mmap_alloc, mmap_realloc)
     (mmap_free): New functions.
     src/w32heap.h: Declare dumped_data and mmap_* function prototypes.
    
     nt/inc/ms-w32.h: Switch to the system heap allocation scheme
     instead of GNU malloc and ralloc.
     nt/inc/sys/mman.h: New file.
     nt/INSTALL: Update for the new build requirements.
    
     etc/NEWS: Mention build changes on MS-Windows.
    
     configure.ac (C_HEAP_SWITCH) define for different values of
     dumped heap size depending on 32/64bits arch on Windows.
     Don't check for pthreads.h on MinGW32/64, it gets in the way.
     Use mmap(2) for buffers and system malloc for MinGW32/64.
    587fd086
w32heap.c 19.1 KB