-
Bug
-
Resolution: Fixed
-
P2
-
7
-
None
A recent change in the TL forest has "broken the build" for an OpenJDK build (i.e. no closed repositories) with binary plugs (i.e. specify ALT_BINARY_PLUGS_PATH.)
Here is the background email.
----------------------------------------
From ###@###.###
I've been tracking down a problem building OpenJDK and I believe I've tracked it
down to this change that was made last week:
author dfuchs
Thu Mar 12 15:36:14 2009 +0100 (7 days ago)
changeset 950 fa87de6b1ac3 <http://hg.openjdk.java.net/jdk7/tl/jdk/rev/fa87de6b1ac3>
parent 0 37a05a11f281 <http://hg.openjdk.java.net/jdk7/tl/jdk/annotate/37a05a11f281/make/com/sun/jmx/Makefile>
permissions -rw-r--r--
6661448: Make the SNMP agent optional when OPENJDK=true and IMPORT_BINARY_PLUGS=false
Reviewed-by: mchung, ohair
The problem is that I can't build TL for OpenJDK, when using binary plugs. Here is the code that was
changed in jdk/make/sun/jmx/Makefile. Previously the code unconditionally set SUBDIRS=snmp.
dfuchs@950 <http://hg.openjdk.java.net/jdk7/tl/jdk/annotate/fa87de6b1ac3/make/com/sun/jmx/Makefile>
dfuchs@950 <http://hg.openjdk.java.net/jdk7/tl/jdk/annotate/fa87de6b1ac3/make/com/sun/jmx/Makefile>
# When building the openjdk, build snmp only if importing binary plugs,
dfuchs@950 <http://hg.openjdk.java.net/jdk7/tl/jdk/annotate/fa87de6b1ac3/make/com/sun/jmx/Makefile>
ifdef OPENJDK
dfuchs@950 <http://hg.openjdk.java.net/jdk7/tl/jdk/annotate/fa87de6b1ac3/make/com/sun/jmx/Makefile>
ifeq ($(IMPORT_BINARY_PLUGS),true)
dfuchs@950 <http://hg.openjdk.java.net/jdk7/tl/jdk/annotate/fa87de6b1ac3/make/com/sun/jmx/Makefile>
SUBDIRS = snmp
dfuchs@950 <http://hg.openjdk.java.net/jdk7/tl/jdk/annotate/fa87de6b1ac3/make/com/sun/jmx/Makefile>
endif
dfuchs@950 <http://hg.openjdk.java.net/jdk7/tl/jdk/annotate/fa87de6b1ac3/make/com/sun/jmx/Makefile>
else
dfuchs@950 <http://hg.openjdk.java.net/jdk7/tl/jdk/annotate/fa87de6b1ac3/make/com/sun/jmx/Makefile>
SUBDIRS = snmp
dfuchs@950 <http://hg.openjdk.java.net/jdk7/tl/jdk/annotate/fa87de6b1ac3/make/com/sun/jmx/Makefile>
endif
The net effect is that SUBDIRS is not getting set in my build, which is only possible if OPENJDK is true and IMPORT_BINARY_PLUGS is false.
The problem seems to be that IMPORT_BINARY_PLUGS is not set in any of the Makefiles. There are only two references to this variable in the entire Makefile/*.gmk hierarchy and both are similar to your usage above. I cannot see how it is ever set true, nor is there a requirement on me, as a user, to set it true on the command line (according to the OpenJDK build notes.)
In short, I believe this change has "broken the build" for OpenJDK w/ plugs users.
------------------------------
from Daniel:
Well - Kelly is the expert on this subject. That fix was
actually devised a long time ago (even if it was only pushed last
week) - so maybe something has changed in the build mechanism since
then?
Here is the background email.
----------------------------------------
From ###@###.###
I've been tracking down a problem building OpenJDK and I believe I've tracked it
down to this change that was made last week:
author dfuchs
Thu Mar 12 15:36:14 2009 +0100 (7 days ago)
changeset 950 fa87de6b1ac3 <http://hg.openjdk.java.net/jdk7/tl/jdk/rev/fa87de6b1ac3>
parent 0 37a05a11f281 <http://hg.openjdk.java.net/jdk7/tl/jdk/annotate/37a05a11f281/make/com/sun/jmx/Makefile>
permissions -rw-r--r--
6661448: Make the SNMP agent optional when OPENJDK=true and IMPORT_BINARY_PLUGS=false
Reviewed-by: mchung, ohair
The problem is that I can't build TL for OpenJDK, when using binary plugs. Here is the code that was
changed in jdk/make/sun/jmx/Makefile. Previously the code unconditionally set SUBDIRS=snmp.
dfuchs@950 <http://hg.openjdk.java.net/jdk7/tl/jdk/annotate/fa87de6b1ac3/make/com/sun/jmx/Makefile>
dfuchs@950 <http://hg.openjdk.java.net/jdk7/tl/jdk/annotate/fa87de6b1ac3/make/com/sun/jmx/Makefile>
# When building the openjdk, build snmp only if importing binary plugs,
dfuchs@950 <http://hg.openjdk.java.net/jdk7/tl/jdk/annotate/fa87de6b1ac3/make/com/sun/jmx/Makefile>
ifdef OPENJDK
dfuchs@950 <http://hg.openjdk.java.net/jdk7/tl/jdk/annotate/fa87de6b1ac3/make/com/sun/jmx/Makefile>
ifeq ($(IMPORT_BINARY_PLUGS),true)
dfuchs@950 <http://hg.openjdk.java.net/jdk7/tl/jdk/annotate/fa87de6b1ac3/make/com/sun/jmx/Makefile>
SUBDIRS = snmp
dfuchs@950 <http://hg.openjdk.java.net/jdk7/tl/jdk/annotate/fa87de6b1ac3/make/com/sun/jmx/Makefile>
endif
dfuchs@950 <http://hg.openjdk.java.net/jdk7/tl/jdk/annotate/fa87de6b1ac3/make/com/sun/jmx/Makefile>
else
dfuchs@950 <http://hg.openjdk.java.net/jdk7/tl/jdk/annotate/fa87de6b1ac3/make/com/sun/jmx/Makefile>
SUBDIRS = snmp
dfuchs@950 <http://hg.openjdk.java.net/jdk7/tl/jdk/annotate/fa87de6b1ac3/make/com/sun/jmx/Makefile>
endif
The net effect is that SUBDIRS is not getting set in my build, which is only possible if OPENJDK is true and IMPORT_BINARY_PLUGS is false.
The problem seems to be that IMPORT_BINARY_PLUGS is not set in any of the Makefiles. There are only two references to this variable in the entire Makefile/*.gmk hierarchy and both are similar to your usage above. I cannot see how it is ever set true, nor is there a requirement on me, as a user, to set it true on the command line (according to the OpenJDK build notes.)
In short, I believe this change has "broken the build" for OpenJDK w/ plugs users.
------------------------------
from Daniel:
Well - Kelly is the expert on this subject. That fix was
actually devised a long time ago (even if it was only pushed last
week) - so maybe something has changed in the build mechanism since
then?
- relates to
-
JDK-6824595 OpenJDK fix breaks product build for jdk7
-
- Closed
-
-
JDK-6661448 Make the SNMP agent optional when OPENJDK=true and IMPORT_BINARY_PLUGS=false
-
- Resolved
-