hotspot/make/solaris/makefiles/dtrace.make
changeset 4493 9204129f065e
parent 1562 c7dd0b46dfda
child 5547 f4b087cbb361
equal deleted inserted replaced
4492:63c49e60fc25 4493:9204129f065e
    22 #  
    22 #  
    23 #
    23 #
    24 
    24 
    25 # Rules to build jvm_db/dtrace, used by vm.make
    25 # Rules to build jvm_db/dtrace, used by vm.make
    26 
    26 
    27 # we build libjvm_dtrace/libjvm_db/dtrace for COMPILER1 and COMPILER2
    27 # We build libjvm_dtrace/libjvm_db/dtrace for COMPILER1 and COMPILER2
    28 # but not for CORE configuration
    28 # but not for CORE or KERNEL configurations.
    29 
    29 
    30 ifneq ("${TYPE}", "CORE")
    30 ifneq ("${TYPE}", "CORE")
    31 ifneq ("${TYPE}", "KERNEL")
    31 ifneq ("${TYPE}", "KERNEL")
    32 
    32 
    33 ifdef USE_GCC
    33 ifdef USE_GCC
    35 dtraceCheck:
    35 dtraceCheck:
    36 	$(QUIETLY) echo "**NOTICE** Dtrace support disabled for gcc builds"
    36 	$(QUIETLY) echo "**NOTICE** Dtrace support disabled for gcc builds"
    37 
    37 
    38 else
    38 else
    39 
    39 
    40 
       
    41 JVM_DB = libjvm_db
    40 JVM_DB = libjvm_db
    42 LIBJVM_DB = libjvm$(G_SUFFIX)_db.so
    41 LIBJVM_DB = libjvm_db.so
       
    42 LIBJVM_DB_G = libjvm$(G_SUFFIX)_db.so
    43 
    43 
    44 JVM_DTRACE = jvm_dtrace
    44 JVM_DTRACE = jvm_dtrace
    45 LIBJVM_DTRACE = libjvm$(G_SUFFIX)_dtrace.so
    45 LIBJVM_DTRACE = libjvm_dtrace.so
       
    46 LIBJVM_DTRACE_G = libjvm$(G_SUFFIX)_dtrace.so
    46 
    47 
    47 JVMOFFS = JvmOffsets
    48 JVMOFFS = JvmOffsets
    48 JVMOFFS.o = $(JVMOFFS).o
    49 JVMOFFS.o = $(JVMOFFS).o
    49 GENOFFS = generate$(JVMOFFS)
    50 GENOFFS = generate$(JVMOFFS)
    50 
    51 
    75 ifdef USE_GCC
    76 ifdef USE_GCC
    76 LFLAGS_JVM_DB += -D_REENTRANT $(PICFLAG)
    77 LFLAGS_JVM_DB += -D_REENTRANT $(PICFLAG)
    77 LFLAGS_JVM_DTRACE += -D_REENTRANT $(PICFLAG)
    78 LFLAGS_JVM_DTRACE += -D_REENTRANT $(PICFLAG)
    78 else
    79 else
    79 LFLAGS_JVM_DB += -mt $(PICFLAG) -xnolib
    80 LFLAGS_JVM_DB += -mt $(PICFLAG) -xnolib
    80 LFLAGS_JVM_DTRACE += -mt $(PICFLAG) -xnolib
    81 LFLAGS_JVM_DTRACE += -mt $(PICFLAG) -xnolib -ldl
    81 endif
    82 endif
    82 
    83 
    83 ISA = $(subst i386,i486,$(shell isainfo -n))
    84 ISA = $(subst i386,i486,$(shell isainfo -n))
    84 
    85 
    85 # Making 64/libjvm_db.so: 64-bit version of libjvm_db.so which handles 32-bit libjvm.so
    86 # Making 64/libjvm_db.so: 64-bit version of libjvm_db.so which handles 32-bit libjvm.so
    86 ifneq ("${ISA}","${BUILDARCH}")
    87 ifneq ("${ISA}","${BUILDARCH}")
    87 
    88 
    88 XLIBJVM_DB = 64/$(LIBJVM_DB)
    89 XLIBJVM_DB = 64/$(LIBJVM_DB)
       
    90 XLIBJVM_DB_G = 64/$(LIBJVM_DB_G)
    89 XLIBJVM_DTRACE = 64/$(LIBJVM_DTRACE)
    91 XLIBJVM_DTRACE = 64/$(LIBJVM_DTRACE)
       
    92 XLIBJVM_DTRACE_G = 64/$(LIBJVM_DTRACE_G)
    90 
    93 
    91 $(XLIBJVM_DB): $(DTRACE_SRCDIR)/$(JVM_DB).c $(JVMOFFS).h $(LIBJVM_DB_MAPFILE)
    94 $(XLIBJVM_DB): $(DTRACE_SRCDIR)/$(JVM_DB).c $(JVMOFFS).h $(LIBJVM_DB_MAPFILE)
    92 	@echo Making $@
    95 	@echo Making $@
    93 	$(QUIETLY) mkdir -p 64/ ; \
    96 	$(QUIETLY) mkdir -p 64/ ; \
    94 	$(CC) $(SYMFLAG) $(ARCHFLAG/$(ISA)) -D$(TYPE) -I. -I$(GENERATED) \
    97 	$(CC) $(SYMFLAG) $(ARCHFLAG/$(ISA)) -D$(TYPE) -I. -I$(GENERATED) \
    95 		$(SHARED_FLAG) $(LFLAGS_JVM_DB) -o $@ $(DTRACE_SRCDIR)/$(JVM_DB).c -lc
    98 		$(SHARED_FLAG) $(LFLAGS_JVM_DB) -o $@ $(DTRACE_SRCDIR)/$(JVM_DB).c -lc
       
    99 	[ -f $(XLIBJVM_DB_G) ] || { ln -s $(LIBJVM_DB) $(XLIBJVM_DB_G); }
       
   100 
    96 $(XLIBJVM_DTRACE): $(DTRACE_SRCDIR)/$(JVM_DTRACE).c $(DTRACE_SRCDIR)/$(JVM_DTRACE).h $(LIBJVM_DTRACE_MAPFILE)
   101 $(XLIBJVM_DTRACE): $(DTRACE_SRCDIR)/$(JVM_DTRACE).c $(DTRACE_SRCDIR)/$(JVM_DTRACE).h $(LIBJVM_DTRACE_MAPFILE)
    97 	@echo Making $@
   102 	@echo Making $@
    98 	$(QUIETLY) mkdir -p 64/ ; \
   103 	$(QUIETLY) mkdir -p 64/ ; \
    99 	$(CC) $(SYMFLAG) $(ARCHFLAG/$(ISA)) -D$(TYPE) -I. \
   104 	$(CC) $(SYMFLAG) $(ARCHFLAG/$(ISA)) -D$(TYPE) -I. \
   100 		$(SHARED_FLAG) $(LFLAGS_JVM_DTRACE) -o $@ $(DTRACE_SRCDIR)/$(JVM_DTRACE).c -lc -lthread -ldoor
   105 		$(SHARED_FLAG) $(LFLAGS_JVM_DTRACE) -o $@ $(DTRACE_SRCDIR)/$(JVM_DTRACE).c -lc -lthread -ldoor
       
   106 	[ -f $(XLIBJVM_DTRACE_G) ] || { ln -s $(LIBJVM_DTRACE) $(XLIBJVM_DTRACE_G); }
       
   107 
   101 endif # ifneq ("${ISA}","${BUILDARCH}")
   108 endif # ifneq ("${ISA}","${BUILDARCH}")
   102 
   109 
   103 ifdef USE_GCC
   110 ifdef USE_GCC
   104 LFLAGS_GENOFFS += -D_REENTRANT
   111 LFLAGS_GENOFFS += -D_REENTRANT
   105 else
   112 else
   140 
   147 
   141 $(LIBJVM_DB): $(DTRACE_SRCDIR)/$(JVM_DB).c $(JVMOFFS.o) $(XLIBJVM_DB) $(LIBJVM_DB_MAPFILE)
   148 $(LIBJVM_DB): $(DTRACE_SRCDIR)/$(JVM_DB).c $(JVMOFFS.o) $(XLIBJVM_DB) $(LIBJVM_DB_MAPFILE)
   142 	@echo Making $@
   149 	@echo Making $@
   143 	$(QUIETLY) $(CC) $(SYMFLAG) $(ARCHFLAG) -D$(TYPE) -I. -I$(GENERATED) \
   150 	$(QUIETLY) $(CC) $(SYMFLAG) $(ARCHFLAG) -D$(TYPE) -I. -I$(GENERATED) \
   144 		$(SHARED_FLAG) $(LFLAGS_JVM_DB) -o $@ $(DTRACE_SRCDIR)/$(JVM_DB).c -lc
   151 		$(SHARED_FLAG) $(LFLAGS_JVM_DB) -o $@ $(DTRACE_SRCDIR)/$(JVM_DB).c -lc
       
   152 	[ -f $(LIBJVM_DB_G) ] || { ln -s $@ $(LIBJVM_DB_G); }
   145 
   153 
   146 $(LIBJVM_DTRACE): $(DTRACE_SRCDIR)/$(JVM_DTRACE).c $(XLIBJVM_DTRACE) $(DTRACE_SRCDIR)/$(JVM_DTRACE).h $(LIBJVM_DTRACE_MAPFILE)
   154 $(LIBJVM_DTRACE): $(DTRACE_SRCDIR)/$(JVM_DTRACE).c $(XLIBJVM_DTRACE) $(DTRACE_SRCDIR)/$(JVM_DTRACE).h $(LIBJVM_DTRACE_MAPFILE)
   147 	@echo Making $@
   155 	@echo Making $@
   148 	$(QUIETLY) $(CC) $(SYMFLAG) $(ARCHFLAG) -D$(TYPE) -I.  \
   156 	$(QUIETLY) $(CC) $(SYMFLAG) $(ARCHFLAG) -D$(TYPE) -I.  \
   149 		$(SHARED_FLAG) $(LFLAGS_JVM_DTRACE) -o $@ $(DTRACE_SRCDIR)/$(JVM_DTRACE).c -lc -lthread -ldoor
   157 		$(SHARED_FLAG) $(LFLAGS_JVM_DTRACE) -o $@ $(DTRACE_SRCDIR)/$(JVM_DTRACE).c -lc -lthread -ldoor
       
   158 	[ -f $(LIBJVM_DTRACE_G) ] || { ln -s $@ $(LIBJVM_DTRACE_G); }
   150 
   159 
   151 $(DTRACE).d: $(DTRACE_SRCDIR)/hotspot.d $(DTRACE_SRCDIR)/hotspot_jni.d \
   160 $(DTRACE).d: $(DTRACE_SRCDIR)/hotspot.d $(DTRACE_SRCDIR)/hotspot_jni.d \
   152              $(DTRACE_SRCDIR)/hs_private.d $(DTRACE_SRCDIR)/jhelper.d
   161              $(DTRACE_SRCDIR)/hs_private.d $(DTRACE_SRCDIR)/jhelper.d
   153 	$(QUIETLY) cat $^ > $@
   162 	$(QUIETLY) cat $^ > $@
   154 
   163