[llvm] r236399 - Deprecate in-source autotools builds

Jonathan Roelofs jonathan at codesourcery.com
Sun May 3 19:04:54 PDT 2015


Author: jroelofs
Date: Sun May  3 21:04:54 2015
New Revision: 236399

URL: http://llvm.org/viewvc/llvm-project?rev=236399&view=rev
Log:
Deprecate in-source autotools builds

This is a followup from:
http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20150323/268067.html

Upgrade instructions:
  $ mv llvm/include/llvm/Config/config.h ./config.h.BACKUP
  # copy the configure line from line 7 of llvm/config.log
  # (for example: `$ ./configure --no-create --no-recursion`)
  $ mkdir build
  $ cd build
  # run the configure line, but this time with '../llvm' at the beginning:
  $ ../llvm/configure --no-create --no-recursion

These warnings will soon be turned into hard errors after a week.  Speak up now
if this is going to be a problem for you.

Modified:
    llvm/trunk/Makefile.config.in
    llvm/trunk/autoconf/configure.ac
    llvm/trunk/configure

Modified: llvm/trunk/Makefile.config.in
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/Makefile.config.in?rev=236399&r1=236398&r2=236399&view=diff
==============================================================================
--- llvm/trunk/Makefile.config.in (original)
+++ llvm/trunk/Makefile.config.in Sun May  3 21:04:54 2015
@@ -58,6 +58,22 @@ LLVM_OBJ_ROOT   := $(call realpath, @abs
 PROJ_SRC_ROOT   := $(LLVM_SRC_ROOT)
 PROJ_SRC_DIR    := $(LLVM_SRC_ROOT)$(patsubst $(PROJ_OBJ_ROOT)%,%,$(PROJ_OBJ_DIR))
 
+# FIXME: This is temporary during the grace period where in-source builds are
+# deprecated. Convert to a hard error when that period is up.
+#
+# See: http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20150323/268067.html
+ifeq ($(LLVM_SRC_ROOT), $(LLVM_OBJ_ROOT))
+  $(warning ######################################################################################)
+  $(warning #                                                                                    #)
+  $(warning #                                   WARNING                                          #)
+  $(warning #                                                                                    #)
+  $(warning #                        In-source builds are deprecated.                            #)
+  $(warning #                                                                                    #)
+  $(warning #               Please configure from a separate build directory!                    #)
+  $(warning #                                                                                    #)
+  $(warning ######################################################################################)
+endif
+
 ifneq ($(CLANG_SRC_ROOT),)
   CLANG_SRC_ROOT:= $(call realpath, $(CLANG_SRC_ROOT))
   PROJ_SRC_DIR  := $(patsubst $(LLVM_SRC_ROOT)/tools/clang%,$(CLANG_SRC_ROOT)%,$(PROJ_SRC_DIR))

Modified: llvm/trunk/autoconf/configure.ac
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/autoconf/configure.ac?rev=236399&r1=236398&r2=236399&view=diff
==============================================================================
--- llvm/trunk/autoconf/configure.ac (original)
+++ llvm/trunk/autoconf/configure.ac Sun May  3 21:04:54 2015
@@ -73,6 +73,19 @@ if test ${srcdir} != "." ; then
   fi
 fi
 
+dnl Quit if it is an in-source build
+if test ${srcdir} == "." ; then
+  AC_MSG_WARN([**************************************************************************************])
+  AC_MSG_WARN([*                                                                                    *])
+  AC_MSG_WARN([*                                   WARNING                                          *])
+  AC_MSG_WARN([*                                                                                    *])
+  AC_MSG_WARN([*                        In-source builds are deprecated.                            *])
+  AC_MSG_WARN([*                                                                                    *])
+  AC_MSG_WARN([*               Please configure from a separate build directory!                    *])
+  AC_MSG_WARN([*                                                                                    *])
+  AC_MSG_WARN([**************************************************************************************])
+fi
+
 dnl Default to empty (i.e. assigning the null string to) CFLAGS and CXXFLAGS,
 dnl instead of the autoconf default (for example, '-g -O2' for CC=gcc).
 : ${CFLAGS=}

Modified: llvm/trunk/configure
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/configure?rev=236399&r1=236398&r2=236399&view=diff
==============================================================================
--- llvm/trunk/configure (original)
+++ llvm/trunk/configure Sun May  3 21:04:54 2015
@@ -2030,6 +2030,27 @@ echo "$as_me: error: Already configured
   fi
 fi
 
+if test ${srcdir} == "." ; then
+  { echo "$as_me:$LINENO: WARNING: **************************************************************************************" >&5
+echo "$as_me: WARNING: **************************************************************************************" >&2;}
+  { echo "$as_me:$LINENO: WARNING: *                                                                                    *" >&5
+echo "$as_me: WARNING: *                                                                                    *" >&2;}
+  { echo "$as_me:$LINENO: WARNING: *                                   WARNING                                          *" >&5
+echo "$as_me: WARNING: *                                   WARNING                                          *" >&2;}
+  { echo "$as_me:$LINENO: WARNING: *                                                                                    *" >&5
+echo "$as_me: WARNING: *                                                                                    *" >&2;}
+  { echo "$as_me:$LINENO: WARNING: *                        In-source builds are deprecated.                            *" >&5
+echo "$as_me: WARNING: *                        In-source builds are deprecated.                            *" >&2;}
+  { echo "$as_me:$LINENO: WARNING: *                                                                                    *" >&5
+echo "$as_me: WARNING: *                                                                                    *" >&2;}
+  { echo "$as_me:$LINENO: WARNING: *               Please configure from a separate build directory!                    *" >&5
+echo "$as_me: WARNING: *               Please configure from a separate build directory!                    *" >&2;}
+  { echo "$as_me:$LINENO: WARNING: *                                                                                    *" >&5
+echo "$as_me: WARNING: *                                                                                    *" >&2;}
+  { echo "$as_me:$LINENO: WARNING: **************************************************************************************" >&5
+echo "$as_me: WARNING: **************************************************************************************" >&2;}
+fi
+
 : ${CFLAGS=}
 : ${CXXFLAGS=}
 





More information about the llvm-commits mailing list