Go to file
Geoffrey Keating e34a3d3120 Makefile.in (INSTALL_HEADERS): Add 'install-mkheaders'.
2002-05-26  Geoffrey Keating  <geoffk@redhat.com>

	* Makefile.in (INSTALL_HEADERS): Add 'install-mkheaders'.
	(mkheaders): New rule.
	(install-mkheaders): New rule.
	* configure.in (all_outputs): Add mkheaders.
	* configure: Regenerate.
	* mkheaders.in: New file.

Index: gcc/Makefile.in
===================================================================
RCS file: /cvs/gcc/gcc/gcc/Makefile.in,v
retrieving revision 1.880
diff -p -u -p -r1.880 Makefile.in
--- gcc/Makefile.in	25 May 2002 22:01:40 -0000	1.880
+++ gcc/Makefile.in	27 May 2002 04:14:19 -0000
@@ -434,7 +434,7 @@ FLOAT_H=@float_h_file@
 LIBCONVERT =

 # Control whether header files are installed.
-INSTALL_HEADERS=install-headers
+INSTALL_HEADERS=install-headers install-mkheaders

 # Control whether Info documentation is built and installed.
 BUILD_INFO = @BUILD_INFO@
@@ -878,6 +878,9 @@ gccbug:	$(srcdir)/gccbug.in
 mklibgcc: $(srcdir)/mklibgcc.in
 	CONFIG_FILES=mklibgcc CONFIG_HEADERS= ./config.status

+mkheaders: $(srcdir)/mkheaders.in
+	CONFIG_FILES=mkheaders CONFIG_HEADERS= ./config.status
+
 # cstamp-h.in controls rebuilding of config.in.
 # It is named cstamp-h.in and not stamp-h.in so the mostlyclean rule doesn't
 # delete it.  A stamp file is needed as autoheader won't update the file if
