RFR: JDK-8077422: hprof agent: Build failed with VS2013 Update 4
Erik Joelsson
erik.joelsson at oracle.com
Mon May 4 13:46:19 UTC 2015
Hello,
This bug has been marked as won't fix since the code it affects is going
to be removed. However, until that removal happens, we can't build using
VS2013 SP4. I'm in the process of updating the compilers used internally
at Oracle to that specific version and to be able to continue that work,
I need this to be buildable now. For this reason I propose Peter
Brunet's suggested solution to the problem, just adding a C macro
definition that makes it compile. I slightly adjusted his initial proposal.
Bug: https://bugs.openjdk.java.net/browse/JDK-8077422
Patch:
diff -r 83ff0dedf9e1 make/lib/Lib-jdk.hprof.agent.gmk
--- a/make/lib/Lib-jdk.hprof.agent.gmk
+++ b/make/lib/Lib-jdk.hprof.agent.gmk
@@ -31,7 +31,7 @@
BUILD_LIBHPROF_CFLAGS := $(addprefix -I, $(BUILD_LIBHPROF_SRC)) \
-I$(JDK_TOPDIR)/src/demo/share/jvmti/java_crw_demo
BUILD_LIBHPROF_LDFLAGS :=
LIBHPROF_OPTIMIZATION := HIGHEST
@@ -49,6 +49,7 @@
CFLAGS := $(CFLAGS_JDKLIB) $(CFLAGS_WARNINGS_ARE_ERRORS) \
$(BUILD_LIBHPROF_CFLAGS), \
CFLAGS_debug := -DHPROF_LOGGING, \
+ CFLAGS_windows := -D_WINSOCK_DEPRECATED_NO_WARNINGS, \
MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libhprof/mapfile-vers, \
LDFLAGS := $(LDFLAGS_JDKLIB) \
$(call SET_SHARED_LIBRARY_ORIGIN), \
/Erik
On 2015-04-23 00:02, Pete Brunet wrote:
> This hack to jdk/make/lib/Lib-jdk.hprof.agent.gmk works for now:
>
> LANG := C, \
> OPTIMIZATION := $(LIBHPROF_OPTIMIZATION), \
> CFLAGS := $(CFLAGS_JDKLIB) $(CFLAGS_WARNINGS_ARE_ERRORS) \
> + -D_WINSOCK_DEPRECATED_NO_WARNINGS \
> $(BUILD_LIBHPROF_CFLAGS), \
> CFLAGS_debug := -DHPROF_LOGGING, \
> MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libhprof/mapfile-vers, \
>
> Pete
>
> On 4/22/15 4:12 PM, Pete Brunet wrote:
>> p.s. I also had done a make reconfigure and make clean. I'll try make
>> clean and reconfigure from bash.
>>
>> On 4/22/15 4:06 PM, Pete Brunet wrote:
>>> I was able to build 9 OK then I switched from VS2010 to VS2013 and now
>>> get the following. I tried hg tpull -u but that didn't help.
>>>
>>> Is there something I need to do besides installing VS Pro 2013 with
>>> Update 4?
>>>
>>> $ make images 2>&1 | tee make-64.log
>>> Building target 'images' in configuration
>>> 'windows-x86_64-normal-server-release'
>>>
>>> c:/Users/Pete/JDK9/INTJDK-7615864/client/jdk/src/jdk.hprof.agent/windows/native/libhprof/hprof_md.c(86)
>>> : error C2220: warning treated as error - no 'object' file generated
>>> c:/Users/Pete/JDK9/INTJDK-7615864/client/jdk/src/jdk.hprof.agent/windows/native/libhprof/hprof_md.c(86)
>>> : warning C4996: 'gethostbyname': Use getaddrinfo() or GetAddrInfoW()
>>> instead or define _WINSOCK_DEPRECATED_NO_WARNINGS to disable deprecated
>>> API warnings
>>> c:\progra~2\wi3cf2~1\8.1\include\um\winsock2.h(2238) : see
>>> declaration of 'gethostbyname'
>>> Lib-jdk.hprof.agent.gmk:44: recipe for target
>>> '/cygdrive/c/Users/Pete/JDK9/INTJDK-7615864/client/build/windows-x86_64-normal-server-release/support/native/jdk.h
>>> prof.agent/libhprof_jvmti/hprof_md.obj' failedmake[3]: ***
>>> [/cygdrive/c/Users/Pete/JDK9/INTJDK-7615864/client/build/windows-x86_64-normal-server-release/support/native/jdk.hprof.agent/libhprof_jvmti/hprof_md.obj]
>>> Error 2
>>> make/Main.gmk:168: recipe for target 'jdk.hprof.agent-libs' failed
>>> make[2]: *** [jdk.hprof.agent-libs] Error 1
>>> make[2]: *** Waiting for unfinished jobs....
>>> /cygdrive/c/Users/Pete/JDK9/INTJDK-7615864/client/make/Init.gmk:255:
>>> recipe for target 'main' failed
>>> make[1]: *** [main] Error 1
>>> /cygdrive/c/Users/Pete/JDK9/INTJDK-7615864/client/make/Init.gmk:171:
>>> recipe for target 'images' failed
>>> make: *** [images] Error 2
More information about the build-dev
mailing list