The generated-configure.sh script is dead - autoconf seems to write into the sources in the build process

Volker Simonis volker.simonis at gmail.com
Tue Feb 6 14:53:32 UTC 2018


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.baesken at 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


More information about the build-dev mailing list