Add version information to jvmti demos.
Sean Chou
zhouyx at linux.vnet.ibm.com
Wed Jun 8 05:17:30 UTC 2011
2011/6/8 Daniel D. Daugherty <daniel.daugherty at 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 <zhouyx at linux.vnet.ibm.com <mailto:
>>> zhouyx at 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
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.org/pipermail/build-dev/attachments/20110608/f305833d/attachment.htm>
More information about the build-dev
mailing list