Build scripts on Linux use CXXFLAGS instead of CFLAGS when compiling C++ code. Adding -fpic to CXXFLAGS solves the problem. It makes sense to set both variables to compile C and C++ sources in the same way. Here is the patch:
Index: modules/jpda/src/main/native/jdwp/unix/transport/makefile =================================================================== --- modules/jpda/src/main/native/jdwp/unix/transport/makefile (revision 535253) +++ modules/jpda/src/main/native/jdwp/unix/transport/makefile (working copy) @@ -27,6 +27,7 @@ CMNTRANS=$(COMMON)transport/ CFLAGS += -fpic +CXXFLAGS += -fpic INCLUDES += -I$(CMNTRANS)common -I$(CMNTRANS)dt_socket \ -I$(COMMON)generic -Idt_socket Index: modules/jpda/src/main/native/jdwp/unix/agent/makefile =================================================================== --- modules/jpda/src/main/native/jdwp/unix/agent/makefile (revision 535253) +++ modules/jpda/src/main/native/jdwp/unix/agent/makefile (working copy) @@ -23,6 +23,7 @@ CMNAGENT=$(COMMON)agent/ CFLAGS += -fpic +CXXFLAGS += -fpic INCLUDES += -I$(CMNAGENT)commands -I$(CMNAGENT)core \ -I$(COMMON)generic -Icore I checked it on SLES9 with gcc 3.3.3 and now JPDA tests pass. Tim, could you please apply this patch. Thanks. Ivan On 5/4/07, Ivan Popov <[EMAIL PROTECTED]> wrote:
I'll check why local modification of CFLAGS does not work. However, there is one more problem with running jdktools tests now. I submitted HARMONY-3803 and provided patch. Could you please apply it. Thanks. Ivan