* configure.ac: Check for sys/mman.h and mmap. Check for mremap
commitb8b86d08558db7b7e10721813b21121b2bf0a9b0
authorIan Lance Taylor <ian@airs.com>
Tue, 12 Apr 2011 18:06:16 +0000 (12 18:06 +0000)
committerIan Lance Taylor <ian@airs.com>
Tue, 12 Apr 2011 18:06:16 +0000 (12 18:06 +0000)
treedf476383b80fd1ef4b90ddb7007372ea476cae15
parentcbe4ad299a2064802c409bffedd17013562c08e1
* configure.ac: Check for sys/mman.h and mmap.  Check for mremap
with MREMAP_MAYMOVE.
* output.h (class Output_file): Add map_is_allocated_ field.
* output.cc: Only #include <sys/mman.h> if it exists.  If mmap is
not available, provide stubs.  If mremap is not available, #define
it to gold_mremap.
(MREMAP_MAYMOVE): Define if not defined.
(Output_file::Output_file): Initialize map_is_allocated_.
(Output_file::resize): Check map_is_allocated_.
(Output_file::map_anonymous): If mmap fails, use malloc.
(Output_file::unmap): Don't do anything for an anonymous map.
* fileread.cc: Only #include <sys/mman.h> if it exists.  If mmap
is not available, provide stubs.
(File_read::View::~View): Use free rather than delete[].
(File_read::make_view): Use malloc rather than new[].  If mmap
fails, use malloc.
(File_read::find_or_make_view): Use malloc rather than new[].
* gold.h: Remove HAVE_REMAP code.
* mremap.c: #include <errno.h>.  Only #include <sys/mman.h> if it
exists.  Rename mremap to gold_mremap.  If mmap is not available
don't do anything.
* configure, config.in: Rebuild.
gold/ChangeLog
gold/config.in
gold/configure
gold/configure.ac
gold/fileread.cc
gold/gold.h
gold/mremap.c
gold/output.cc
gold/output.h