Re: _BOOTDIR1 on MS Windows platform

2009-04-23 Thread Kelly O'Hair

This sanity check would be a "nice to have" thing, but it it can't
be done in a simple way I'm not sure I want to see a bunch of convoluted
logic added, we have too much of that already :^(
And it does go beyond your intended change. Maybe a separate bug for
another time, like a "sanity warnings on common build performance situations"?

On Solaris/Linux I have never seen a performance issue with reading
networked files, maybe a reliability issue when machines go down.
But writing to a network drive is more expensive, so if OUTPUTDIR
was a network drive, that might justify some kind of warning for all
platforms.

On the otherhand, I'm not sure I want to drive people too crazy with
warnings like this... I'd like to hear some more opinions on this.

-kto


Anthony Petrov wrote:

Jon, Kelly,

Then what about the default builds on Linux/Solaris that do use the 
/java share and do not issue any warning message? I agree that these 
builds are generally much faster than on Windows, but still. Besides, as 
I mentioned before, on my local systems the /java directory and the J: 
disk are local  directories that just get occasionally synced. So the 
warning would be meaningless for such configurations...


--
best regards,
Anthony

On 4/23/2009 10:54 PM Kelly O'Hair wrote:

Adding a sanity check warning about J:/ usage would be a nice addition
to this change.

-kto

Jonathan Gibbons wrote:

Kelly,

Perhaps "make sanity" on Windows could give a warning about the use
of network paths, if such is detected.

-- Jon


Kelly O'Hair wrote:

Sorry I'm so slow in responding to this...

The primary reason for the special case on Windows is the unreliability
and slowness of the network connections.
Builds using a local jdk vs. a J:/ mapped can be 5 hours long when
they might normally be 1hr or less. These just come from reports I
have gotten over the years, and it's really depends on the Windows
machine, the network, etc.

Bottom line, builds are always faster and more reliable when all 
components

are stored on local disk, and this is particularly true on Windows.

Having said all that, I ALWAYS set ALT_BOOTDIR to my local copy
(and ALT_JDK_IMPORT_PATH too). So I probably would not be impacted
by this change, but I bet quite a few people rely on this c:/jdk1.6.0
default. With enough warning you might be able to change this.

---

I have been recently working on the JavaFX build dependency issues
and although it's more ant based, some of the techniques could apply
to making OpenJDK builds easier. Unfortunately, there is only 24hrs
in a day. :^{

-kto


Anthony Petrov wrote:

Hello,

Back in 2007 we already discussed this issue with Kelly, but 
transitioning to Mercurial just stopped the work. So, I would like 
to revive this now.


Here's a part of the output generated by `grep -r BOOTDIR make/*`:

make/common/shared/Defs-solaris.gmk:  _BOOTDIR1  
=$(SLASH_JAVA)/re/jdk/$(PREVIOUS_JDK_VERSION)/archive/fcs/binaries/$(PLATFORM)-$(ARCH) 

make/common/shared/Defs-solaris.gmk:  _BOOTDIR2  
=$(USRJDKINSTANCES_PATH)/jdk$(PREVIOUS_JDK_VERSION)
make/common/shared/Defs-windows.gmk:  _BOOTDIR1  
=$(_system_drive)/jdk$(PREVIOUS_JDK_VERSION)
make/common/shared/Defs-windows.gmk:  _BOOTDIR2  
=$(USRJDKINSTANCES_PATH)/jdk$(PREVIOUS_JDK_VERSION)
make/common/shared/Defs-linux.gmk:  _BOOTDIR1  
=$(SLASH_JAVA)/re/jdk/$(PREVIOUS_JDK_VERSION)/archive/fcs/binaries/$(PLATFORM)-$(ARCH) 

make/common/shared/Defs-linux.gmk:  _BOOTDIR2  
=$(USRJDKINSTANCES_PATH)/jdk$(PREVIOUS_JDK_VERSION)


One can notice that the _BOOTDIR1 is defined differently on MS 
Windows platform. I would like to propose a change so that its 
value would be the same as on other platforms. The SLASH_JAVA on MS 
Windows equals to the J: drive. So one could setup the same 
directory tree as on Linux/Solaris, use the subst command to make 
the directory the J: drive, and be able to build the jdk w/o 
specifying the ALT_BOOTDIR variable manually.


Is there any objection to removing the 
$(_system_drive)/jdk$(PREVIOUS_JDK_VERSION) default path?


--
best regards,
Anthony




Re: _BOOTDIR1 on MS Windows platform

2009-04-23 Thread Jonathan Gibbons

Anthony,

On pretty much any system you can tell if a drive is local or not, 
albeit in a system specific way.


-- Jon


Anthony Petrov wrote:

Jon, Kelly,

Then what about the default builds on Linux/Solaris that do use the 
/java share and do not issue any warning message? I agree that these 
builds are generally much faster than on Windows, but still. Besides, 
as I mentioned before, on my local systems the /java directory and the 
J: disk are local  directories that just get occasionally synced. So 
the warning would be meaningless for such configurations...


--
best regards,
Anthony

On 4/23/2009 10:54 PM Kelly O'Hair wrote:

Adding a sanity check warning about J:/ usage would be a nice addition
to this change.

-kto

Jonathan Gibbons wrote:

Kelly,

Perhaps "make sanity" on Windows could give a warning about the use
of network paths, if such is detected.

-- Jon


Kelly O'Hair wrote:

Sorry I'm so slow in responding to this...

The primary reason for the special case on Windows is the 
unreliability

and slowness of the network connections.
Builds using a local jdk vs. a J:/ mapped can be 5 hours long when
they might normally be 1hr or less. These just come from reports I
have gotten over the years, and it's really depends on the Windows
machine, the network, etc.

Bottom line, builds are always faster and more reliable when all 
components

are stored on local disk, and this is particularly true on Windows.

Having said all that, I ALWAYS set ALT_BOOTDIR to my local copy
(and ALT_JDK_IMPORT_PATH too). So I probably would not be impacted
by this change, but I bet quite a few people rely on this c:/jdk1.6.0
default. With enough warning you might be able to change this.

---

I have been recently working on the JavaFX build dependency issues
and although it's more ant based, some of the techniques could apply
to making OpenJDK builds easier. Unfortunately, there is only 24hrs
in a day. :^{

-kto


Anthony Petrov wrote:

Hello,

Back in 2007 we already discussed this issue with Kelly, but 
transitioning to Mercurial just stopped the work. So, I would like 
to revive this now.


Here's a part of the output generated by `grep -r BOOTDIR make/*`:

make/common/shared/Defs-solaris.gmk:  _BOOTDIR1  
=$(SLASH_JAVA)/re/jdk/$(PREVIOUS_JDK_VERSION)/archive/fcs/binaries/$(PLATFORM)-$(ARCH) 

make/common/shared/Defs-solaris.gmk:  _BOOTDIR2  
=$(USRJDKINSTANCES_PATH)/jdk$(PREVIOUS_JDK_VERSION)
make/common/shared/Defs-windows.gmk:  _BOOTDIR1  
=$(_system_drive)/jdk$(PREVIOUS_JDK_VERSION)
make/common/shared/Defs-windows.gmk:  _BOOTDIR2  
=$(USRJDKINSTANCES_PATH)/jdk$(PREVIOUS_JDK_VERSION)
make/common/shared/Defs-linux.gmk:  _BOOTDIR1  
=$(SLASH_JAVA)/re/jdk/$(PREVIOUS_JDK_VERSION)/archive/fcs/binaries/$(PLATFORM)-$(ARCH) 

make/common/shared/Defs-linux.gmk:  _BOOTDIR2  
=$(USRJDKINSTANCES_PATH)/jdk$(PREVIOUS_JDK_VERSION)


One can notice that the _BOOTDIR1 is defined differently on MS 
Windows platform. I would like to propose a change so that its 
value would be the same as on other platforms. The SLASH_JAVA on 
MS Windows equals to the J: drive. So one could setup the same 
directory tree as on Linux/Solaris, use the subst command to make 
the directory the J: drive, and be able to build the jdk w/o 
specifying the ALT_BOOTDIR variable manually.


Is there any objection to removing the 
$(_system_drive)/jdk$(PREVIOUS_JDK_VERSION) default path?


--
best regards,
Anthony






Re: _BOOTDIR1 on MS Windows platform

2009-04-23 Thread Anthony Petrov

Jon, Kelly,

Then what about the default builds on Linux/Solaris that do use the 
/java share and do not issue any warning message? I agree that these 
builds are generally much faster than on Windows, but still. Besides, as 
I mentioned before, on my local systems the /java directory and the J: 
disk are local  directories that just get occasionally synced. So the 
warning would be meaningless for such configurations...


--
best regards,
Anthony

On 4/23/2009 10:54 PM Kelly O'Hair wrote:

Adding a sanity check warning about J:/ usage would be a nice addition
to this change.

-kto

Jonathan Gibbons wrote:

Kelly,

Perhaps "make sanity" on Windows could give a warning about the use
of network paths, if such is detected.

-- Jon


Kelly O'Hair wrote:

Sorry I'm so slow in responding to this...

The primary reason for the special case on Windows is the unreliability
and slowness of the network connections.
Builds using a local jdk vs. a J:/ mapped can be 5 hours long when
they might normally be 1hr or less. These just come from reports I
have gotten over the years, and it's really depends on the Windows
machine, the network, etc.

Bottom line, builds are always faster and more reliable when all 
components

are stored on local disk, and this is particularly true on Windows.

Having said all that, I ALWAYS set ALT_BOOTDIR to my local copy
(and ALT_JDK_IMPORT_PATH too). So I probably would not be impacted
by this change, but I bet quite a few people rely on this c:/jdk1.6.0
default. With enough warning you might be able to change this.

---

I have been recently working on the JavaFX build dependency issues
and although it's more ant based, some of the techniques could apply
to making OpenJDK builds easier. Unfortunately, there is only 24hrs
in a day. :^{

-kto


Anthony Petrov wrote:

Hello,

Back in 2007 we already discussed this issue with Kelly, but 
transitioning to Mercurial just stopped the work. So, I would like 
to revive this now.


Here's a part of the output generated by `grep -r BOOTDIR make/*`:

make/common/shared/Defs-solaris.gmk:  _BOOTDIR1  
=$(SLASH_JAVA)/re/jdk/$(PREVIOUS_JDK_VERSION)/archive/fcs/binaries/$(PLATFORM)-$(ARCH) 

make/common/shared/Defs-solaris.gmk:  _BOOTDIR2  
=$(USRJDKINSTANCES_PATH)/jdk$(PREVIOUS_JDK_VERSION)
make/common/shared/Defs-windows.gmk:  _BOOTDIR1  
=$(_system_drive)/jdk$(PREVIOUS_JDK_VERSION)
make/common/shared/Defs-windows.gmk:  _BOOTDIR2  
=$(USRJDKINSTANCES_PATH)/jdk$(PREVIOUS_JDK_VERSION)
make/common/shared/Defs-linux.gmk:  _BOOTDIR1  
=$(SLASH_JAVA)/re/jdk/$(PREVIOUS_JDK_VERSION)/archive/fcs/binaries/$(PLATFORM)-$(ARCH) 

make/common/shared/Defs-linux.gmk:  _BOOTDIR2  
=$(USRJDKINSTANCES_PATH)/jdk$(PREVIOUS_JDK_VERSION)


One can notice that the _BOOTDIR1 is defined differently on MS 
Windows platform. I would like to propose a change so that its value 
would be the same as on other platforms. The SLASH_JAVA on MS 
Windows equals to the J: drive. So one could setup the same 
directory tree as on Linux/Solaris, use the subst command to make 
the directory the J: drive, and be able to build the jdk w/o 
specifying the ALT_BOOTDIR variable manually.


Is there any objection to removing the 
$(_system_drive)/jdk$(PREVIOUS_JDK_VERSION) default path?


--
best regards,
Anthony




Re: _BOOTDIR1 on MS Windows platform

2009-04-23 Thread Anthony Petrov

On 4/23/2009 10:15 PM Kelly O'Hair wrote:

The primary reason for the special case on Windows is the unreliability
and slowness of the network connections.
Builds using a local jdk vs. a J:/ mapped can be 5 hours long when
they might normally be 1hr or less. These just come from reports I
have gotten over the years, and it's really depends on the Windows
machine, the network, etc.

Bottom line, builds are always faster and more reliable when all components
are stored on local disk, and this is particularly true on Windows.
I totally agree with that. That's why my J: disk is NOT a network share, 
but a local directory that is mapped on the J: drive using the 'subst' 
command. This directory, however, gets synced with the real /java 
network share from time to time. So not setting the ALT_BOOTDIR does not 
slows down my builds in any way. What's more, it enables me to build by 
just issuing the make command, w/o setting ANY ALT_ variables in most cases.



Having said all that, I ALWAYS set ALT_BOOTDIR to my local copy
(and ALT_JDK_IMPORT_PATH too). So I probably would not be impacted
by this change, but I bet quite a few people rely on this c:/jdk1.6.0
default. With enough warning you might be able to change this.
I believe most people that might possibly be affected by this change 
reside on this mailing list. Who isn't - they probably either use the 
ALT_BOOTDIR, or, in the worst case, will be able to easily identify the 
problem since the reported error will include the /NO_BOOTDIR/ path to 
the javac compiler.


--
best regards,
Anthony




---

I have been recently working on the JavaFX build dependency issues
and although it's more ant based, some of the techniques could apply
to making OpenJDK builds easier. Unfortunately, there is only 24hrs
in a day. :^{

-kto


Anthony Petrov wrote:

Hello,

Back in 2007 we already discussed this issue with Kelly, but 
transitioning to Mercurial just stopped the work. So, I would like to 
revive this now.


Here's a part of the output generated by `grep -r BOOTDIR make/*`:

make/common/shared/Defs-solaris.gmk:  _BOOTDIR1  
=$(SLASH_JAVA)/re/jdk/$(PREVIOUS_JDK_VERSION)/archive/fcs/binaries/$(PLATFORM)-$(ARCH) 

make/common/shared/Defs-solaris.gmk:  _BOOTDIR2  
=$(USRJDKINSTANCES_PATH)/jdk$(PREVIOUS_JDK_VERSION)
make/common/shared/Defs-windows.gmk:  _BOOTDIR1  
=$(_system_drive)/jdk$(PREVIOUS_JDK_VERSION)
make/common/shared/Defs-windows.gmk:  _BOOTDIR2  
=$(USRJDKINSTANCES_PATH)/jdk$(PREVIOUS_JDK_VERSION)
make/common/shared/Defs-linux.gmk:  _BOOTDIR1  
=$(SLASH_JAVA)/re/jdk/$(PREVIOUS_JDK_VERSION)/archive/fcs/binaries/$(PLATFORM)-$(ARCH) 

make/common/shared/Defs-linux.gmk:  _BOOTDIR2  
=$(USRJDKINSTANCES_PATH)/jdk$(PREVIOUS_JDK_VERSION)


One can notice that the _BOOTDIR1 is defined differently on MS Windows 
platform. I would like to propose a change so that its value would be 
the same as on other platforms. The SLASH_JAVA on MS Windows equals to 
the J: drive. So one could setup the same directory tree as on 
Linux/Solaris, use the subst command to make the directory the J: 
drive, and be able to build the jdk w/o specifying the ALT_BOOTDIR 
variable manually.


Is there any objection to removing the 
$(_system_drive)/jdk$(PREVIOUS_JDK_VERSION) default path?


--
best regards,
Anthony


Re: _BOOTDIR1 on MS Windows platform

2009-04-23 Thread Kelly O'Hair

Adding a sanity check warning about J:/ usage would be a nice addition
to this change.

-kto

Jonathan Gibbons wrote:

Kelly,

Perhaps "make sanity" on Windows could give a warning about the use
of network paths, if such is detected.

-- Jon


Kelly O'Hair wrote:

Sorry I'm so slow in responding to this...

The primary reason for the special case on Windows is the unreliability
and slowness of the network connections.
Builds using a local jdk vs. a J:/ mapped can be 5 hours long when
they might normally be 1hr or less. These just come from reports I
have gotten over the years, and it's really depends on the Windows
machine, the network, etc.

Bottom line, builds are always faster and more reliable when all 
components

are stored on local disk, and this is particularly true on Windows.

Having said all that, I ALWAYS set ALT_BOOTDIR to my local copy
(and ALT_JDK_IMPORT_PATH too). So I probably would not be impacted
by this change, but I bet quite a few people rely on this c:/jdk1.6.0
default. With enough warning you might be able to change this.

---

I have been recently working on the JavaFX build dependency issues
and although it's more ant based, some of the techniques could apply
to making OpenJDK builds easier. Unfortunately, there is only 24hrs
in a day. :^{

-kto


Anthony Petrov wrote:

Hello,

Back in 2007 we already discussed this issue with Kelly, but 
transitioning to Mercurial just stopped the work. So, I would like to 
revive this now.


Here's a part of the output generated by `grep -r BOOTDIR make/*`:

make/common/shared/Defs-solaris.gmk:  _BOOTDIR1  
=$(SLASH_JAVA)/re/jdk/$(PREVIOUS_JDK_VERSION)/archive/fcs/binaries/$(PLATFORM)-$(ARCH) 

make/common/shared/Defs-solaris.gmk:  _BOOTDIR2  
=$(USRJDKINSTANCES_PATH)/jdk$(PREVIOUS_JDK_VERSION)
make/common/shared/Defs-windows.gmk:  _BOOTDIR1  
=$(_system_drive)/jdk$(PREVIOUS_JDK_VERSION)
make/common/shared/Defs-windows.gmk:  _BOOTDIR2  
=$(USRJDKINSTANCES_PATH)/jdk$(PREVIOUS_JDK_VERSION)
make/common/shared/Defs-linux.gmk:  _BOOTDIR1  
=$(SLASH_JAVA)/re/jdk/$(PREVIOUS_JDK_VERSION)/archive/fcs/binaries/$(PLATFORM)-$(ARCH) 

make/common/shared/Defs-linux.gmk:  _BOOTDIR2  
=$(USRJDKINSTANCES_PATH)/jdk$(PREVIOUS_JDK_VERSION)


One can notice that the _BOOTDIR1 is defined differently on MS 
Windows platform. I would like to propose a change so that its value 
would be the same as on other platforms. The SLASH_JAVA on MS Windows 
equals to the J: drive. So one could setup the same directory tree as 
on Linux/Solaris, use the subst command to make the directory the J: 
drive, and be able to build the jdk w/o specifying the ALT_BOOTDIR 
variable manually.


Is there any objection to removing the 
$(_system_drive)/jdk$(PREVIOUS_JDK_VERSION) default path?


--
best regards,
Anthony




Re: _BOOTDIR1 on MS Windows platform

2009-04-23 Thread Jonathan Gibbons

Kelly,

Perhaps "make sanity" on Windows could give a warning about the use
of network paths, if such is detected.

-- Jon


Kelly O'Hair wrote:

Sorry I'm so slow in responding to this...

The primary reason for the special case on Windows is the unreliability
and slowness of the network connections.
Builds using a local jdk vs. a J:/ mapped can be 5 hours long when
they might normally be 1hr or less. These just come from reports I
have gotten over the years, and it's really depends on the Windows
machine, the network, etc.

Bottom line, builds are always faster and more reliable when all 
components

are stored on local disk, and this is particularly true on Windows.

Having said all that, I ALWAYS set ALT_BOOTDIR to my local copy
(and ALT_JDK_IMPORT_PATH too). So I probably would not be impacted
by this change, but I bet quite a few people rely on this c:/jdk1.6.0
default. With enough warning you might be able to change this.

---

I have been recently working on the JavaFX build dependency issues
and although it's more ant based, some of the techniques could apply
to making OpenJDK builds easier. Unfortunately, there is only 24hrs
in a day. :^{

-kto


Anthony Petrov wrote:

Hello,

Back in 2007 we already discussed this issue with Kelly, but 
transitioning to Mercurial just stopped the work. So, I would like to 
revive this now.


Here's a part of the output generated by `grep -r BOOTDIR make/*`:

make/common/shared/Defs-solaris.gmk:  _BOOTDIR1  
=$(SLASH_JAVA)/re/jdk/$(PREVIOUS_JDK_VERSION)/archive/fcs/binaries/$(PLATFORM)-$(ARCH) 

make/common/shared/Defs-solaris.gmk:  _BOOTDIR2  
=$(USRJDKINSTANCES_PATH)/jdk$(PREVIOUS_JDK_VERSION)
make/common/shared/Defs-windows.gmk:  _BOOTDIR1  
=$(_system_drive)/jdk$(PREVIOUS_JDK_VERSION)
make/common/shared/Defs-windows.gmk:  _BOOTDIR2  
=$(USRJDKINSTANCES_PATH)/jdk$(PREVIOUS_JDK_VERSION)
make/common/shared/Defs-linux.gmk:  _BOOTDIR1  
=$(SLASH_JAVA)/re/jdk/$(PREVIOUS_JDK_VERSION)/archive/fcs/binaries/$(PLATFORM)-$(ARCH) 

make/common/shared/Defs-linux.gmk:  _BOOTDIR2  
=$(USRJDKINSTANCES_PATH)/jdk$(PREVIOUS_JDK_VERSION)


One can notice that the _BOOTDIR1 is defined differently on MS 
Windows platform. I would like to propose a change so that its value 
would be the same as on other platforms. The SLASH_JAVA on MS Windows 
equals to the J: drive. So one could setup the same directory tree as 
on Linux/Solaris, use the subst command to make the directory the J: 
drive, and be able to build the jdk w/o specifying the ALT_BOOTDIR 
variable manually.


Is there any objection to removing the 
$(_system_drive)/jdk$(PREVIOUS_JDK_VERSION) default path?


--
best regards,
Anthony




Re: _BOOTDIR1 on MS Windows platform

2009-04-23 Thread Kelly O'Hair

Sorry I'm so slow in responding to this...

The primary reason for the special case on Windows is the unreliability
and slowness of the network connections.
Builds using a local jdk vs. a J:/ mapped can be 5 hours long when
they might normally be 1hr or less. These just come from reports I
have gotten over the years, and it's really depends on the Windows
machine, the network, etc.

Bottom line, builds are always faster and more reliable when all components
are stored on local disk, and this is particularly true on Windows.

Having said all that, I ALWAYS set ALT_BOOTDIR to my local copy
(and ALT_JDK_IMPORT_PATH too). So I probably would not be impacted
by this change, but I bet quite a few people rely on this c:/jdk1.6.0
default. With enough warning you might be able to change this.

---

I have been recently working on the JavaFX build dependency issues
and although it's more ant based, some of the techniques could apply
to making OpenJDK builds easier. Unfortunately, there is only 24hrs
in a day. :^{

-kto


Anthony Petrov wrote:

Hello,

Back in 2007 we already discussed this issue with Kelly, but 
transitioning to Mercurial just stopped the work. So, I would like to 
revive this now.


Here's a part of the output generated by `grep -r BOOTDIR make/*`:

make/common/shared/Defs-solaris.gmk:  _BOOTDIR1  
=$(SLASH_JAVA)/re/jdk/$(PREVIOUS_JDK_VERSION)/archive/fcs/binaries/$(PLATFORM)-$(ARCH) 

make/common/shared/Defs-solaris.gmk:  _BOOTDIR2  
=$(USRJDKINSTANCES_PATH)/jdk$(PREVIOUS_JDK_VERSION)
make/common/shared/Defs-windows.gmk:  _BOOTDIR1  
=$(_system_drive)/jdk$(PREVIOUS_JDK_VERSION)
make/common/shared/Defs-windows.gmk:  _BOOTDIR2  
=$(USRJDKINSTANCES_PATH)/jdk$(PREVIOUS_JDK_VERSION)
make/common/shared/Defs-linux.gmk:  _BOOTDIR1  
=$(SLASH_JAVA)/re/jdk/$(PREVIOUS_JDK_VERSION)/archive/fcs/binaries/$(PLATFORM)-$(ARCH) 

make/common/shared/Defs-linux.gmk:  _BOOTDIR2  
=$(USRJDKINSTANCES_PATH)/jdk$(PREVIOUS_JDK_VERSION)


One can notice that the _BOOTDIR1 is defined differently on MS Windows 
platform. I would like to propose a change so that its value would be 
the same as on other platforms. The SLASH_JAVA on MS Windows equals to 
the J: drive. So one could setup the same directory tree as on 
Linux/Solaris, use the subst command to make the directory the J: drive, 
and be able to build the jdk w/o specifying the ALT_BOOTDIR variable 
manually.


Is there any objection to removing the 
$(_system_drive)/jdk$(PREVIOUS_JDK_VERSION) default path?


--
best regards,
Anthony