code review (round 0) request for VS2010 IDE fix (8016601)
Daniel D. Daugherty
daniel.daugherty at oracle.com
Fri Aug 2 22:36:07 UTC 2013
Greetings,
I have have a proposed fix for the following bug:
8016601 Unable to build hsx24 on Windows using project creator and
Visual Studio
http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=8016601
https://jbs.oracle.com/bugs/browse/JDK-8016601
Here are the HSX-25 webrev URLs:
OpenJDK: http://cr.openjdk.java.net/~dcubed/8016601-webrev/0-hsx25/
Internal: http://javaweb.us.oracle.com/~ddaugher/8016601-webrev/0-hsx25/
Testing:
- JPRT windows_i586 and windows_x64 build and test
- local windows_i586 cmd line builds for:
{OpenJDK, Oracle} x {Client, Server} VM x {product, debug, fastdebug}
- local windows_i586 VS2010 builds for
{OpenJDK, Oracle} x {Client, Server, Tiered} VM x {product, debug,
fastdebug}
- local windows_x64 VS2010 builds for
{OpenJDK, Oracle} x {Client, Server, Tiered} VM x {product, debug,
fastdebug}
Thanks to Ron for doing the windows_x64 testing
Gory details are below. As always, comments, questions and
suggestions are welome.
Dan
Gory Details:
Build fixes:
- VS2010 IDE builds are working again; fixes this failure mode:
1>D:\hotspot_src\hsx\24\hotspot_14_jun\build\vs-i486\compiler2\debug\objectCountEventSender.obj
: warning LNK4042: object specified more than once; extras ignored
1>D:\hotspot_src\hsx\24\hotspot_14_jun\build\vs-i486\compiler2\debug\errorReporter.obj
: warning LNK4042: object specified more than once; extras ignored
1> Creating library
D:\hotspot_src\hsx\24\hotspot_14_jun\build\vs-i486\compiler2\debug\jvm.lib
and object
D:\hotspot_src\hsx\24\hotspot_14_jun\build\vs-i486\compiler2\debug\jvm.exp
1>jfrRequestables.obj : error LNK2019: unresolved external symbol
"public: static void __cdecl
ObjectCountEventSender::disable_requestable_event(void)"
(?disable_requestable_event at ObjectCountEventSender@@SAXXZ) referenced in
function "public: virtual void __thiscall
VM_GC_SendObjectCountEvent::doit(void)"
(?doit at VM_GC_SendObjectCountEvent@@UAEXXZ)
1>jfrRequestables.obj : error LNK2019: unresolved external symbol
"public: static void __cdecl
ObjectCountEventSender::enable_requestable_event(void)"
(?enable_requestable_event at ObjectCountEventSender@@SAXXZ) referenced in
function "public: virtual void __thiscall
VM_GC_SendObjectCountEvent::doit(void)"
(?doit at VM_GC_SendObjectCountEvent@@UAEXXZ)
1>D:\hotspot_src\hsx\24\hotspot_14_jun\build\vs-i486\compiler2\debug\jvm.dll
: fatal error LNK1120: 2 unresolved externals
- The ProjectCreator tool is modified to support two new options:
'-relativeAltSrcInclude' and '-altRelativeInclude'. Here's an
example use of the new options:
-relativeAltSrcInclude src\closed
-altRelativeInclude share\vm
which means config the project with some alternate source files in
src\closed\share\vm that will replace the corresponding files in
src\share\vm.
For example, src\closed\share\vm\utilities\errorReporter.cpp replaces
src\share\vm\utilities\errorReporter.cpp. In the VS2010 IDE, you'll
still be able to see src\share\vm\utilities\errorReporter.cpp in the
project source browser, but the icon will indicate that the file is
excluded from the project.
The ProjectCreator tool's file tree walking logic is modified to keep
track of each alternate source file that is found. If a corresponding
regular source file is found, then the regular source file is
excluded from the project in favor of the alternate source version.
- VS2010 cmd line build no longer issue the following linker warnings:
link.exe @C:\Users\lfoltan\AppData\Local\Temp\nm9B65.tmp
errorReporter.obj : warning LNK4042: object specified more than
once; extras ignored
objectCountEventSender.obj : warning LNK4042: object specified more
than once; extras ignored
Misc cleanups:
- removed more "core" config support from various makefiles and scripts;
the "core" config is vestigal and was mostly removed years ago; the
"core" config is not the same as the "minimalvm" config.
- removed extra references to ${ALTSRC}/share/vm/jfr objects
- added some "AltSrc" versus "OpenJDK" identification to messages where
files are auto-generated
- added some missing copyright headers
More information about the build-dev
mailing list