Mercurial > hg > truffle
annotate make/windows/makefiles/sa.make @ 7267:a4b84ba6dc2e
Introduction of the Truffle API for efficient implementation of dynamic languages on top of the Graal VM. New projects com.oracle.truffle.api for the API definition and com.oracle.truffle.api.test for API tests and documentation.
author | Thomas Wuerthinger <thomas.wuerthinger@oracle.com> |
---|---|
date | Tue, 18 Dec 2012 15:33:55 +0100 |
parents | 5a98bf7d847b |
children | febab3a8f203 7638e35cabc6 |
rev | line source |
---|---|
0 | 1 # |
6020
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
4891
diff
changeset
|
2 # Copyright (c) 2003, 2012, Oracle and/or its affiliates. All rights reserved. |
0 | 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 # | |
1552
c18cbe5936b8
6941466: Oracle rebranding changes for Hotspot repositories
trims
parents:
971
diff
changeset
|
19 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA |
c18cbe5936b8
6941466: Oracle rebranding changes for Hotspot repositories
trims
parents:
971
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:
971
diff
changeset
|
21 # questions. |
0 | 22 # |
23 # | |
24 | |
25 # This makefile is used to build Serviceability Agent code | |
26 # and generate JNI header file for native methods. | |
27 | |
28 AGENT_DIR = $(WorkSpace)/agent | |
29 checkAndBuildSA:: | |
30 | |
31 !if "$(BUILD_WIN_SA)" != "1" | |
32 # Already warned about this in build.make | |
33 !else | |
34 | |
35 # This first part is used to build sa-jdi.jar | |
91
a294fd0c4b38
6583644: Move all managed/SCCS files out of 'build' into 'make' directory
kamg
parents:
0
diff
changeset
|
36 !include $(WorkSpace)/make/windows/makefiles/rules.make |
a294fd0c4b38
6583644: Move all managed/SCCS files out of 'build' into 'make' directory
kamg
parents:
0
diff
changeset
|
37 !include $(WorkSpace)/make/sa.files |
0 | 38 |
6603 | 39 GENERATED = ../generated |
0 | 40 |
41 # tools.jar is needed by the JDI - SA binding | |
6603 | 42 SA_CLASSPATH = $(BOOT_JAVA_HOME)/lib/tools.jar |
0 | 43 |
6603 | 44 SA_CLASSDIR = $(GENERATED)/saclasses |
0 | 45 |
46 SA_BUILD_VERSION_PROP = sun.jvm.hotspot.runtime.VM.saBuildVersion=$(SA_BUILD_VERSION) | |
47 | |
6603 | 48 SA_PROPERTIES = $(SA_CLASSDIR)/sa.properties |
0 | 49 |
6603 | 50 default:: $(GENERATED)/sa-jdi.jar |
0 | 51 |
456
b6272ef4a18f
6743339: Enable building sa-jdi.jar and sawindbg.dll on Windows with hotspot build
poonam
parents:
427
diff
changeset
|
52 # Remove the space between $(SA_BUILD_VERSION_PROP) and > below as it adds a white space |
b6272ef4a18f
6743339: Enable building sa-jdi.jar and sawindbg.dll on Windows with hotspot build
poonam
parents:
427
diff
changeset
|
53 # at the end of SA version string and causes a version mismatch with the target VM version. |
b6272ef4a18f
6743339: Enable building sa-jdi.jar and sawindbg.dll on Windows with hotspot build
poonam
parents:
427
diff
changeset
|
54 |
6603 | 55 $(GENERATED)/sa-jdi.jar: $(AGENT_FILES) |
56 $(QUIETLY) mkdir -p $(SA_CLASSDIR) | |
57 @echo ...Building sa-jdi.jar into $(SA_CLASSDIR) | |
2471
37be97a58393
7010849: 5/5 Extraneous javac source/target options when building sa-jdi
andrew
parents:
1552
diff
changeset
|
58 @echo ...$(COMPILE_JAVAC) -classpath $(SA_CLASSPATH) -d $(SA_CLASSDIR) .... |
6603 | 59 @$(COMPILE_JAVAC) -classpath $(SA_CLASSPATH) -sourcepath $(AGENT_SRC_DIR) -d $(SA_CLASSDIR) $(AGENT_FILES) |
0 | 60 $(COMPILE_RMIC) -classpath $(SA_CLASSDIR) -d $(SA_CLASSDIR) sun.jvm.hotspot.debugger.remote.RemoteDebuggerServer |
456
b6272ef4a18f
6743339: Enable building sa-jdi.jar and sawindbg.dll on Windows with hotspot build
poonam
parents:
427
diff
changeset
|
61 $(QUIETLY) echo $(SA_BUILD_VERSION_PROP)> $(SA_PROPERTIES) |
311 | 62 $(QUIETLY) rm -f $(SA_CLASSDIR)/sun/jvm/hotspot/utilities/soql/sa.js |
63 $(QUIETLY) cp $(AGENT_SRC_DIR)/sun/jvm/hotspot/utilities/soql/sa.js $(SA_CLASSDIR)/sun/jvm/hotspot/utilities/soql | |
456
b6272ef4a18f
6743339: Enable building sa-jdi.jar and sawindbg.dll on Windows with hotspot build
poonam
parents:
427
diff
changeset
|
64 $(QUIETLY) rm -rf $(SA_CLASSDIR)/sun/jvm/hotspot/ui/resources |
6603 | 65 $(QUIETLY) mkdir $(SA_CLASSDIR)/sun/jvm/hotspot/ui/resources |
456
b6272ef4a18f
6743339: Enable building sa-jdi.jar and sawindbg.dll on Windows with hotspot build
poonam
parents:
427
diff
changeset
|
66 $(QUIETLY) cp $(AGENT_SRC_DIR)/sun/jvm/hotspot/ui/resources/*.png $(SA_CLASSDIR)/sun/jvm/hotspot/ui/resources |
b6272ef4a18f
6743339: Enable building sa-jdi.jar and sawindbg.dll on Windows with hotspot build
poonam
parents:
427
diff
changeset
|
67 $(QUIETLY) cp -r $(AGENT_SRC_DIR)/images/* $(SA_CLASSDIR) |
3846 | 68 $(RUN_JAR) cf $@ -C $(SA_CLASSDIR) . |
6603 | 69 $(RUN_JAR) uf $@ -C $(AGENT_SRC_DIR) META-INF/services/com.sun.jdi.connect.Connector |
0 | 70 $(RUN_JAVAH) -classpath $(SA_CLASSDIR) -jni sun.jvm.hotspot.debugger.windbg.WindbgDebuggerLocal |
71 $(RUN_JAVAH) -classpath $(SA_CLASSDIR) -jni sun.jvm.hotspot.debugger.x86.X86ThreadContext | |
72 $(RUN_JAVAH) -classpath $(SA_CLASSDIR) -jni sun.jvm.hotspot.debugger.amd64.AMD64ThreadContext | |
6782 | 73 $(RUN_JAVAH) -classpath $(SA_CLASSDIR) -jni sun.jvm.hotspot.asm.Disassembler |
0 | 74 |
75 | |
76 | |
77 # This second part is used to build sawindbg.dll | |
78 # We currently build it the same way for product, debug, and fastdebug. | |
79 | |
80 SAWINDBG=sawindbg.dll | |
81 | |
82 checkAndBuildSA:: $(SAWINDBG) | |
83 | |
84 # These do not need to be optimized (don't run a lot of code) and it | |
85 # will be useful to have the assertion checks in place | |
86 | |
87 !if "$(BUILDARCH)" == "ia64" | |
6603 | 88 SA_CFLAGS = -nologo $(MS_RUNTIME_OPTION) -W3 $(GX_OPTION) -Od -D "WIN32" -D "WIN64" -D "_WINDOWS" -D "_DEBUG" -D "_CONSOLE" -D "_MBCS" -YX -FD -c |
0 | 89 !elseif "$(BUILDARCH)" == "amd64" |
6603 | 90 SA_CFLAGS = -nologo $(MS_RUNTIME_OPTION) -W3 $(GX_OPTION) -Od -D "WIN32" -D "WIN64" -D "_WINDOWS" -D "_DEBUG" -D "_CONSOLE" -D "_MBCS" -YX -FD -c |
645
c3a720eefe82
6816308: Changes to allow builds with latest Windows SDK 6.1 on 64bit Windows 2003
kvn
parents:
456
diff
changeset
|
91 !if "$(COMPILER_NAME)" == "VS2005" |
0 | 92 # On amd64, VS2005 compiler requires bufferoverflowU.lib on the link command line, |
93 # otherwise we get missing __security_check_cookie externals at link time. | |
4891
719f7007c8e8
7141242: build-infra merge: Rename CPP->CXX and LINK->LD
erikj
parents:
3963
diff
changeset
|
94 SA_LD_FLAGS = bufferoverflowU.lib |
645
c3a720eefe82
6816308: Changes to allow builds with latest Windows SDK 6.1 on 64bit Windows 2003
kvn
parents:
456
diff
changeset
|
95 !endif |
0 | 96 !else |
6603 | 97 SA_CFLAGS = -nologo $(MS_RUNTIME_OPTION) -W3 -Gm $(GX_OPTION) -Od -D "WIN32" -D "_WINDOWS" -D "_DEBUG" -D "_CONSOLE" -D "_MBCS" -YX -FD -GZ -c |
6020
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
4891
diff
changeset
|
98 !if "$(ENABLE_FULL_DEBUG_SYMBOLS)" == "1" |
6603 | 99 SA_CFLAGS = $(SA_CFLAGS) -ZI |
6020
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
4891
diff
changeset
|
100 !endif |
0 | 101 !endif |
427
3c07cda72b7d
6764892: VS2008 changes required to compile hotspot sources
tbell
parents:
311
diff
changeset
|
102 !if "$(MT)" != "" |
6603 | 103 SA_LD_FLAGS = -manifest $(SA_LD_FLAGS) |
427
3c07cda72b7d
6764892: VS2008 changes required to compile hotspot sources
tbell
parents:
311
diff
changeset
|
104 !endif |
0 | 105 SASRCFILE = $(AGENT_DIR)/src/os/win32/windbg/sawindbg.cpp |
6603 | 106 SA_LFLAGS = $(SA_LD_FLAGS) -nologo -subsystem:console -machine:$(MACHINE) |
6020
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
4891
diff
changeset
|
107 !if "$(ENABLE_FULL_DEBUG_SYMBOLS)" == "1" |
6603 | 108 SA_LFLAGS = $(SA_LFLAGS) -map -debug |
6020
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
4891
diff
changeset
|
109 !endif |
0 | 110 |
111 # Note that we do not keep sawindbj.obj around as it would then | |
112 # get included in the dumpbin command in build_vm_def.sh | |
113 | |
427
3c07cda72b7d
6764892: VS2008 changes required to compile hotspot sources
tbell
parents:
311
diff
changeset
|
114 # In VS2005 or VS2008 the link command creates a .manifest file that we want |
3c07cda72b7d
6764892: VS2008 changes required to compile hotspot sources
tbell
parents:
311
diff
changeset
|
115 # to insert into the linked artifact so we do not need to track it separately. |
3c07cda72b7d
6764892: VS2008 changes required to compile hotspot sources
tbell
parents:
311
diff
changeset
|
116 # Use ";#2" for .dll and ";#1" for .exe in the MT command below: |
0 | 117 $(SAWINDBG): $(SASRCFILE) |
118 set INCLUDE=$(SA_INCLUDE)$(INCLUDE) | |
4891
719f7007c8e8
7141242: build-infra merge: Rename CPP->CXX and LINK->LD
erikj
parents:
3963
diff
changeset
|
119 $(CXX) @<< |
6603 | 120 -I"$(BootStrapDir)/include" -I"$(BootStrapDir)/include/win32" |
121 -I"$(GENERATED)" $(SA_CFLAGS) | |
0 | 122 $(SASRCFILE) |
6603 | 123 -out:$*.obj |
0 | 124 << |
125 set LIB=$(SA_LIB)$(LIB) | |
6603 | 126 $(LD) -out:$@ -DLL $*.obj dbgeng.lib $(SA_LFLAGS) |
427
3c07cda72b7d
6764892: VS2008 changes required to compile hotspot sources
tbell
parents:
311
diff
changeset
|
127 !if "$(MT)" != "" |
6603 | 128 $(MT) -manifest $(@F).manifest -outputresource:$(@F);#2 |
427
3c07cda72b7d
6764892: VS2008 changes required to compile hotspot sources
tbell
parents:
311
diff
changeset
|
129 !endif |
6020
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
4891
diff
changeset
|
130 !if "$(ENABLE_FULL_DEBUG_SYMBOLS)" == "1" |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
4891
diff
changeset
|
131 !if "$(ZIP_DEBUGINFO_FILES)" == "1" |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
4891
diff
changeset
|
132 $(ZIPEXE) -q $*.diz $*.map $*.pdb |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
4891
diff
changeset
|
133 $(RM) $*.map $*.pdb |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
4891
diff
changeset
|
134 !endif |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
4891
diff
changeset
|
135 !endif |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
4891
diff
changeset
|
136 -@rm -f $*.obj |
0 | 137 |
138 cleanall : | |
6603 | 139 rm -rf $(GENERATED)/saclasses |
140 rm -rf $(GENERATED)/sa-jdi.jar | |
0 | 141 !endif |