Build objc support.
[dragonfly.git] / gnu / usr.bin / cc41 / Makefile.langs
1 # $DragonFly: src/gnu/usr.bin/cc41/Makefile.langs,v 1.4 2008/06/30 12:16:03 hasso Exp $
2
3 .if !defined(NO_CXX)
4 gencheck_defs=  cp/cp-tree.def
5 .endif
6 .if !defined(NO_OBJC)
7 gencheck_defs+= objc/objc-tree.def
8 .endif
9
10 optionsfiles=   ${GCCDIR}/gcc/c.opt
11 optionsfiles+=  ${GCCDIR}/gcc/common.opt
12 optionsfiles+=  ${GCCDIR}/gcc/config/${GCC_CPU}/${GCC_CPU}.opt
13
14 .if !defined(NO_CXX)
15 LANG_SPECS_FILES=       cp/lang-specs.h
16 .endif
17 .if !defined(NO_OBJC)
18 LANG_SPECS_FILES+=      objc/lang-specs.h
19 .endif
20
21 specs.h:
22         rm -f ${.TARGET}
23         touch ${.TARGET}
24 .for F in ${LANG_SPECS_FILES}
25         echo "#include \"${F}\"" >> ${.TARGET}
26 .endfor
27
28 CLEANFILES+=    specs.h c-parse.y objc-parse.y
29
30 # this is directly from GCC's Makefile, beware evil
31 GTFILES = $(srcdir)/input.h $(srcdir)/coretypes.h \
32   $(CPP_ID_DATA_H) $(host_xm_file_list) \
33   $(tm_file_list) $(HASHTAB_H) $(SPLAY_TREE_H) $(srcdir)/bitmap.h \
34   $(srcdir)/coverage.c $(srcdir)/function.h $(srcdir)/rtl.h \
35   $(srcdir)/optabs.h $(srcdir)/tree.h $(srcdir)/libfuncs.h $(SYMTAB_H) \
36   $(srcdir)/real.h $(srcdir)/varray.h $(srcdir)/insn-addr.h $(srcdir)/hwint.h \
37   $(srcdir)/ipa-reference.h \
38   $(srcdir)/cselib.h $(srcdir)/basic-block.h  $(srcdir)/cgraph.h \
39   $(srcdir)/c-common.h $(srcdir)/c-tree.h $(srcdir)/reload.h \
40   $(srcdir)/alias.c $(srcdir)/bitmap.c $(srcdir)/cselib.c $(srcdir)/cgraph.c \
41   $(srcdir)/ipa-prop.c $(srcdir)/ipa-cp.c $(srcdir)/cgraphunit.c \
42   $(srcdir)/dbxout.c $(srcdir)/dwarf2out.c $(srcdir)/dwarf2asm.c \
43   $(srcdir)/dojump.c $(srcdir)/tree-profile.c \
44   $(srcdir)/emit-rtl.c $(srcdir)/except.c $(srcdir)/explow.c $(srcdir)/expr.c \
45   $(srcdir)/function.c $(srcdir)/except.h \
46   $(srcdir)/gcse.c $(srcdir)/integrate.c $(srcdir)/lists.c $(srcdir)/optabs.c \
47   $(srcdir)/profile.c $(srcdir)/regclass.c \
48   $(srcdir)/reg-stack.c $(srcdir)/cfglayout.c \
49   $(srcdir)/sdbout.c $(srcdir)/stor-layout.c \
50   $(srcdir)/stringpool.c $(srcdir)/tree.c $(srcdir)/varasm.c \
51   $(srcdir)/tree-mudflap.c $(srcdir)/tree-flow.h \
52   $(srcdir)/c-objc-common.c $(srcdir)/c-common.c $(srcdir)/c-parser.c \
53   $(srcdir)/tree-ssanames.c $(srcdir)/tree-eh.c $(srcdir)/tree-ssa-address.c \
54   $(srcdir)/tree-phinodes.c $(srcdir)/tree-cfg.c \
55   $(srcdir)/tree-dfa.c $(srcdir)/tree-ssa-propagate.c \
56   $(srcdir)/tree-iterator.c $(srcdir)/gimplify.c \
57   $(srcdir)/tree-chrec.h $(srcdir)/tree-vect-generic.c \
58   $(srcdir)/tree-ssa-operands.h $(srcdir)/tree-ssa-operands.c \
59   $(srcdir)/tree-profile.c $(srcdir)/tree-nested.c \
60   $(srcdir)/ipa-reference.c $(srcdir)/tree-ssa-structalias.h \
61   $(srcdir)/tree-ssa-structalias.c \
62   $(srcdir)/targhooks.c $(out_file)
63
64
65 .if !defined(NO_CXX)
66 GTFILES_CPP= \
67    $(srcdir)/cp/rtti.c $(srcdir)/cp/mangle.c $(srcdir)/cp/name-lookup.h \
68    $(srcdir)/cp/name-lookup.c $(srcdir)/cp/cp-tree.h $(srcdir)/cp/decl.h \
69    $(srcdir)/cp/call.c $(srcdir)/cp/decl.c $(srcdir)/cp/decl2.c \
70    $(srcdir)/cp/pt.c $(srcdir)/cp/repo.c $(srcdir)/cp/semantics.c \
71    $(srcdir)/cp/tree.c $(srcdir)/cp/parser.c $(srcdir)/cp/method.c \
72    $(srcdir)/cp/typeck2.c $(srcdir)/c-common.c $(srcdir)/c-common.h \
73    $(srcdir)/c-lex.c $(srcdir)/c-pragma.c $(srcdir)/cp/class.c \
74    $(srcdir)/cp/cp-objcp-common.c
75 GTFILES_FILES_LANGS+=   ${GTFILES_CPP:C/.*/cp/g}
76 GTFILES_FILES_FILES+=   ${GTFILES_CPP}
77 GTFILES_LANG_DIR_NAMES+= cp
78 .endif
79
80 .if !defined(NO_OBJC)
81 GTFILES_OBJC=   $(srcdir)/objc/objc-act.c $(srcdir)/objc/objc-act.h
82 GTFILES_FILES_LANGS+=   ${GTFILES_OBJC:C/.*/objc/g}
83 GTFILES_FILES_FILES+=   ${GTFILES_OBJC}
84 GTFILES_LANG_DIR_NAMES+= objc
85 .endif
86
87 # C
88 GTFILES_C+= \
89         $(srcdir)/c-lang.c $(srcdir)/c-tree.h $(srcdir)/c-decl.c \
90         $(srcdir)/c-common.c $(srcdir)/c-common.h \
91         $(srcdir)/c-pragma.c $(srcdir)/c-objc-common.c $(srcdir)/c-parser.c
92 GTFILES_FILES_LANGS+=   ${GTFILES_C:C/.*/c/g}
93 GTFILES_FILES_FILES+=   ${GTFILES_C}
94
95
96 # collect
97 GTFILES+=       ${GTFILES_FILES_FILES}