On 2018-02-12 14:57, Thomas Stüfe wrote:
On Mon, Feb 12, 2018 at 2:53 PM, Magnus Ihse Bursie
<magnus.ihse.bur...@oracle.com <mailto:magnus.ihse.bur...@oracle.com>>
wrote:
On 2018-02-12 14:47, Thomas Stüfe wrote:
Hi Magnus,
Thanks a lot for fixing this! I tried my configuration as
described in earlier mails, and the configure scripts gets now
created in the output directory as expected.
Some notes:
- would it be possible to write out the path name of the
generated configure shell script?
Sure, but why? What's the use case? Do you want it only when it is
generated/updated, or always when running configure?
The former. Just as an information.
Ok, I updated the printout to look like this:
Runnable configure script is not present
Generating runnable configure script at
/localhome/hg/jdk-ALT/open/build/.configure-support/generated-configure.sh
Using autoconf at /usr/local/bin/autoconf [autoconf (GNU Autoconf) 2.69]
...
I didn't think this warranted a re-review.
/Magnus
- No concern of mine, because I never do this, but just something
I noted when looking at the change: it seems before the patch it
was possible to start the make from any subdirectory within the
source tree and still have the build configuration written to
source tree root. That would not work anymore, now builds inside
the source tree have to be started from the root of the source tree?
We have never supported running configure in anything but an empty
director or the source tree root. You will end up with something like:
configure: Current directory is /localhome/hg/jdk-ALT/open/src.
configure: Since this is not the source root, configure will
output the configuration here
configure: (as opposed to creating a configuration in
<src_root>/build/<conf-name>).
configure: However, this directory is not empty. This is not
allowed, since it could
configure: seriously mess up just about everything.
Okay. Change is reviewed from my end.
Thanks, Thomas
/Magnus
Kind Regards, Thomas
On Mon, Feb 12, 2018 at 2:09 PM, Magnus Ihse Bursie
<magnus.ihse.bur...@oracle.com
<mailto:magnus.ihse.bur...@oracle.com>> wrote:
In JDK-8195689, the generated-configure.sh was no longer
checked in, but locally generated. The selected location for
generation ($TOPDIR/.build) was not unproblematic for some
use cases. This patch attempts remedy this.
The new behaviour will be this:
* If run from $TOPDIR, the storage directory will be
$TOPDIR/build/.configure-support.
* If run from $CUSTOM_ROOT, the storage directory will be
$CUSTOM_ROOT/build/.configure-support.
* If run from any other directory (about to become the build
output directory for the configuration), the storage
directory will be $PWD/configure-support.
This will allow "rm -rf $TOPDIR/build" to function as before
to remove all build artifacts. It will allow configuration
created in out-of-tree directories to have the script
generated locally.
I could not put the output file in
build/$BUILD/configure-support, since the $BUILD name is not
yet determined. I did not want to put it in
build/configure-support, since that would make it look like a
configuration to the code that enumerates configurations in
build.
I hope this addresses all issues that has been raised.
Bug: https://bugs.openjdk.java.net/browse/JDK-8197571
<https://bugs.openjdk.java.net/browse/JDK-8197571>
WebRev:
http://cr.openjdk.java.net/~ihse/JDK-8197571-change-storage-location-for-generated-configure/webrev.01
<http://cr.openjdk.java.net/%7Eihse/JDK-8197571-change-storage-location-for-generated-configure/webrev.01>
/Magnus