Go to file
Corinna Vinschen e70fdfb99f * cygwin.din (dup3): Export.
(pipe2): Export.
	* dtable.cc (dtable::dup_worker): Take additional flags parameter.
	Handle O_CLOEXEC flag.
	(dtable::dup3): Rename from dup2.  Take additional flags parameter.
	Check for valid flags.  Drop check for newfd == oldfd.
	* dtable.h (dtable::dup_worker): Add flags parameter.
	(dtable::dup3): Rename from dup2.
	* fcntl.cc (fcntl64): Add F_DUPFD_CLOEXEC case.
	* fhandler.h (fhandler_mailslot::get_object_attr): Add flags parameter.
	* fhandler.cc (fhandler_base::open): Use security attribute with
	inheritance according to setting of O_CLOEXEC flag.
	* fhandler_console.cc (fhandler_console::open): Ditto.
	* fhandler_fifo.cc (sec_user_cloexec): New inline function to
	create security attribute with inheritance according to setting of
	O_CLOEXEC flag.
	(fhandler_fifo::open): Call sec_user_cloexec to fetch security
	attribute.
	(fhandler_fifo::wait): Ditto.
	* fhandler_mem.cc (fhandler_dev_mem::open): Ditto.
	* fhandler_mailslot.cc (fhandler_mailslot::get_object_attr): Take
	additional flags parameter.  Use security attribute with inheritance
	according to setting of O_CLOEXEC flag.
	(fhandler_mailslot::open): Call get_object_attr with flags parameter.
	* fhandler_registry.cc (fhandler_registry::open): Call set_close_on_exec
	on real handles to accommodate O_CLOEXEC flag.
	* fhandler_tty.cc (fhandler_tty_slave::open): Ditto.
	* fhandler_tape.cc: Create mutex with inheritance according to setting
	of O_CLOEXEC flag.
	* pipe.cc: Replace usage of O_NOINHERIT with O_CLOEXEC.
	 (fhandler_pipe::init): Simplify setting close_on_exec flag.
	(fhandler_pipe::open): Remove setting close_on_exec flag.
	(fhandler_pipe::create): Use security attribute with inheritance
	according to setting of O_CLOEXEC flag.
	(pipe2): New exported function.
	* posix_ipc.cc: Throughout, open backing files with O_CLOEXEC
	flag to follow POSIX semantics.
	* security.h (sec_none_cloexec): New define.
	* syscalls.cc (dup): Add missing extern "C" qualifier.  Accommodate
	renaming of dtable::dup2 to dtable::dup3.
	(dup2): Ditto.  Check newfd == oldfd here.
	(dup3): New function.  Check newfd == oldfd here.
	(open): Set close_on_exec flag according to O_CLOEXEC flag before
	calling fhandler->open.
	* include/cygwin/version.h (CYGWIN_VERSION_API_MINOR): Bump.
