diff options
Diffstat (limited to 'gcc/objc/Make-lang.in')
-rw-r--r-- | gcc/objc/Make-lang.in | 142 |
1 files changed, 142 insertions, 0 deletions
diff --git a/gcc/objc/Make-lang.in b/gcc/objc/Make-lang.in new file mode 100644 index 0000000..41463f2 --- /dev/null +++ b/gcc/objc/Make-lang.in @@ -0,0 +1,142 @@ +# Top level -*- makefile -*- fragment for GNU Objective-C +# Copyright (C) 1997, 1998, 2000, 2001, 2002, 2003, 2004, 2005 +# 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, 51 Franklin Street, Fifth Floor, +#Boston, MA 02110-1301, USA. + +# This file provides the language dependent support in the main Makefile. +# Each language makefile fragment must provide the following targets: +# +# foo.all.cross, foo.start.encap, foo.rest.encap, +# foo.install-common, foo.install-man, foo.install-info, foo.dvi, foo.pdf +# foo.uninstall, +# foo.mostlyclean, foo.clean, foo.distclean, +# foo.maintainer-clean, foo.stage1, foo.stage2, foo.stage3, foo.stage4 +# +# where `foo' is the name of the language. +# +# It should also provide rules for: +# +# - making any compiler driver (eg: g++) +# - the compiler proper (eg: cc1plus) +# - define the names for selecting the language in LANGUAGES. + +# +# Define the names for selecting Objective-C in LANGUAGES. +objc: cc1obj$(exeext) + +# Tell GNU make to ignore these if they exist. +.PHONY: objc + +# Use maximal warnings for this front end. +objc-warn = $(STRICT_WARN) + +# Language-specific object files for Objective C. +OBJC_OBJS = objc/objc-lang.o objc/objc-act.o + +cc1obj-dummy$(exeext): $(OBJC_OBJS) $(C_AND_OBJC_OBJS) dummy-checksum.o $(BACKEND) $(LIBDEPS) + $(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ \ + $(OBJC_OBJS) $(C_AND_OBJC_OBJS) dummy-checksum.o \ + $(BACKEND) $(LIBS) + +cc1obj-checksum.c : cc1obj-dummy$(exeext) build/genchecksum$(build_exeext) + build/genchecksum$(build_exeext) cc1obj-dummy$(exeext) > $@ + +cc1obj-checksum.o : cc1obj-checksum.c + +cc1obj$(exeext): $(OBJC_OBJS) $(C_AND_OBJC_OBJS) cc1obj-checksum.o $(BACKEND) $(LIBDEPS) + $(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ \ + $(OBJC_OBJS) $(C_AND_OBJC_OBJS) cc1obj-checksum.o \ + $(BACKEND) $(LIBS) + +# Objective C language specific files. + +objc/objc-lang.o : objc/objc-lang.c \ + $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) \ + $(C_TREE_H) $(DIAGNOSTIC_H) \ + $(GGC_H) langhooks.h $(LANGHOOKS_DEF_H) $(C_COMMON_H) gtype-objc.h \ + c-objc-common.h objc/objc-act.h $(TREE_GIMPLE_H) + +objc/objc-act.o : objc/objc-act.c \ + $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) $(RTL_H) $(TM_P_H) \ + $(EXPR_H) $(TARGET_H) $(C_TREE_H) $(DIAGNOSTIC_H) toplev.h $(FLAGS_H) \ + objc/objc-act.h input.h $(FUNCTION_H) output.h debug.h langhooks.h \ + $(LANGHOOKS_DEF_H) $(HASHTAB_H) $(C_PRAGMA_H) gt-objc-objc-act.h \ + $(TREE_GIMPLE_H) + +objc.srcextra: + +# +# Build hooks: + +objc.all.cross: +objc.start.encap: +objc.rest.encap: +objc.info: +objc.install-info: +objc.dvi: +objc.pdf: +objc.html: +objc.man: +objc.srcinfo: +objc.srcman: + +objc.tags: force + cd $(srcdir)/objc; etags -o TAGS.sub *.c *.h; \ + etags --include TAGS.sub --include ../TAGS.sub + +lang_checks += check-objc + +# +# Install hooks: +# cc1obj is installed elsewhere as part of $(COMPILERS). + +objc.install-common: + +objc.install-man: + +objc.uninstall: +# +# Clean hooks: +# A lot of the ancillary files are deleted by the main makefile. +# We just have to delete files specific to us. +objc.mostlyclean: + -rm -f objc/*$(objext) objc/xforward objc/fflags + -rm -f objc/*$(coverageexts) +objc.clean: objc.mostlyclean + -rm -rf objc-headers +objc.distclean: + -rm -f objc/Makefile objc/Make-host objc/Make-target + -rm -f objc/config.status objc/config.cache +objc.maintainer-clean: + +# +# Stage hooks: + +objc.stage1: stage1-start + -mv objc/*$(objext) stage1/objc +objc.stage2: stage2-start + -mv objc/*$(objext) stage2/objc +objc.stage3: stage3-start + -mv objc/*$(objext) stage3/objc +objc.stage4: stage4-start + -mv objc/*$(objext) stage4/objc +objc.stageprofile: stageprofile-start + -mv objc/*$(objext) stageprofile/objc +objc.stagefeedback: stagefeedback-start + -mv objc/*$(objext) stagefeedback/objc |