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





Reply via email to