On 2018-02-06 18:22, Erik Joelsson wrote:
Hello Volker,

I think this is a reasonable idea, but have opinions on the implementation. I think this should apply even if you have a CUSTOM_ROOT defined. Thinking some more on this, isn't it always true that you want it in $PWD/.build? Or if we want to get really strict about it, if PWD is a subdir of TOPDIR (or CUSTOM_ROOT), then use TOPDIR (or CUSTOM_ROOT), otherwise use PWD.
I don't think we allow running configure in anything else than the TOPDIR (or CUSTOM_ROOT), or an empty directory. Once upon a time, TOPDIR/make or TOPDIR/common/autoconf was also supported, but I removed that some time ago.

But I agree with your analysis that this should be used even if CUSTOM_ROOT is defined.

/Magnus

/Erik


On 2018-02-06 06:53, Volker Simonis wrote:
Hi,

as Matthias wrote, we're usually running configure from a newly
created build directory which is outside the source tree. Also, the
build user who calls configure may differ from the user owning the
source tree. I'd therefor like to propose the following small change
which checks from where 'configure' was called. If configure was
called from within the source tree, nothing changes, otherwise we will
create the '.build' helper directory which contains
'generated-configure.sh' right in the current build directory:

diff -r fd40b0b3d849 make/autoconf/configure
--- a/make/autoconf/configure   Tue Feb 06 23:49:10 2018 +0530
+++ b/make/autoconf/configure   Tue Feb 06 15:46:48 2018 +0100
@@ -52,7 +52,16 @@
    fi
    build_support_dir="$CUSTOM_ROOT/.build"
  else
-  build_support_dir="$TOPDIR/.build"
+  # Test from where we are running configure, in or outside of src root.
+  if test "x$TOPDIR" = `pwd`; then
+    # We are running configure from the src root.
+    # Create 'build_support_dir' under $TOPDIR
+    build_support_dir="$TOPDIR/.build"
+  else
+    # We are running configure from outside of the src dir.
+    # Create 'build_support_dir' in the current directory.
+    build_support_dir=".build"
+  fi
  fi

  conf_script_dir="$TOPDIR/make/autoconf"

Would you be OK with this change? If nobody complains, I will open a
JBS issue and submit a webrev for formal review.

Regards,
Volker


On Tue, Feb 6, 2018 at 2:27 PM, Baesken, Matthias
<matthias.baes...@sap.com> wrote:
Hello I noticed  that   after replacing   generated-configure.sh   and  using autoconf , the  build process  writes into the sources .
Error  looks like this   :

Runnable configure script is not present
Generating runnable configure script
mkdir: cannot create directory `/openjdk/linuxppc64/jdk/.build': Permission denied


( I run  configure  from  a separate  generation directory  )

Is there a way around this  currently  (e.g.   placing the .build folder  where configure is started and not into the sources ?) ?


Thanks ,Matthias


Reply via email to