2011/6/8 Daniel D. Daugherty <daniel.daughe...@oracle.com> > Adding Zhengyu since he is the RE on 6988099 and I'm not sure > if he is on the serviceability-dev alias... > > Zhengyu, I don't know if you have a fix already in process for > this issue or not. > > Comments on the Makefile change below. > > > Dan > > > On 6/6/2011 8:59 PM, David Holmes wrote: > >> Sean, >> >> Because this is a JVMTI demo it falls under serviceability, so I've cc'ed >> that list. >> >> David >> >> Sean Chou said the following on 06/07/11 12:18: >> >>> >>> Is there any comment ? >>> >>> 2011/5/26 Sean Chou <zho...@linux.vnet.ibm.com <mailto: >>> zho...@linux.vnet.ibm.com>> >>> >>> Hi all, >>> >>> I made a simple patch for bug >>> http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6988099 (jvmti >>> demos missing Publisher (COMPANY resource) in dll and exe >>> files on windows) . Will anyone have a look at my patch ? >>> Thanks. >>> >>> >>> diff --git make/common/Demo.gmk make/common/Demo.gmk >>> index a3788ae..8c43cf9 100644 >>> --- make/common/Demo.gmk >>> +++ make/common/Demo.gmk >>> @@ -158,6 +158,7 @@ ifneq ($(strip $(DEMO_ALL_NATIVE_SOURCES)),) >>> # bit between them. >>> LINK.demo = $(LINK.c) >>> LDLIBS.demo = $(EXTRA_LIBS) $(LFLAGS_$(COMPILER_VERSION)) >>> + DEMO_VERSION_INFO = $(OBJDIR)/$(LIBRARY).res >>> else >>> ifneq ($(DEMO_NEEDS_CPP),) >>> LINK.demo = $(LINK.cpp) >>> @@ -288,6 +289,13 @@ ifndef DEMO_SKIP_SRCZIP >>> $(install-file) >>> endif >>> >> > The change below is not bracketed by "ifeq ($(PLATFORM),windows)" > but it certainly looks Windows specific. > > Yes, it is Windows specific and only used by RC.exe. I copied this piece of flag from Library.gmk, it is not bracketed by "ifeq ($(PLATFORM),windows)" in that file.
> > > +# JDK name required here >>> +RC_FLAGS += /D "JDK_FNAME=$(LIBRARY).dll" \ >>> + /D "JDK_INTERNAL_NAME=$(LIBRARY)" \ >>> + /D "JDK_FTYPE=0x2L" >>> + >>> + >>> + >>> # Native library building >>> ifdef DEMO_LIBRARY >>> @@ -308,8 +316,11 @@ $(OBJDIR)/%.$(OBJECT_SUFFIX): >>> $(DEMO_BUILD_SRCDIR)/%.cpp >>> # Actual creation of the native shared library (C++ and C are >>> different) >>> $(DEMO_LIBRARY): $(DEMO_FULL_OBJECTS) >>> @$(prep-target) >>> + ifeq ($(PLATFORM),windows) >>> + $(RC) $(RC_FLAGS) $(CC_OBJECT_OUTPUT_FLAG)$(DEMO_VERSION_INFO) >>> $(VERSIONINFO_RESOURCE) >>> + endif >>> $(LINK.demo) $(SHARED_LIBRARY_FLAG) $(CC_PROGRAM_OUTPUT_FLAG)$@ \ >>> - $(DEMO_FULL_OBJECTS) $(LDLIBS.demo) >>> + $(DEMO_FULL_OBJECTS) $(LDLIBS.demo) $(DEMO_VERSION_INFO) >>> >> > The above change uses "$(DEMO_VERSION_INFO)" but that variable is > only set under "ifeq ($(PLATFORM),windows)" above. That won't break > make, but I wanted to be sure that was intentional. > > "$(DEMO_VERSION_INFO)" should be left blank on platforms other than windows. And I found it would be blank if it was not set, so I removed the code to set it blank. > > > @$(call binary_file_verification,$@) >>> # Generation of any javah include file, make sure objects are >>> dependent on it >>> >>> >>> >>> -- Best Regards, >>> Sean Chou >>> >>> >>> >>> >>> -- >>> Best Regards, >>> Sean Chou >>> >>> -- Best Regards, Sean Chou