annotate make/bsd/makefiles/cscope.make @ 19147:609480dfa0d8

Create ExplodeLoop plugin prototype. Special sort for blocks from bci block map builder for explode loop methods. Graph builder plugin for customizing static field accesses. New Truffle option TruffleExcludeAssertions default true that excludes assertion code from being partial evaluated in the new partial evaluator.
author Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
date Thu, 05 Feb 2015 03:25:21 +0100
parents f08d439fab8c
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3960
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
1 #
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
2 # Copyright (c) 2005, 2008, Oracle and/or its affiliates. All rights reserved.
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
4 #
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
5 # This code is free software; you can redistribute it and/or modify it
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
6 # under the terms of the GNU General Public License version 2 only, as
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
7 # published by the Free Software Foundation.
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
8 #
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
9 # This code is distributed in the hope that it will be useful, but WITHOUT
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
10 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
11 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
12 # version 2 for more details (a copy is included in the LICENSE file that
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
13 # accompanied this code).
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
14 #
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
15 # You should have received a copy of the GNU General Public License version
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
16 # 2 along with this work; if not, write to the Free Software Foundation,
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
17 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
18 #
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
19 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
20 # or visit www.oracle.com if you need additional information or have any
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
21 # questions.
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
22 #
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
23 #
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
24
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
25 #
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
26 # The cscope.out file is made in the current directory and spans the entire
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
27 # source tree.
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
28 #
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
29 # Things to note:
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
30 # 1. We use relative names for cscope.
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
31 # 2. We *don't* remove the old cscope.out file, because cscope is smart
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
32 # enough to only build what has changed. It can be confused, however,
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
33 # if files are renamed or removed, so it may be necessary to manually
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
34 # remove cscope.out if a lot of reorganization has occurred.
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
35 #
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
36
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
37 include $(GAMMADIR)/make/scm.make
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
38
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
39 NAWK = awk
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
40 RM = rm -f
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
41 HG = hg
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
42 CS_TOP = ../..
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
43
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
44 CSDIRS = $(CS_TOP)/src $(CS_TOP)/build
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
45 CSINCS = $(CSDIRS:%=-I%)
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
46
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
47 CSCOPE = cscope
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
48 CSCOPE_FLAGS = -b
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
49
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
50 # Allow .java files to be added from the environment (CSCLASSES=yes).
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
51 ifdef CSCLASSES
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
52 ADDCLASSES= -o -name '*.java'
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
53 endif
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
54
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
55 # Adding CClassHeaders also pushes the file count of a full workspace up about
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
56 # 200 files (these files also don't exist in a new workspace, and thus will
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
57 # cause the recreation of the database as they get created, which might seem
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
58 # a little confusing). Thus allow these files to be added from the environment
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
59 # (CSHEADERS=yes).
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
60 ifndef CSHEADERS
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
61 RMCCHEADERS= -o -name CClassHeaders
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
62 endif
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
63
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
64 # Use CS_GENERATED=x to include auto-generated files in the build directories.
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
65 ifdef CS_GENERATED
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
66 CS_ADD_GENERATED = -o -name '*.incl'
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
67 else
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
68 CS_PRUNE_GENERATED = -o -name '${OS}_*_core' -o -name '${OS}_*_compiler?'
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
69 endif
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
70
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
71 # OS-specific files for other systems are excluded by default. Use CS_OS=yes
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
72 # to include platform-specific files for other platforms.
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
73 ifndef CS_OS
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
74 CS_OS = linux macos solaris win32 bsd
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
75 CS_PRUNE_OS = $(patsubst %,-o -name '*%*',$(filter-out ${OS},${CS_OS}))
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
76 endif
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
77
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
78 # Processor-specific files for other processors are excluded by default. Use
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
79 # CS_CPU=x to include platform-specific files for other platforms.
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
80 ifndef CS_CPU
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
81 CS_CPU = i486 sparc amd64 ia64
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
82 CS_PRUNE_CPU = $(patsubst %,-o -name '*%*',$(filter-out ${SRCARCH},${CS_CPU}))
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
83 endif
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
84
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
85 # What files should we include? A simple rule might be just those files under
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
86 # SCCS control, however this would miss files we create like the opcodes and
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
87 # CClassHeaders. The following attempts to find everything that is *useful*.
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
88 # (.del files are created by sccsrm, demo directories contain many .java files
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
89 # that probably aren't useful for development, and the pkgarchive may contain
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
90 # duplicates of files within the source hierarchy).
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
91
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
92 # Directories to exclude.
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
93 CS_PRUNE_STD = $(SCM_DIRS) \
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
94 -o -name '.del-*' \
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
95 -o -name '*demo' \
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
96 -o -name pkgarchive
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
97
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
98 CS_PRUNE = $(CS_PRUNE_STD) \
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
99 $(CS_PRUNE_OS) \
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
100 $(CS_PRUNE_CPU) \
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
101 $(CS_PRUNE_GENERATED) \
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
102 $(RMCCHEADERS)
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
103
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
104 # File names to include.
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
105 CSFILENAMES = -name '*.[ch]pp' \
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
106 -o -name '*.[Ccshlxy]' \
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
107 $(CS_ADD_GENERATED) \
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
108 -o -name '*.il' \
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
109 -o -name '*.cc' \
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
110 -o -name '*[Mm]akefile*' \
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
111 -o -name '*.gmk' \
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
112 -o -name '*.make' \
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
113 -o -name '*.ad' \
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
114 $(ADDCLASSES)
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
115
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
116 .PRECIOUS: cscope.out
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
117
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
118 cscope cscope.out: cscope.files FORCE
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
119 $(CSCOPE) $(CSCOPE_FLAGS)
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
120
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
121 # The .raw file is reordered here in an attempt to make cscope display the most
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
122 # relevant files first.
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
123 cscope.files: .cscope.files.raw
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
124 echo "$(CSINCS)" > $@
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
125 -egrep -v "\.java|\/make\/" $< >> $@
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
126 -fgrep ".java" $< >> $@
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
127 -fgrep "/make/" $< >> $@
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
128
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
129 .cscope.files.raw: .nametable.files
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
130 -find $(CSDIRS) -type d \( $(CS_PRUNE) \) -prune -o \
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
131 -type f \( $(CSFILENAMES) \) -print > $@
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
132
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
133 cscope.clean: nametable.clean
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
134 -$(RM) cscope.out cscope.files .cscope.files.raw
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
135
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
136 TAGS: cscope.files FORCE
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
137 egrep -v '^-|^$$' $< | etags --members -
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
138
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
139 TAGS.clean: nametable.clean
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
140 -$(RM) TAGS
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
141
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
142 # .nametable.files and .nametable.files.tmp are used to determine if any files
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
143 # were added to/deleted from/renamed in the workspace. If not, then there's
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
144 # normally no need to rebuild the cscope database. To force a rebuild of
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
145 # the cscope database: gmake nametable.clean.
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
146 .nametable.files: .nametable.files.tmp
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
147 ( cmp -s $@ $< ) || ( cp $< $@ )
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
148 -$(RM) $<
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
149
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
150 # `hg status' is slightly faster than `hg fstatus'. Both are
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
151 # quite a bit slower on an NFS mounted file system, so this is
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
152 # really geared towards repos on local file systems.
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
153 .nametable.files.tmp:
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
154 -$(HG) fstatus -acmn > $@
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
155 nametable.clean:
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
156 -$(RM) .nametable.files .nametable.files.tmp
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
157
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
158 FORCE:
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
159
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
160 .PHONY: cscope cscope.clean TAGS.clean nametable.clean FORCE