Mercurial > hg > truffle
annotate make/linux/makefiles/sparcWorks.make @ 5003:5e6f1026a63e
fixes to vtable stub inlining: compute offset on demand, look out for interface methods
author | Lukas Stadler <lukas.stadler@jku.at> |
---|---|
date | Thu, 01 Mar 2012 15:36:35 +0100 |
parents | 719f7007c8e8 |
children | 7292cff45988 |
rev | line source |
---|---|
50
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
1 # |
2426
1d1603768966
7010070: Update all 2010 Oracle-changed OpenJDK files to have the proper copyright dates - second pass
trims
parents:
2401
diff
changeset
|
2 # Copyright (c) 1999, 2011, Oracle and/or its affiliates. All rights reserved. |
50
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
4 # |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
5 # This code is free software; you can redistribute it and/or modify it |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
6 # under the terms of the GNU General Public License version 2 only, as |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
7 # published by the Free Software Foundation. |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
8 # |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
9 # This code is distributed in the hope that it will be useful, but WITHOUT |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
10 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
11 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
12 # version 2 for more details (a copy is included in the LICENSE file that |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
13 # accompanied this code). |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
14 # |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
15 # You should have received a copy of the GNU General Public License version |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
16 # 2 along with this work; if not, write to the Free Software Foundation, |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
17 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
18 # |
1552
c18cbe5936b8
6941466: Oracle rebranding changes for Hotspot repositories
trims
parents:
196
diff
changeset
|
19 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA |
c18cbe5936b8
6941466: Oracle rebranding changes for Hotspot repositories
trims
parents:
196
diff
changeset
|
20 # or visit www.oracle.com if you need additional information or have any |
c18cbe5936b8
6941466: Oracle rebranding changes for Hotspot repositories
trims
parents:
196
diff
changeset
|
21 # questions. |
50
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
22 # |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
23 # |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
24 |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
25 #------------------------------------------------------------------------ |
4891
719f7007c8e8
7141242: build-infra merge: Rename CPP->CXX and LINK->LD
erikj
parents:
2426
diff
changeset
|
26 # CC, CXX & AS |
50
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
27 |
4891
719f7007c8e8
7141242: build-infra merge: Rename CPP->CXX and LINK->LD
erikj
parents:
2426
diff
changeset
|
28 CXX = CC |
50
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
29 CC = cc |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
30 AS = $(CC) -c |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
31 |
4891
719f7007c8e8
7141242: build-infra merge: Rename CPP->CXX and LINK->LD
erikj
parents:
2426
diff
changeset
|
32 HOSTCXX = $(CXX) |
2401
7e88bdae86ec
7029017: Additional architecture support for c2 compiler
roland
parents:
2042
diff
changeset
|
33 HOSTCC = $(CC) |
7e88bdae86ec
7029017: Additional architecture support for c2 compiler
roland
parents:
2042
diff
changeset
|
34 |
50
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
35 ARCHFLAG = $(ARCHFLAG/$(BUILDARCH)) |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
36 ARCHFLAG/i486 = -m32 |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
37 ARCHFLAG/amd64 = -m64 |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
38 |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
39 CFLAGS += $(ARCHFLAG) |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
40 AOUT_FLAGS += $(ARCHFLAG) |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
41 LFLAGS += $(ARCHFLAG) |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
42 ASFLAGS += $(ARCHFLAG) |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
43 |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
44 #------------------------------------------------------------------------ |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
45 # Compiler flags |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
46 |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
47 # position-independent code |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
48 PICFLAG = -KPIC |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
49 |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
50 CFLAGS += $(PICFLAG) |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
51 # no more exceptions |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
52 CFLAGS += -features=no%except |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
53 # Reduce code bloat by reverting back to 5.0 behavior for static initializers |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
54 CFLAGS += -features=no%split_init |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
55 # allow zero sized arrays |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
56 CFLAGS += -features=zla |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
57 |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
58 # Use C++ Interpreter |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
59 ifdef CC_INTERP |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
60 CFLAGS += -DCC_INTERP |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
61 endif |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
62 |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
63 # We don't need libCstd.so and librwtools7.so, only libCrun.so |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
64 CFLAGS += -library=Crun |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
65 LIBS += -lCrun |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
66 |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
67 CFLAGS += -mt |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
68 LFLAGS += -mt |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
69 |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
70 # Compiler warnings are treated as errors |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
71 #WARNINGS_ARE_ERRORS = -errwarn=%all |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
72 CFLAGS_WARN/DEFAULT = $(WARNINGS_ARE_ERRORS) |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
73 # Special cases |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
74 CFLAGS_WARN/BYFILE = $(CFLAGS_WARN/$@)$(CFLAGS_WARN/DEFAULT$(CFLAGS_WARN/$@)) |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
75 |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
76 # The flags to use for an Optimized build |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
77 OPT_CFLAGS+=-xO4 |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
78 OPT_CFLAGS/NOOPT=-xO0 |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
79 |
1972 | 80 # Flags for creating the dependency files. |
81 ifeq ($(shell expr $(COMPILER_REV_NUMERIC) \>= 509), 1) | |
82 DEPFLAGS = -xMMD -xMF $(DEP_DIR)/$(@:%=%.d) | |
83 endif | |
84 | |
1983
c760f78e0a53
7003125: precompiled.hpp is included when precompiled headers are not used
stefank
parents:
1972
diff
changeset
|
85 # -DDONT_USE_PRECOMPILED_HEADER will exclude all includes in precompiled.hpp. |
c760f78e0a53
7003125: precompiled.hpp is included when precompiled headers are not used
stefank
parents:
1972
diff
changeset
|
86 CFLAGS += -DDONT_USE_PRECOMPILED_HEADER |
c760f78e0a53
7003125: precompiled.hpp is included when precompiled headers are not used
stefank
parents:
1972
diff
changeset
|
87 |
50
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
88 #------------------------------------------------------------------------ |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
89 # Linker flags |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
90 |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
91 # Use $(MAPFLAG:FILENAME=real_file_name) to specify a map file. |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
92 MAPFLAG = -Wl,--version-script=FILENAME |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
93 |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
94 # Use $(SONAMEFLAG:SONAME=soname) to specify the intrinsic name of a shared obj |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
95 SONAMEFLAG = -h SONAME |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
96 |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
97 # Build shared library |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
98 SHARED_FLAG = -G |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
99 |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
100 #------------------------------------------------------------------------ |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
101 # Debug flags |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
102 DEBUG_CFLAGS += -g |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
103 FASTDEBUG_CFLAGS = -g0 |
485d403e94e1
6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents:
diff
changeset
|
104 |