* configure.ac: Check for sys/mman.h and mmap. Check for mremap
authorIan Lance Taylor <ian@airs.com>
Tue, 12 Apr 2011 18:06:16 +0000 (18:06 +0000)
committerIan Lance Taylor <ian@airs.com>
Tue, 12 Apr 2011 18:06:16 +0000 (18:06 +0000)
commit88597d3422353743f77a4f4de1f3e790cb9f1645
treea6b753e0fd883354777437707f2bc12e66b31474
parent32a946987b2c683c06d55efc2d4d7e682f164e4e
* 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