Mercurial > hg > truffle
annotate make/windows/create_obj_files.sh @ 4988:eb5b24d1499f
Merge
author | Christian Haeubl <christian.haeubl@oracle.com> |
---|---|
date | Mon, 27 Feb 2012 15:06:36 -0800 |
parents | 94ec88ca68e2 |
children | 51612f0c0a79 |
rev | line source |
---|---|
1972 | 1 # |
2426
1d1603768966
7010070: Update all 2010 Oracle-changed OpenJDK files to have the proper copyright dates - second pass
trims
parents:
2199
diff
changeset
|
2 # Copyright (c) 2010, 2011, Oracle and/or its affiliates. All rights reserved. |
1972 | 3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
4 # | |
5 # This code is free software; you can redistribute it and/or modify it | |
6 # under the terms of the GNU General Public License version 2 only, as | |
7 # published by the Free Software Foundation. | |
8 # | |
9 # This code is distributed in the hope that it will be useful, but WITHOUT | |
10 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | |
11 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | |
12 # version 2 for more details (a copy is included in the LICENSE file that | |
13 # accompanied this code). | |
14 # | |
15 # You should have received a copy of the GNU General Public License version | |
16 # 2 along with this work; if not, write to the Free Software Foundation, | |
17 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. | |
18 # | |
19 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA | |
20 # or visit www.oracle.com if you need additional information or have any | |
21 # questions. | |
22 # | |
23 # | |
24 | |
25 set -e | |
26 | |
27 # Note that we currently do not have a way to set HotSpotMksHome in | |
28 # the batch build, but so far this has not seemed to be a problem. The | |
29 # reason this environment variable is necessary is that it seems that | |
30 # Windows truncates very long PATHs when executing shells like MKS's | |
31 # sh, and it has been found that sometimes `which sh` fails. | |
32 | |
33 if [ "x$HotSpotMksHome" != "x" ]; then | |
34 TOOL_DIR="$HotSpotMksHome" | |
35 else | |
36 # HotSpotMksHome is not set so use the directory that contains "sh". | |
37 # This works with both MKS and Cygwin. | |
38 SH=`which sh` | |
39 TOOL_DIR=`dirname "$SH"` | |
40 fi | |
41 | |
42 DIRNAME="$TOOL_DIR/dirname" | |
43 FIND="$TOOL_DIR/find" | |
44 | |
45 TYPE=$1 | |
46 Platform_arch=$2 | |
47 Platform_arch_model=$3 | |
48 Platform_os_family=windows | |
49 Platform_os_arch=windows_$Platform_arch | |
50 | |
51 WorkSpace=$4 | |
52 GENERATED=$5 | |
53 | |
2199
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
54 COMMONSRC_REL=src |
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
55 ALTSRC_REL=src/closed # Change this to pick up alt sources from somewhere else |
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
56 |
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
57 COMMONSRC=${WorkSpace}/${COMMONSRC_REL} |
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
58 ALTSRC=${WorkSpace}/${ALTSRC_REL} |
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
59 |
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
60 BASE_PATHS="`if [ -d ${ALTSRC}/share/vm ]; then $FIND ${ALTSRC}/share/vm ! -name vm -prune -type d \! \( -name adlc -o -name c1 -o -name gc_implementation -o -name opto -o -name shark -o -name libadt \); fi`" |
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
61 BASE_PATHS="${BASE_PATHS} ` $FIND ${COMMONSRC}/share/vm ! -name vm -prune -type d \! \( -name adlc -o -name c1 -o -name gc_implementation -o -name opto -o -name shark -o -name libadt \)`" |
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
62 |
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
63 for sd in \ |
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
64 share/vm/gc_implementation/shared \ |
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
65 os/${Platform_os_family}/vm \ |
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
66 cpu/${Platform_arch}/vm \ |
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
67 os_cpu/${Platform_os_arch}/vm; do |
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
68 if [ -d "${ALTSRC}/${sd}" ]; then |
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
69 BASE_PATHS="${BASE_PATHS} ${ALTSRC}/${sd}" |
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
70 fi |
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
71 BASE_PATHS="${BASE_PATHS} ${COMMONSRC}/${sd}" |
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
72 done |
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
73 |
1972 | 74 BASE_PATHS="${BASE_PATHS} ${GENERATED}/jvmtifiles" |
75 | |
4800
94ec88ca68e2
7115199: Add event tracing hooks and Java Flight Recorder infrastructure
phh
parents:
2426
diff
changeset
|
76 if [ -d "${ALTSRC}/share/vm/jfr" ]; then |
94ec88ca68e2
7115199: Add event tracing hooks and Java Flight Recorder infrastructure
phh
parents:
2426
diff
changeset
|
77 BASE_PATHS="${BASE_PATHS} ${ALTSRC}/share/vm/jfr/agent" |
94ec88ca68e2
7115199: Add event tracing hooks and Java Flight Recorder infrastructure
phh
parents:
2426
diff
changeset
|
78 BASE_PATHS="${BASE_PATHS} ${ALTSRC}/share/vm/jfr/agent/isolated_deps/util" |
94ec88ca68e2
7115199: Add event tracing hooks and Java Flight Recorder infrastructure
phh
parents:
2426
diff
changeset
|
79 BASE_PATHS="${BASE_PATHS} ${ALTSRC}/share/vm/jfr/jvm" |
94ec88ca68e2
7115199: Add event tracing hooks and Java Flight Recorder infrastructure
phh
parents:
2426
diff
changeset
|
80 BASE_PATHS="${BASE_PATHS} ${ALTSRC}/share/vm/jfr" |
94ec88ca68e2
7115199: Add event tracing hooks and Java Flight Recorder infrastructure
phh
parents:
2426
diff
changeset
|
81 fi |
94ec88ca68e2
7115199: Add event tracing hooks and Java Flight Recorder infrastructure
phh
parents:
2426
diff
changeset
|
82 |
1972 | 83 CORE_PATHS="${BASE_PATHS}" |
84 # shared is already in BASE_PATHS. Should add vm/memory but that one is also in BASE_PATHS. | |
2199
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
85 if [ -d "${ALTSRC}/share/vm/gc_implementation" ]; then |
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
86 CORE_PATHS="${CORE_PATHS} `$FIND ${ALTSRC}/share/vm/gc_implementation ! -name gc_implementation -prune -type d \! -name shared`" |
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
87 fi |
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
88 CORE_PATHS="${CORE_PATHS} `$FIND ${COMMONSRC}/share/vm/gc_implementation ! -name gc_implementation -prune -type d \! -name shared`" |
1972 | 89 |
2199
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
90 if [ -d "${ALTSRC}/share/vm/c1" ]; then |
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
91 COMPILER1_PATHS="${ALTSRC}/share/vm/c1" |
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
92 fi |
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
93 COMPILER1_PATHS="${COMPILER1_PATHS} ${COMMONSRC}/share/vm/c1" |
1972 | 94 |
2199
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
95 if [ -d "${ALTSRC}/share/vm/opto" ]; then |
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
96 COMPILER2_PATHS="${ALTSRC}/share/vm/opto" |
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
97 fi |
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
98 COMPILER2_PATHS="${COMPILER2_PATHS} ${COMMONSRC}/share/vm/opto" |
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
99 if [ -d "${ALTSRC}/share/vm/libadt" ]; then |
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
100 COMPILER2_PATHS="${COMPILER2_PATHS} ${ALTSRC}/share/vm/libadt" |
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
101 fi |
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
102 COMPILER2_PATHS="${COMPILER2_PATHS} ${COMMONSRC}/share/vm/libadt" |
1972 | 103 COMPILER2_PATHS="${COMPILER2_PATHS} ${GENERATED}/adfiles" |
104 | |
105 # Include dirs per type. | |
106 case "${TYPE}" in | |
107 "core") Src_Dirs="${CORE_PATHS}" ;; | |
108 "kernel") Src_Dirs="${BASE_PATHS} ${COMPILER1_PATHS}" ;; | |
109 "compiler1") Src_Dirs="${CORE_PATHS} ${COMPILER1_PATHS}" ;; | |
110 "compiler2") Src_Dirs="${CORE_PATHS} ${COMPILER2_PATHS}" ;; | |
111 "tiered") Src_Dirs="${CORE_PATHS} ${COMPILER1_PATHS} ${COMPILER2_PATHS}" ;; | |
112 "zero") Src_Dirs="${CORE_PATHS}" ;; | |
113 "shark") Src_Dirs="${CORE_PATHS}" ;; | |
114 esac | |
115 | |
116 COMPILER2_SPECIFIC_FILES="opto libadt bcEscapeAnalyzer.cpp chaitin* c2_* runtime_*" | |
117 COMPILER1_SPECIFIC_FILES="c1_*" | |
118 SHARK_SPECIFIC_FILES="shark" | |
119 ZERO_SPECIFIC_FILES="zero" | |
120 | |
121 # These files need to be excluded when building the kernel target. | |
122 KERNEL_EXCLUDED_FILES="attachListener.cpp attachListener_windows.cpp dump.cpp dump_${Platform_arch_model}.cpp forte.cpp fprofiler.cpp heapDumper.cpp heapInspection.cpp jniCheck.cpp jvmtiCodeBlobEvents.cpp jvmtiExtensions.cpp jvmtiImpl.cpp jvmtiRawMonitor.cpp jvmtiTagMap.cpp jvmtiTrace.cpp restore.cpp serialize.cpp vmStructs.cpp g1MemoryPool.cpp psMemoryPool.cpp gcAdaptivePolicyCounters.cpp concurrentGCThread.cpp mutableNUMASpace.cpp allocationStats.cpp gSpaceCounters.cpp immutableSpace.cpp mutableSpace.cpp spaceCounters.cpp yieldingWorkgroup.cpp" | |
123 | |
124 # Always exclude these. | |
125 Src_Files_EXCLUDE="jsig.c jvmtiEnvRecommended.cpp jvmtiEnvStub.cpp" | |
126 | |
127 # Exclude per type. | |
128 case "${TYPE}" in | |
129 "core") Src_Files_EXCLUDE="${Src_Files_EXCLUDE} ${COMPILER1_SPECIFIC_FILES} ${COMPILER2_SPECIFIC_FILES} ${ZERO_SPECIFIC_FILES} ${SHARK_SPECIFIC_FILES} ciTypeFlow.cpp" ;; | |
130 "kernel") Src_Files_EXCLUDE="${Src_Files_EXCLUDE} ${COMPILER2_SPECIFIC_FILES} ${ZERO_SPECIFIC_FILES} ${SHARK_SPECIFIC_FILES} ${KERNEL_EXCLUDED_FILES} ciTypeFlow.cpp" ;; | |
131 "compiler1") Src_Files_EXCLUDE="${Src_Files_EXCLUDE} ${COMPILER2_SPECIFIC_FILES} ${ZERO_SPECIFIC_FILES} ${SHARK_SPECIFIC_FILES} ciTypeFlow.cpp" ;; | |
132 "compiler2") Src_Files_EXCLUDE="${Src_Files_EXCLUDE} ${COMPILER1_SPECIFIC_FILES} ${ZERO_SPECIFIC_FILES} ${SHARK_SPECIFIC_FILES}" ;; | |
133 "tiered") Src_Files_EXCLUDE="${Src_Files_EXCLUDE} ${ZERO_SPECIFIC_FILES} ${SHARK_SPECIFIC_FILES}" ;; | |
134 "zero") Src_Files_EXCLUDE="${Src_Files_EXCLUDE} ${COMPILER1_SPECIFIC_FILES} ${COMPILER2_SPECIFIC_FILES} ${SHARK_SPECIFIC_FILES} ciTypeFlow.cpp" ;; | |
135 "shark") Src_Files_EXCLUDE="${Src_Files_EXCLUDE} ${COMPILER1_SPECIFIC_FILES} ${COMPILER2_SPECIFIC_FILES} ${ZERO_SPECIFIC_FILES}" ;; | |
136 esac | |
137 | |
138 # Special handling of arch model. | |
139 case "${Platform_arch_model}" in | |
140 "x86_32") Src_Files_EXCLUDE="${Src_Files_EXCLUDE} *x86_64*" ;; | |
141 "x86_64") Src_Files_EXCLUDE="${Src_Files_EXCLUDE} *x86_32*" ;; | |
142 esac | |
143 | |
2026
e7ad5f6f4d29
7006659: temporary adlc files are added to the build variables
stefank
parents:
1972
diff
changeset
|
144 # Locate all source files in the given directory, excluding files in Src_Files_EXCLUDE. |
1972 | 145 function findsrc { |
2026
e7ad5f6f4d29
7006659: temporary adlc files are added to the build variables
stefank
parents:
1972
diff
changeset
|
146 $FIND ${1}/. ! -name . -prune \ |
e7ad5f6f4d29
7006659: temporary adlc files are added to the build variables
stefank
parents:
1972
diff
changeset
|
147 -a \( -name \*.c -o -name \*.cpp -o -name \*.s \) \ |
e7ad5f6f4d29
7006659: temporary adlc files are added to the build variables
stefank
parents:
1972
diff
changeset
|
148 -a \! \( -name ${Src_Files_EXCLUDE// / -o -name } \) \ |
e7ad5f6f4d29
7006659: temporary adlc files are added to the build variables
stefank
parents:
1972
diff
changeset
|
149 | sed 's/.*\/\(.*\)/\1/'; |
1972 | 150 } |
151 | |
152 Src_Files= | |
153 for e in ${Src_Dirs}; do | |
154 Src_Files="${Src_Files}`findsrc ${e}` " | |
155 done | |
156 | |
157 Obj_Files= | |
158 for e in ${Src_Files}; do | |
159 Obj_Files="${Obj_Files}${e%\.[!.]*}.obj " | |
160 done | |
161 | |
162 echo Obj_Files=${Obj_Files} |