66 -a "$(SRCARCH)" != "ppc" \ |
66 -a "$(SRCARCH)" != "ppc" \ |
67 -a "$(SRCARCH)" != "zero" ] ; then \ |
67 -a "$(SRCARCH)" != "zero" ] ; then \ |
68 $(MAKE) -f sa.make $(GENERATED)/sa-jdi.jar; \ |
68 $(MAKE) -f sa.make $(GENERATED)/sa-jdi.jar; \ |
69 fi |
69 fi |
70 |
70 |
71 $(GENERATED)/sa-jdi.jar: $(AGENT_FILES1) $(AGENT_FILES2) agent_files_preclean |
71 $(GENERATED)/sa-jdi.jar: $(AGENT_FILES1) $(AGENT_FILES2) |
72 $(QUIETLY) echo "Making $@" |
72 $(QUIETLY) echo "Making $@" |
73 $(QUIETLY) if [ "$(BOOT_JAVA_HOME)" = "" ]; then \ |
73 $(QUIETLY) if [ "$(BOOT_JAVA_HOME)" = "" ]; then \ |
74 echo "ALT_BOOTDIR, BOOTDIR or JAVA_HOME needs to be defined to build SA"; \ |
74 echo "ALT_BOOTDIR, BOOTDIR or JAVA_HOME needs to be defined to build SA"; \ |
75 exit 1; \ |
75 exit 1; \ |
76 fi |
76 fi |
81 fi |
81 fi |
82 $(QUIETLY) if [ ! -d $(SA_CLASSDIR) ] ; then \ |
82 $(QUIETLY) if [ ! -d $(SA_CLASSDIR) ] ; then \ |
83 mkdir -p $(SA_CLASSDIR); \ |
83 mkdir -p $(SA_CLASSDIR); \ |
84 fi |
84 fi |
85 |
85 |
|
86 # Note: When indented, make tries to execute the '$(shell' comment. |
|
87 # In some environments, cmd processors have limited line length. |
|
88 # To prevent the javac invocation in the next block from using |
|
89 # a very long cmd line, we use javac's @file-list option. We |
|
90 # generate the file lists using make's built-in 'foreach' control |
|
91 # flow which also avoids cmd processor line length issues. Since |
|
92 # the 'foreach' is done as part of make's macro expansion phase, |
|
93 # the initialization of the lists is also done in the same phase |
|
94 # using '$(shell rm ...' instead of using the more traditional |
|
95 # 'rm ...' rule. |
|
96 $(shell rm -rf $(AGENT_FILES1_LIST) $(AGENT_FILES2_LIST)) |
86 $(foreach file,$(AGENT_FILES1),$(shell echo $(file) >> $(AGENT_FILES1_LIST))) |
97 $(foreach file,$(AGENT_FILES1),$(shell echo $(file) >> $(AGENT_FILES1_LIST))) |
87 $(foreach file,$(AGENT_FILES2),$(shell echo $(file) >> $(AGENT_FILES2_LIST))) |
98 $(foreach file,$(AGENT_FILES2),$(shell echo $(file) >> $(AGENT_FILES2_LIST))) |
88 |
99 |
89 $(QUIETLY) $(REMOTE) $(COMPILE.JAVAC) -source 1.4 -target 1.4 -classpath $(SA_CLASSPATH) -sourcepath $(AGENT_SRC_DIR) -d $(SA_CLASSDIR) @$(AGENT_FILES1_LIST) |
100 $(QUIETLY) $(REMOTE) $(COMPILE.JAVAC) -source 1.4 -target 1.4 -classpath $(SA_CLASSPATH) -sourcepath $(AGENT_SRC_DIR) -d $(SA_CLASSDIR) @$(AGENT_FILES1_LIST) |
90 $(QUIETLY) $(REMOTE) $(COMPILE.JAVAC) -source 1.4 -target 1.4 -classpath $(SA_CLASSPATH) -sourcepath $(AGENT_SRC_DIR) -d $(SA_CLASSDIR) @$(AGENT_FILES2_LIST) |
101 $(QUIETLY) $(REMOTE) $(COMPILE.JAVAC) -source 1.4 -target 1.4 -classpath $(SA_CLASSPATH) -sourcepath $(AGENT_SRC_DIR) -d $(SA_CLASSDIR) @$(AGENT_FILES2_LIST) |
102 $(QUIETLY) $(REMOTE) $(RUN.JAVAH) -classpath $(SA_CLASSDIR) -d $(GENERATED) -jni sun.jvm.hotspot.debugger.x86.X86ThreadContext |
113 $(QUIETLY) $(REMOTE) $(RUN.JAVAH) -classpath $(SA_CLASSDIR) -d $(GENERATED) -jni sun.jvm.hotspot.debugger.x86.X86ThreadContext |
103 $(QUIETLY) $(REMOTE) $(RUN.JAVAH) -classpath $(SA_CLASSDIR) -d $(GENERATED) -jni sun.jvm.hotspot.debugger.ia64.IA64ThreadContext |
114 $(QUIETLY) $(REMOTE) $(RUN.JAVAH) -classpath $(SA_CLASSDIR) -d $(GENERATED) -jni sun.jvm.hotspot.debugger.ia64.IA64ThreadContext |
104 $(QUIETLY) $(REMOTE) $(RUN.JAVAH) -classpath $(SA_CLASSDIR) -d $(GENERATED) -jni sun.jvm.hotspot.debugger.amd64.AMD64ThreadContext |
115 $(QUIETLY) $(REMOTE) $(RUN.JAVAH) -classpath $(SA_CLASSDIR) -d $(GENERATED) -jni sun.jvm.hotspot.debugger.amd64.AMD64ThreadContext |
105 $(QUIETLY) $(REMOTE) $(RUN.JAVAH) -classpath $(SA_CLASSDIR) -d $(GENERATED) -jni sun.jvm.hotspot.debugger.sparc.SPARCThreadContext |
116 $(QUIETLY) $(REMOTE) $(RUN.JAVAH) -classpath $(SA_CLASSDIR) -d $(GENERATED) -jni sun.jvm.hotspot.debugger.sparc.SPARCThreadContext |
106 |
117 |
107 agent_files_preclean: |
|
108 rm -rf $(AGENT_FILES1_LIST) $(AGENT_FILES2_LIST) |
|
109 |
|
110 clean: |
118 clean: |
111 rm -rf $(SA_CLASSDIR) |
119 rm -rf $(SA_CLASSDIR) |
112 rm -rf $(GENERATED)/sa-jdi.jar |
120 rm -rf $(GENERATED)/sa-jdi.jar |
113 rm -rf $(AGENT_FILES1_LIST) $(AGENT_FILES2_LIST) |
121 rm -rf $(AGENT_FILES1_LIST) $(AGENT_FILES2_LIST) |