@@ -2839,6 +2842,47 @@ install-headers-cpio: stmp-int-hdrs $(ST
 # Install the include directory using cp.
 install-headers-cp: stmp-int-hdrs $(STMP_FIXPROTO) install-include-dir
 	cp -p -r include $(libsubdir)
+
+itoolsdir = $(libsubdir)/install-tools
+# Don't install the headers.  Instead, install appropriate scripts
+# and supporting files for fixincludes to be run later.
+install-mkheaders: stmp-int-hdrs $(STMP_FIXPROTO) install-include-dir \
+    mkheaders xlimits.h
+	-rm -rf $(itoolsdir)
+	$(SHELL) $(srcdir)/mkinstalldirs $(itoolsdir)/include
+	for file in $(USER_H); do \
+	  realfile=`echo $$file | sed -e 's|.*/\([^/]*\)$$|\1|'`; \
+	  $(INSTALL_DATA) $$file \
+	    $(itoolsdir)/include/$$realfile ; \
+	done
+	if [ x$(FLOAT_H) != xMakefile.in ]; then \
+	  $(INSTALL_DATA) $(srcdir)/config/$(FLOAT_H) \
+	     $(itoolsdir)/include/float.h ; \
+	else :; fi
+	$(INSTALL_DATA) xlimits.h $(itoolsdir)/include/limits.h
+	if [ x$(STMP_FIXINC) != x ] ; then \
+	  $(INSTALL_DATA) $(srcdir)/README-fixinc \
+	    $(itoolsdir)/include/README ; \
+	  $(INSTALL_PROGRAM) fixinc.sh $(itoolsdir)/fixinc.sh ; \
+	  $(INSTALL_PROGRAM) fixinc/fixincl $(itoolsdir)/fixincl ; \
+	  $(INSTALL_DATA) $(srcdir)/gsyslimits.h $(itoolsdir)/gsyslimits.h ; \
+	else :; fi
+	if [ x$(STMP_FIXPROTO) != x ] ; then \
+	  $(INSTALL_PROGRAM) $(srcdir)/mkinstalldirs \
+		$(itoolsdir)/mkinstalldirs ; \
+	  $(INSTALL_PROGRAM) $(srcdir)/fixproto $(itoolsdir)/fixproto ; \
+	  $(INSTALL_PROGRAM) fix-header$(build_exeext) \
+		$(itoolsdir)/fix-header$(build_exeext) ; \
+	else :; fi
+	$(INSTALL_PROGRAM) mkheaders $(itoolsdir)/mkheaders
+	echo 'SYSTEM_HEADER_DIR="$(SYSTEM_HEADER_DIR)"' \
+		> $(itoolsdir)/mkheaders.conf
+	echo 'OTHER_FIXINCLUDES_DIRS="$(OTHER_FIXINCLUDES_DIRS)"' \
+		>> $(itoolsdir)/mkheaders.conf
+	echo 'FIXPROTO_DEFINES="$(FIXPROTO_DEFINES)"' \
+		>> $(itoolsdir)/mkheaders.conf
+	echo 'STMP_FIXPROTO="$(STMP_FIXPROTO)"' >> $(itoolsdir)/mkheaders.conf
+	echo 'STMP_FIXINC="$(STMP_FIXINC)"' >> $(itoolsdir)/mkheaders.conf

 # Use this target to install the program `collect2' under the name `collect2'.
 install-collect2: collect2 installdirs
Index: gcc/configure
===================================================================
RCS file: /cvs/gcc/gcc/gcc/configure,v
retrieving revision 1.606
diff -p -u -p -r1.606 configure
--- gcc/configure	25 May 2002 19:51:40 -0000	1.606
+++ gcc/configure	27 May 2002 04:14:21 -0000
@@ -8065,7 +8065,7 @@ all_languages=
 all_boot_languages=
 all_compilers=
 all_stagestuff=
-all_outputs='Makefile intl/Makefile fixinc/Makefile gccbug mklibgcc'
+all_outputs='Makefile intl/Makefile fixinc/Makefile gccbug mklibgcc mkheaders'
 # List of language makefile fragments.
 all_lang_makefiles=

Index: gcc/configure.in
===================================================================
RCS file: /cvs/gcc/gcc/gcc/configure.in,v
retrieving revision 1.593
diff -p -u -p -r1.593 configure.in
--- gcc/configure.in	25 May 2002 19:51:41 -0000	1.593
+++ gcc/configure.in	27 May 2002 04:14:21 -0000
@@ -2312,7 +2312,7 @@ all_languages=
 all_boot_languages=
 all_compilers=
 all_stagestuff=
-all_outputs='Makefile intl/Makefile fixinc/Makefile gccbug mklibgcc'
+all_outputs='Makefile intl/Makefile fixinc/Makefile gccbug mklibgcc mkheaders'
 # List of language makefile fragments.
 all_lang_makefiles=

Index: gcc/mkheaders.in
===================================================================
RCS file: gcc/mkheaders.in
diff -N gcc/mkheaders.in
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ gcc/mkheaders.in	27 May 2002 04:14:21 -0000
@@ -0,0 +1,101 @@
+#!/bin/sh
+
+# Copyright (C) 2002 Free Software Foundation, Inc.
+
+#This file is part of GCC.
+
+#GCC is free software; you can redistribute it and/or modify it under
+#the terms of the GNU General Public License as published by the Free
+#Software Foundation; either version 2, or (at your option) any later
+#version.
+
+#GCC is distributed in the hope that it will be useful, but WITHOUT
+#ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+#FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+#for more details.
+
+#You should have received a copy of the GNU General Public License
+#along with GCC; see the file COPYING.  If not, write to the Free
+#Software Foundation, 59 Temple Place - Suite 330, Boston, MA
+#02111-1307, USA.
+
+# Basic information
+target=@target@
+target_alias=@target_alias@
+version=@gcc_version@
+
+VERBOSE=0
+while [ x$1 = x-v ] ; do
+    shift
+    VERBOSE=`expr $VERBOSE + 1`
+done
+export VERBOSE
+
+if [ x$1 = x--help ] ; then
+    echo "Usage: mkheaders [options] [prefix]"
+    echo "Options:"
+    echo "  -v        Print more output (may be repeated for even more output)"
+    echo "  --help    This help"
+    echo "  --version Print version information"
+    exit 0
+fi
+
+if [ x$1 = x--version ] ; then
+    echo "mkheaders (GCC) version $version"
+    echo "Copyright 2002 Free Software Foundation, Inc."
+    echo "This program is free software; you may redistribute it under the"
+    echo "terms of the GNU General Public License.  This program has"
+    echo "absolutely no warranty."
+    exit 0
+fi
+
+# Common prefix for installation directories.
+if [ x$1 != x ] ; then
+  prefix=$1
+else
+  prefix=@prefix@
+fi
+# Directory in which to put localized header files. On the systems with
+# gcc as the native cc, `local_prefix' may not be `prefix' which is
+# `/usr'.
+# NOTE: local_prefix *should not* default from prefix.
+local_prefix=@local_prefix@
+# Directory in which to put host dependent programs and libraries
+exec_prefix=@exec_prefix@
+# Directory in which to put the directories used by the compiler.
+libdir=@libdir@
+# Directory in which the compiler finds executables, libraries, etc.
+libsubdir=${libdir}/gcc-lib/${target_alias}/${version}
+# Since gcc_tooldir does not exist at build-time, use -B${build_tooldir}/bin/
+build_tooldir=${exec_prefix}/${target_alias}
+# Directory to search for site-specific includes.
+local_includedir=${local_prefix}/include
+includedir=${prefix}/include
+
+itoolsdir=${libsubdir}/install-tools
+incdir=${libsubdir}/include
+
+. ${itoolsdir}/mkheaders.conf
+
+cd ${itoolsdir}
+rm -rf ${incdir}/*
+
+if [ x${STMP_FIXINC} != x ] ; then
+	TARGET_MACHINE="${target}" target_canonical="${target}" \
+	    ${SHELL} ./fixinc.sh ${incdir} \
+	    ${SYSTEM_HEADER_DIR} ${OTHER_FIXINCLUDES_DIRS}
+	rm -f ${incdir}/syslimits.h
+	if [ -f ${incdir}/limits.h ]; then
+	  mv ${incdir}/limits.h ${incdir}/syslimits.h
+	else
+	  cp gsyslimits.h ${incdir}/syslimits.h
+	fi
+fi
+
+cp include/* ${incdir}
+
+if [ x${STMP_FIXPROTO} != x ] ; then
+  mkinstalldirs="${SHELL} ${itoolsdir}/mkinstalldirs"
+  export FIXPROTO_DEFINES mkinstalldirs
+  ${SHELL} fixproto ${incdir} ${incdir} ${SYSTEM_HEADER_DIR} || exit 1
+fi

From-SVN: r53907
2002-05-27 04:24:54 +00:00
INSTALL README: Update wrt. 2001-06-13 14:51:33 +00:00
boehm-gc irix_threads.cc (GC_pthread_detach): Do not use REAL_FUNC. 2002-05-19 17:36:14 +00:00
config Makefile.in: Allow for PWDCMD to override hardcoded pwd. 2002-05-16 17:43:21 +00:00
contrib Makefile.in: Allow for PWDCMD to override hardcoded pwd. 2002-05-16 17:43:21 +00:00
fastjar jartool.c (expand_options): Handle tar-style argument list with a leading "-". 2002-03-18 11:08:21 +00:00
gcc Makefile.in (INSTALL_HEADERS): Add 'install-mkheaders'. 2002-05-27 04:24:54 +00:00
include xregex2.h (__restrict_arr): Define to __restrict on GCC 3.1 and later. 2002-04-16 17:12:54 -07:00
libf2c Daily bump. 2002-05-26 07:17:49 +00:00
libffi ffi_darwin.c (ffi_prep_closure): Declare fd at beginning of function (for older apple cc). 2002-05-13 16:19:10 -04:00
libiberty configure.in: Fix typo in the code checking for sys_errlist. 2002-05-22 16:57:15 -04:00
libjava natThrowable.cc (fillInStackTrace): Use "stackTraceBytes", not "stackTrace". 2002-05-24 23:31:23 +01:00
libobjc Makefile.in (SHELL): Set to @SHELL@. 2002-05-20 16:35:19 +00:00
libstdc++-v3 re PR libstdc++/6811 (Missing 'return *this' in __enc_traits& operator=(const __enc_traits& __obj)' in 3.1 release) 2002-05-26 14:35:04 +00:00
maintainer-scripts gnatvsn.ads (Gnat_Version_String): Change to "3.2 20020526 (experimental)". 2002-05-26 11:29:30 +01:00
zlib Makefile.in: Allow for PWDCMD to override hardcoded pwd. 2002-05-16 17:43:21 +00:00
.cvsignore gcc_update: Dump timestamp in LAST_UPDATED. 2001-07-26 23:00:45 -07:00
COPYING COPYING: Update to current ftp://ftp.gnu.org/pub/gnu/Licenses/COPYING-2.0 (fixes... 2000-12-18 21:47:20 +00:00
COPYING.LIB COPYING.LIB: Update to LGPL 2.1 from the FSF. 2001-01-29 13:32:47 +00:00
ChangeLog * MAINTAINERS (Write After Approval): Add myself. 2002-05-24 07:19:09 +00:00
MAINTAINERS * MAINTAINERS (Write After Approval): Add myself. 2002-05-24 07:19:09 +00:00
Makefile.in Makefile.in: Allow for PWDCMD to override hardcoded pwd. 2002-05-16 17:43:21 +00:00
README * README: Remove version number. 2001-06-13 19:48:09 +01:00
config-ml.in Makefile.in: Allow for PWDCMD to override hardcoded pwd. 2002-05-16 17:43:21 +00:00
config.guess config.guess: Update to 2002-05-22 version. 2002-05-22 18:44:13 +00:00
config.if * config.if: Assume enable_libstdcxx_v3 is defined. 2001-02-05 11:02:20 +00:00
config.sub config.guess: Update to 2002-05-22 version. 2002-05-22 18:44:13 +00:00
configure Makefile.in: Allow for PWDCMD to override hardcoded pwd. 2002-05-16 17:43:21 +00:00
configure.in Makefile.in: Allow for PWDCMD to override hardcoded pwd. 2002-05-16 17:43:21 +00:00
install-sh * install-sh: Use _inst.$$_ for temp file name. 2002-01-25 18:42:28 -05:00
libtool.m4 ltconfig, [...]: Upgraded to libtool 1.4a 1.641.2.254. 2001-05-20 18:55:59 +00:00
ltcf-c.sh backport: ltcf-c.sh: Use $objext, not $ac_objext. 2001-09-01 00:47:19 +00:00
ltcf-cxx.sh backport: ltcf-c.sh: Use $objext, not $ac_objext. 2001-09-01 00:47:19 +00:00
ltcf-gcj.sh backport: ltcf-c.sh: Use $objext, not $ac_objext. 2001-09-01 00:47:19 +00:00
ltconfig backport: ltcf-c.sh: Use $objext, not $ac_objext. 2001-09-01 00:47:19 +00:00
ltmain.sh ltmain.sh: Detect and handle object name conflicts while piecewise linking a static library. 2002-05-06 21:26:49 +00:00
missing merge with /cvs/src 2000-07-22 04:08:22 -04:00
mkdep merge with /cvs/src 2000-07-22 04:08:22 -04:00
mkinstalldirs Initial revision 1997-08-21 18:57:35 -04:00
move-if-change FSF address fix in copyright header. 1999-01-11 07:12:18 -07:00
symlink-tree Makefile.in: handle DOS-style absolute paths. 2000-12-09 11:06:19 -05:00
ylwrap ylwrap: Change absolute path checks to check for DOS style path names. 1998-10-08 17:26:54 -06:00

README

This directory contains the GNU Compiler Collection (GCC).

The GNU Compiler Collection is free software.  See the file COPYING
for copying permission.  The manuals, and some of the runtime
libraries, are under different terms; see the individual source files
for details.

The directory INSTALL contains copies of the installation information
as HTML and plain text.  The source of this information is
gcc/doc/install.texi.  The installation information includes details
of what is included in the GCC sources and what files GCC installs.

See the file gcc/doc/gcc.texi (together with other files that it
includes) for usage and porting information.  An online readable
version of the manual is in the files gcc/doc/gcc.info*.

See http://gcc.gnu.org/bugs.html for how to report bugs usefully.