X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;f=gcc%2Fobjc%2FMake-lang.in;h=12aefd188f8df2bd15ef7ec6d8750f1221f00c8a;hb=f78a6a7e0b73927f3b6f50c67f4223b262269bdc;hp=8bc412578bff6839a1a58236f07a6c9750a128c2;hpb=ef3bb540da88410653be1d84bbb57f3fd112f146;p=pf3gnuchains%2Fgcc-fork.git diff --git a/gcc/objc/Make-lang.in b/gcc/objc/Make-lang.in index 8bc412578bf..12aefd188f8 100644 --- a/gcc/objc/Make-lang.in +++ b/gcc/objc/Make-lang.in @@ -1,12 +1,12 @@ # Top level -*- makefile -*- fragment for GNU Objective-C -# Copyright (C) 1997, 1998, 2000, 2001, 2002, 2003 -# Free Software Foundation, Inc. +# Copyright (C) 1997, 1998, 2000, 2001, 2002, 2003, 2004, 2005, 2007, +# 2008, 2009, 2010 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) +#the Free Software Foundation; either version 3, or (at your option) #any later version. #GCC is distributed in the hope that it will be useful, @@ -14,19 +14,18 @@ #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. +# You should have received a copy of the GNU General Public License +# along with GCC; see the file COPYING3. If not see +# . + # This file provides the language dependent support in the main Makefile. # Each language makefile fragment must provide the following targets: # -# foo.all.build, foo.all.cross, foo.start.encap, foo.rest.encap, -# foo.info, foo.dvi, -# foo.install-normal, foo.install-common, foo.install-info, foo.install-man, -# foo.uninstall, -# foo.mostlyclean, foo.clean, foo.distclean, foo.extraclean, +# foo.all.cross, foo.start.encap, foo.rest.encap, +# foo.install-common, foo.install-man, foo.install-info, foo.install-pdf, +# foo.install-html, foo.info, foo.dvi, foo.pdf, foo.html, 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. @@ -39,86 +38,84 @@ # # Define the names for selecting Objective-C in LANGUAGES. -OBJC objc: cc1obj$(exeext) -OBJECTIVE-C objective-c: cc1obj$(exeext) +objc: cc1obj$(exeext) # Tell GNU make to ignore these if they exist. -.PHONY: objective-c objc ObjC +.PHONY: objc # Use maximal warnings for this front end. objc-warn = $(STRICT_WARN) -# Bison-1.75 output yields (harmless) -Wtraditional warnings -objc/objc-parse.o-warn = -Wno-error # Language-specific object files for Objective C. -OBJC_OBJS = objc/objc-lang.o objc/objc-parse.o objc/objc-act.o +OBJC_OBJS = objc/objc-lang.o objc/objc-act.o + +objc_OBJS = $(OBJC_OBJS) cc1obj-checksum.o + +cc1obj-checksum.c : build/genchecksum$(build_exeext) checksum-options \ + $(OBJC_OBJS) $(C_AND_OBJC_OBJS) $(BACKEND) $(LIBDEPS) + build/genchecksum$(build_exeext) $(OBJC_OBJS) $(C_AND_OBJC_OBJS) \ + $(BACKEND) $(LIBDEPS) checksum-options > cc1obj-checksum.c.tmp && \ + $(srcdir)/../move-if-change cc1obj-checksum.c.tmp cc1obj-checksum.c + +cc1obj-checksum.o : cc1obj-checksum.c $(CONFIG_H) $(SYSTEM_H) -cc1obj$(exeext): $(OBJC_OBJS) $(C_AND_OBJC_OBJS) $(BACKEND) $(LIBDEPS) - $(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ \ - $(OBJC_OBJS) $(C_AND_OBJC_OBJS) $(BACKEND) $(LIBS) +cc1obj$(exeext): $(OBJC_OBJS) $(C_AND_OBJC_OBJS) cc1obj-checksum.o $(BACKEND) $(LIBDEPS) + +$(LINKER) $(ALL_LINKERFLAGS) $(LDFLAGS) -o $@ \ + $(OBJC_OBJS) $(C_AND_OBJC_OBJS) cc1obj-checksum.o \ + $(BACKEND) $(LIBS) $(BACKENDLIBS) # 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 \ - c-common.h toplev.h objc/objc-act.h langhooks.h $(LANGHOOKS_DEF_H) - -objc/objc-parse.o : $(parsedir)/objc/objc-parse.c \ $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) $(C_TREE_H) \ - toplev.h $(GGC_H) c-pragma.h input.h flags.h output.h objc/objc-act.h + $(GGC_H) langhooks.h $(LANGHOOKS_DEF_H) $(C_COMMON_H) gtype-objc.h \ + c-objc-common.h objc/objc-act.h objc/objc-act.o : objc/objc-act.c \ - $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) $(RTL_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) \ - gt-objc-objc-act.h gtype-objc.h - -po-generated: $(parsedir)/objc/objc-parse.c -$(parsedir)/objc/objc-parse.c : $(parsedir)/objc/objc-parse.y - cd $(parsedir)/objc; \ - if $(BISON) $(BISONFLAGS) -o op$$$$.c objc-parse.y ; then \ - test -f op$$$$.output && mv -f op$$$$.output objc-parse.output ; \ - mv -f op$$$$.c objc-parse.c ; \ - else \ - rm -f op$$$$.* ; \ - false ; \ - fi - -$(parsedir)/objc/objc-parse.y: $(srcdir)/c-parse.in - echo '/*WARNING: This file is automatically generated!*/' >tmp-objc-prs.y - sed -e "/^ifc$$/,/^end ifc$$/d" \ - -e "/^ifobjc$$/d" -e "/^end ifobjc$$/d" \ - $(srcdir)/c-parse.in >>tmp-objc-prs.y - $(SHELL) $(srcdir)/move-if-change tmp-objc-prs.y $(parsedir)/objc/objc-parse.y - -gtype-objc.h : s-gtype ; @true -gt-objc-objc-act.h : s-gtype ; @true + $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) \ + $(TARGET_H) $(C_TREE_H) $(DIAGNOSTIC_CORE_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 \ + $(GIMPLE_H) c-lang.h + +objc.srcextra: # # Build hooks: -objc.all.build: objc.all.cross: objc.start.encap: objc.rest.encap: +objc.info: +objc.install-info: +objc.dvi: +objc.pdf: +objc.install-pdf: +objc.html: +objc.install-html: +objc.man: +objc.srcinfo: +objc.srcman: +objc.install-plugin: objc.tags: force - cd $(srcdir)/objc; etags *.y *.c *.h + cd $(srcdir)/objc; etags -o TAGS.sub *.c *.h; \ + etags --include TAGS.sub --include ../TAGS.sub -objc.info: -objc.dvi: -objc.generated-manpages: +lang_checks += check-objc + +# The following allows you to do 'make check-objc -j2'. The +# execute.exp tests will be run in parallel with all the other ones. +# This is tuned for '-j2'. +lang_checks_parallelized += check-objc +check_objc_parallelize = execute.exp # # Install hooks: # cc1obj is installed elsewhere as part of $(COMPILERS). -objc.install-normal: - objc.install-common: -objc.install-info: - objc.install-man: objc.uninstall: @@ -127,7 +124,6 @@ objc.uninstall: # 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 tmp-objc-prs.y -rm -f objc/*$(objext) objc/xforward objc/fflags -rm -f objc/*$(coverageexts) objc.clean: objc.mostlyclean @@ -135,30 +131,20 @@ objc.clean: objc.mostlyclean objc.distclean: -rm -f objc/Makefile objc/Make-host objc/Make-target -rm -f objc/config.status objc/config.cache - -rm -f objc-parse.output -objc.extraclean: objc.maintainer-clean: - -rm -f $(parsedir)/objc/objc-parse.y - -rm -f $(parsedir)/objc/objc-parse.c $(parsedir)/objc/objc-parse.output # # Stage hooks: objc.stage1: stage1-start -mv objc/*$(objext) stage1/objc - -mv cc1obj$(exeext) stage1 objc.stage2: stage2-start -mv objc/*$(objext) stage2/objc - -mv cc1obj$(exeext) stage2 objc.stage3: stage3-start -mv objc/*$(objext) stage3/objc - -mv cc1obj$(exeext) stage3 objc.stage4: stage4-start -mv objc/*$(objext) stage4/objc - -mv cc1obj$(exeext) stage4 objc.stageprofile: stageprofile-start -mv objc/*$(objext) stageprofile/objc - -mv cc1obj$(exeext) stageprofile objc.stagefeedback: stagefeedback-start -mv objc/*$(objext) stagefeedback/objc - -mv cc1obj$(exeext) stagefeedback