Mercurial > hg > graal-compiler
annotate make/windows/create_obj_files.sh @ 8017:412d722168bc hs25-b18
Merge
author | amurillo |
---|---|
date | Fri, 08 Feb 2013 08:07:06 -0800 |
parents | 8b46b0196eb0 |
children | 8373c19be854 |
rev | line source |
---|---|
1972 | 1 # |
7951 | 2 # Copyright (c) 2010, 2013, 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 |
5978
51612f0c0a79
7148488: Whitebox tests for the Diagnostic Framework Parser
nloodin
parents:
4800
diff
changeset
|
83 BASE_PATHS="${BASE_PATHS} ${COMMONSRC}/share/vm/prims/wbtestmethods" |
51612f0c0a79
7148488: Whitebox tests for the Diagnostic Framework Parser
nloodin
parents:
4800
diff
changeset
|
84 |
1972 | 85 CORE_PATHS="${BASE_PATHS}" |
86 # 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
|
87 if [ -d "${ALTSRC}/share/vm/gc_implementation" ]; then |
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
88 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
|
89 fi |
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
90 CORE_PATHS="${CORE_PATHS} `$FIND ${COMMONSRC}/share/vm/gc_implementation ! -name gc_implementation -prune -type d \! -name shared`" |
1972 | 91 |
2199
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
92 if [ -d "${ALTSRC}/share/vm/c1" ]; then |
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
93 COMPILER1_PATHS="${ALTSRC}/share/vm/c1" |
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
94 fi |
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
95 COMPILER1_PATHS="${COMPILER1_PATHS} ${COMMONSRC}/share/vm/c1" |
1972 | 96 |
2199
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
97 if [ -d "${ALTSRC}/share/vm/opto" ]; then |
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
98 COMPILER2_PATHS="${ALTSRC}/share/vm/opto" |
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
99 fi |
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
100 COMPILER2_PATHS="${COMPILER2_PATHS} ${COMMONSRC}/share/vm/opto" |
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
101 if [ -d "${ALTSRC}/share/vm/libadt" ]; then |
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
102 COMPILER2_PATHS="${COMPILER2_PATHS} ${ALTSRC}/share/vm/libadt" |
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
103 fi |
d8a72fbc4be7
7003401: Implement VM error-reporting functionality on erroneous termination
kamg
parents:
2026
diff
changeset
|
104 COMPILER2_PATHS="${COMPILER2_PATHS} ${COMMONSRC}/share/vm/libadt" |
1972 | 105 COMPILER2_PATHS="${COMPILER2_PATHS} ${GENERATED}/adfiles" |
106 | |
107 # Include dirs per type. | |
108 case "${TYPE}" in | |
109 "core") Src_Dirs="${CORE_PATHS}" ;; | |
110 "compiler1") Src_Dirs="${CORE_PATHS} ${COMPILER1_PATHS}" ;; | |
111 "compiler2") Src_Dirs="${CORE_PATHS} ${COMPILER2_PATHS}" ;; | |
112 "tiered") Src_Dirs="${CORE_PATHS} ${COMPILER1_PATHS} ${COMPILER2_PATHS}" ;; | |
113 "zero") Src_Dirs="${CORE_PATHS}" ;; | |
114 "shark") Src_Dirs="${CORE_PATHS}" ;; | |
115 esac | |
116 | |
117 COMPILER2_SPECIFIC_FILES="opto libadt bcEscapeAnalyzer.cpp chaitin* c2_* runtime_*" | |
118 COMPILER1_SPECIFIC_FILES="c1_*" | |
119 SHARK_SPECIFIC_FILES="shark" | |
120 ZERO_SPECIFIC_FILES="zero" | |
121 | |
122 # Always exclude these. | |
123 Src_Files_EXCLUDE="jsig.c jvmtiEnvRecommended.cpp jvmtiEnvStub.cpp" | |
124 | |
125 # Exclude per type. | |
126 case "${TYPE}" in | |
127 "core") Src_Files_EXCLUDE="${Src_Files_EXCLUDE} ${COMPILER1_SPECIFIC_FILES} ${COMPILER2_SPECIFIC_FILES} ${ZERO_SPECIFIC_FILES} ${SHARK_SPECIFIC_FILES} ciTypeFlow.cpp" ;; | |
128 "compiler1") Src_Files_EXCLUDE="${Src_Files_EXCLUDE} ${COMPILER2_SPECIFIC_FILES} ${ZERO_SPECIFIC_FILES} ${SHARK_SPECIFIC_FILES} ciTypeFlow.cpp" ;; | |
129 "compiler2") Src_Files_EXCLUDE="${Src_Files_EXCLUDE} ${COMPILER1_SPECIFIC_FILES} ${ZERO_SPECIFIC_FILES} ${SHARK_SPECIFIC_FILES}" ;; | |
130 "tiered") Src_Files_EXCLUDE="${Src_Files_EXCLUDE} ${ZERO_SPECIFIC_FILES} ${SHARK_SPECIFIC_FILES}" ;; | |
131 "zero") Src_Files_EXCLUDE="${Src_Files_EXCLUDE} ${COMPILER1_SPECIFIC_FILES} ${COMPILER2_SPECIFIC_FILES} ${SHARK_SPECIFIC_FILES} ciTypeFlow.cpp" ;; | |
132 "shark") Src_Files_EXCLUDE="${Src_Files_EXCLUDE} ${COMPILER1_SPECIFIC_FILES} ${COMPILER2_SPECIFIC_FILES} ${ZERO_SPECIFIC_FILES}" ;; | |
133 esac | |
134 | |
135 # Special handling of arch model. | |
136 case "${Platform_arch_model}" in | |
137 "x86_32") Src_Files_EXCLUDE="${Src_Files_EXCLUDE} *x86_64*" ;; | |
138 "x86_64") Src_Files_EXCLUDE="${Src_Files_EXCLUDE} *x86_32*" ;; | |
139 esac | |
140 | |
2026
e7ad5f6f4d29
7006659: temporary adlc files are added to the build variables
stefank
parents:
1972
diff
changeset
|
141 # Locate all source files in the given directory, excluding files in Src_Files_EXCLUDE. |
1972 | 142 function findsrc { |
2026
e7ad5f6f4d29
7006659: temporary adlc files are added to the build variables
stefank
parents:
1972
diff
changeset
|
143 $FIND ${1}/. ! -name . -prune \ |
e7ad5f6f4d29
7006659: temporary adlc files are added to the build variables
stefank
parents:
1972
diff
changeset
|
144 -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
|
145 -a \! \( -name ${Src_Files_EXCLUDE// / -o -name } \) \ |
e7ad5f6f4d29
7006659: temporary adlc files are added to the build variables
stefank
parents:
1972
diff
changeset
|
146 | sed 's/.*\/\(.*\)/\1/'; |
1972 | 147 } |
148 | |
149 Src_Files= | |
150 for e in ${Src_Dirs}; do | |
151 Src_Files="${Src_Files}`findsrc ${e}` " | |
152 done | |
153 | |
154 Obj_Files= | |
155 for e in ${Src_Files}; do | |
156 Obj_Files="${Obj_Files}${e%\.[!.]*}.obj " | |
157 done | |
158 | |
159 echo Obj_Files=${Obj_Files} |