diff options
author | Zack Weinberg <zack@gcc.gnu.org> | 2000-10-27 20:22:28 +0000 |
---|---|---|
committer | Zack Weinberg <zack@gcc.gnu.org> | 2000-10-27 20:22:28 +0000 |
commit | b8dad04b688e9cb9c34b0c0beba09fd0dc626389 (patch) | |
tree | d68bb6ec0165cb1817a78141ea65d0c48a903fa0 /gcc/objc | |
parent | fadb729c6d312aa1064e1fcb7cdd6286deeff9bd (diff) | |
download | gcc-b8dad04b688e9cb9c34b0c0beba09fd0dc626389.zip gcc-b8dad04b688e9cb9c34b0c0beba09fd0dc626389.tar.gz gcc-b8dad04b688e9cb9c34b0c0beba09fd0dc626389.tar.bz2 |
configure.in: If not NO_MINUS_C_MINUS_O, substitute OUTPUT_OPTION with '-o $@'.
* configure.in: If not NO_MINUS_C_MINUS_O, substitute
OUTPUT_OPTION with '-o $@'. Make zlibdir, zlibinc relative to
top level. Kill oldstyle_subdirs. Do not include
$srcdir/$s/Makefile.in in all_lang_makefiles, but do include
$outputs. Do not run configure.lang from config.status.
Rearrange warning-flag logic to correspond to what the
makefile wants. Put special vax stage1 options in
@stage1_flags@ not @stage1_warn_cflags@. Don't do anything
with extra_c_objs, extra_cxx_objs, or extra_cpp_objs.
(--enable-c-cpplib): AC_SUBST(maybe_cpplib) with "libcpp.a" if
switch is given, nothing otherwise.
* configure.lang: Delete.
* Makefile.in: Expunge all traces of extra_c_objs,
extra_cxx_objs, and extra_cpp_objs. Set MAYBE_CPPLIB from
@maybe_cpplib@. Add $(MAYBE_CPPLIB) to C_AND_OBJC_OBJS. Set
warning options via a three level scheme so that -pedantic and
-Wtraditional are not used for non-C front ends: LOOSE_WARN,
STRICT1_WARN, STRICT2_WARN -> $(@D)-warn, GCC_WARN_CFLAGS ->
WARN_CFLAGS. Distinguish STAGE1_CFLAGS from BOOT_CFLAGS.
Add -I$(@D) and -I$(srcdir)/$(@D) to INCLUDES.
Set OUTPUT_OPTION, ZLIB, ZLIBINC. Do not set P,
LANG_FLAGS_TO_PASS. Add OUTPUT_OPTION to all object-file
generation rules. Wrap all rules that change the current
directory in parentheses; pmake doesn't spawn a new shell for
each command. Expunge all references to $(P). When one
command depends on another and they're run all at once, use &&
to separate them, not ;. Add libgcc_s$(SHLIB_EXT) to files
deleted on make clean. Force OUTPUT_OPTION='-o $@' in stage2
and beyond.
* cp/Make-lang.in, f/Make-lang.in, java/Make-lang.in,
objc/Make-lang.in: Wrap all rules that change the current
directory in parentheses. Expunge all references to $(P).
When one command depends on another and they're run all at
once, use && to separate them, not ;. Add OUTPUT_OPTION to
all object-file generation rules. Delete obsolete variables.
Move all build rules here from the corresponding Makefile.in and
adapt to the new environment.
* cp/Makefile.in, f/Makefile.in, java/Makefile.in, objc/Makefile.in:
Delete.
* cp/config-lang.in, f/config-lang.in, java/config-lang.in:
Delete outputs= line.
From-SVN: r37088
Diffstat (limited to 'gcc/objc')
-rw-r--r-- | gcc/objc/Make-lang.in | 26 | ||||
-rw-r--r-- | gcc/objc/Makefile.in | 73 |
2 files changed, 7 insertions, 92 deletions
diff --git a/gcc/objc/Make-lang.in b/gcc/objc/Make-lang.in index 049c306..6f19902 100644 --- a/gcc/objc/Make-lang.in +++ b/gcc/objc/Make-lang.in @@ -35,18 +35,6 @@ # - making any compiler driver (eg: g++) # - the compiler proper (eg: cc1plus) # - define the names for selecting the language in LANGUAGES. -# -# Extra flags to pass to recursive makes. -OBJC_FLAGS_TO_PASS = \ - "OBJC_FOR_BUILD=$(OBJC_FOR_BUILD)" \ - "OBJCFLAGS=$(OBJCFLAGS)" \ - "OBJC_FOR_TARGET=$(OBJC_FOR_TARGET)" \ - -# Actual names to use when installing a native compiler. -#OBJC_INSTALL_NAME = `t='$(program_transform_name)'; echo c++ | sed $$t` - -# Actual names to use when installing a cross-compiler. -#OBJC_CROSS_NAME = `t='$(program_transform_cross_name)'; echo c++ | sed $$t` # # Define the names for selecting Objective-C in LANGUAGES. @@ -56,10 +44,13 @@ OBJECTIVE-C objective-c: cc1obj$(exeext) # Tell GNU make to ignore these if they exist. .PHONY: objective-c objc ObjC +# Use maximal warnings for this front end. +objc-warn = $(STRICT_WARN) + # Language-specific object files for Objective C. OBJC_OBJS = objc-parse.o objc-act.o $(C_AND_OBJC_OBJS) -cc1obj$(exeext): $(P) $(OBJC_OBJS) $(BACKEND) $(LIBDEPS) +cc1obj$(exeext): $(OBJC_OBJS) $(BACKEND) $(LIBDEPS) $(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ $(OBJC_OBJS) $(BACKEND) $(LIBS) # Objective C language specific files. @@ -70,7 +61,7 @@ objc-parse.o : $(srcdir)/objc/objc-parse.c \ $(srcdir)/input.h $(srcdir)/flags.h $(srcdir)/output.h \ $(srcdir)/objc/objc-act.h system.h cpplib.h $(CC) $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) -I$(srcdir)/objc \ - -c $(srcdir)/objc/objc-parse.c + -c $(srcdir)/objc/objc-parse.c $(OUTPUT_OPTION) $(INTL_TARGETS): $(srcdir)/objc/objc-parse.c $(srcdir)/objc/objc-parse.c : $(srcdir)/objc/objc-parse.y @@ -132,8 +123,8 @@ objc.distclean: -rm -f objc-parse.output objc.extraclean: objc.maintainer-clean: - -rm -f objc/objc-parse.y - -rm -f objc/objc-parse.c objc/objc-parse.output + -rm -f $(srcdir)/objc/objc-parse.y + -rm -f $(srcdir)/objc/objc-parse.c $(srcdir)/objc/objc-parse.output # # Stage hooks: @@ -156,11 +147,8 @@ objc.stage4: stage4-start # This target creates the files that can be rebuilt, but go in the # distribution anyway. It then copies the files to the distdir directory. -# ??? Note that this should be fixed once the Makefile is fixed to do -# the build in the inner directory. objc.distdir: $(srcdir)/objc/objc-parse.c mkdir tmp/objc -# cd objc ; $(MAKE) $(LANG_FLAGS_TO_PASS) objc-parse.c cd objc; \ for file in *[0-9a-zA-Z+]; do \ ln $$file ../tmp/objc >/dev/null 2>&1 || cp $$file ../tmp/objc; \ diff --git a/gcc/objc/Makefile.in b/gcc/objc/Makefile.in deleted file mode 100644 index 71c564c..0000000 --- a/gcc/objc/Makefile.in +++ /dev/null @@ -1,73 +0,0 @@ -# GNU Objective C frontend Makefile -# Copyright (C) 1993, 1995, 1996, 1997, 1998 Free Software Foundation, Inc. -# -# This file is part of GNU CC. -# -# GNU CC 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. -# -# GNU CC 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 -# GNU CC; see the file COPYING. If not, write to the Free Software -# Foundation, 59 Temple Place - Suite 330, -# Boston, MA 02111-1307, USA. - -# The Makefile built from this file lives in the objc language subdirectory. -# Its purpose is to provide support for: -# -# 1. recursion where necessary, and only then (building .o's), and -# 2. building and debugging cc1objc from the language subdirectory. -# -# The parent Makefile handles all other chores, with help from the language -# Makefile fragment. -# -# The targets for external use are `all' and `mostlyclean'. - -SHELL=/bin/sh - -OPTIMIZE= -O - -srcdir = . -VPATH = $(srcdir) - -AR = ar -AR_FLAGS = rc - -# Define this as & to perform parallel make on a Sequent. -# Note that this has some bugs, and it seems currently necessary -# to compile all the gen* files first by hand to avoid erroneous results. -P = - -# Definition of `all' is here so that new rules inserted by sed -# do not specify the default target. -all: all.indirect - -# sed inserts variable overrides after the following line. -####target overrides -####host overrides -####cross overrides -####build overrides -# - -# Now figure out from those variables how to compile and link. -all.indirect: Makefile frontend - -frontend: - cd ..; $(MAKE) cc1obj$(exeext) - -Makefile: $(srcdir)/Makefile.in $(srcdir)/../configure - cd ..; $(SHELL) config.status - -mostlyclean: - -rm -f *.o xforward fflags -clean: mostlyclean -distclean: mostlyclean -extraclean: mostlyclean - -# For Sun VPATH. - |