2010-01-14 18:46:02 +00:00
config config: 2009-11-30 16:46:38 +00:00
etc Regenerate tree using Autoconf 2.64 and Automake 1.11. 2009-08-22 16:56:38 +00:00
include Remove argument name. 2010-01-14 15:18:42 +00:00
libgloss 2009-12-17 Jeff Johnston <jjohnstn@redhat.com> 2009-12-17 21:48:49 +00:00
newlib Drop accidentally applied ChangeLog entry. 2010-01-14 12:49:43 +00:00
texinfo * texinfo/texinfo.tex: Update to version 2009-03-28.05. 2009-04-21 12:36:46 +00:00
winsup * cygwin.din (dup3): Export. 2010-01-14 18:46:02 +00:00
COPYING 2005-07-14 Kelley Cook <kcook@gcc.gnu.org> 2005-07-14 01:24:56 +00:00
COPYING.LIB 2005-07-16 Kelley Cook <kcook@gcc.gnu.org> 2005-07-16 02:41:34 +00:00
COPYING.LIBGLOSS 2009-12-17 Jeff Johnston <jjohnstn@redhat.com> 2009-12-17 21:12:49 +00:00
COPYING.NEWLIB 2009-12-17 Jeff Johnston <jjohnstn@redhat.com> 2009-12-17 21:12:49 +00:00
COPYING3 * COPYING3: New file. Contains version 3 of the GNU General Public License. 2007-07-17 13:50:23 +00:00
COPYING3.LIB * COPYING3: New file. Contains version 3 of the GNU General Public License. 2007-07-17 13:50:23 +00:00
ChangeLog Sync Libtool from GCC. 2010-01-09 21:11:32 +00:00
MAINTAINERS * MAINTAINERS: Perform some obvious fixups. 2009-08-19 02:53:50 +00:00
Makefile.def * Makefile.def: Restore host and target settings for gmp. 2009-11-16 22:57:46 +00:00
Makefile.in Sync from GCC: Makefile.tpl (BASE_TARGET_EXPORTS) fix 2010-01-07 20:00:52 +00:00
Makefile.tpl Sync from GCC: Makefile.tpl (BASE_TARGET_EXPORTS) fix 2010-01-07 20:00:52 +00:00
README 19990502 sourceware import 1999-05-03 07:29:06 +00:00
README-maintainer-mode Cleanups after the update to Autoconf 2.64, Automake 1.11. 2009-08-22 17:08:06 +00:00
compile Update automake-provided files in the toplevel. 2009-08-22 11:48:33 +00:00
config-ml.in Merge from GCC: 2008-11-27 17:14:58 +00:00
config.guess * config.sub, config.guess: Update from upstream sources. 2009-12-18 03:39:58 +00:00
config.rpath * config.rpath: Add AIX 6 support. 2008-03-13 19:27:44 +00:00
config.sub * config.sub, config.guess: Update from upstream sources. 2009-12-18 03:39:58 +00:00
configure PR bootstrap/42424 2010-01-08 15:59:17 +00:00
configure.ac PR bootstrap/42424 2010-01-08 15:59:17 +00:00
depcomp Update automake-provided files in the toplevel. 2009-08-22 11:48:33 +00:00
djunpack.bat * djunpack.bat: Use ".." quoting in Sed command, for the sake of 2009-03-27 13:37:09 +00:00
install-sh Update automake-provided files in the toplevel. 2009-08-22 11:48:33 +00:00
libtool.m4 Sync Libtool from GCC. 2010-01-09 21:11:32 +00:00
ltgcc.m4 * libtool.m4: Update to libtool 2.2.6. 2008-09-29 15:28:14 +00:00
ltmain.sh Sync Libtool from GCC. 2010-01-09 21:11:32 +00:00
ltoptions.m4 Sync Libtool from GCC. 2010-01-09 21:11:32 +00:00
ltsugar.m4 * libtool.m4: Update to libtool 2.2.6. 2008-09-29 15:28:14 +00:00
ltversion.m4 Sync Libtool from GCC. 2010-01-09 21:11:32 +00:00
lt~obsolete.m4 Sync Libtool from GCC. 2010-01-09 21:11:32 +00:00
makefile.vms 19990502 sourceware import 1999-05-03 07:29:06 +00:00
missing Update automake-provided files in the toplevel. 2009-08-22 11:48:33 +00:00
mkdep * mkdep: New file. 1999-08-08 17:46:02 +00:00
mkinstalldirs Update automake-provided files in the toplevel. 2009-08-22 11:48:33 +00:00
move-if-change Import from Autoconf sources: 2005-09-07 00:42:19 +00:00
setup.com 2009-09-01 Tristan Gingold <gingold@adacore.com> 2009-09-01 13:38:26 +00:00
src-release * src-release (BINUTILS_SUPPORT_DIRS): Remove mkdep and depcomp. 2008-06-18 23:20:43 +00:00
symlink-tree 2005-07-14 Kelley Cook <kcook@gcc.gnu.org> 2005-07-14 01:24:56 +00:00
ylwrap Update automake-provided files in the toplevel. 2009-08-22 11:48:33 +00:00

README

		   README for GNU development tools

This directory contains various GNU compilers, assemblers, linkers, 
debuggers, etc., plus their support routines, definitions, and documentation.

If you are receiving this as part of a GDB release, see the file gdb/README.
If with a binutils release, see binutils/README;  if with a libg++ release,
see libg++/README, etc.  That'll give you info about this
package -- supported targets, how to use it, how to report bugs, etc.

It is now possible to automatically configure and build a variety of
tools with one command.  To build all of the tools contained herein,
run the ``configure'' script here, e.g.:

	./configure 
	make

To install them (by default in /usr/local/bin, /usr/local/lib, etc),
then do:
	make install

(If the configure script can't determine your type of computer, give it
the name as an argument, for instance ``./configure sun4''.  You can
use the script ``config.sub'' to test whether a name is recognized; if
it is, config.sub translates it to a triplet specifying CPU, vendor,
and OS.)

If you have more than one compiler on your system, it is often best to
explicitly set CC in the environment before running configure, and to
also set CC when running make.  For example (assuming sh/bash/ksh):

	CC=gcc ./configure
	make

A similar example using csh:

	setenv CC gcc
	./configure
	make

Much of the code and documentation enclosed is copyright by
the Free Software Foundation, Inc.  See the file COPYING or
COPYING.LIB in the various directories, for a description of the
GNU General Public License terms under which you can copy the files.

REPORTING BUGS: Again, see gdb/README, binutils/README, etc., for info
on where and how to report problems.