[llvm-dev] [RFC] Deprecating autoconf: Let's do it!

John Reagan via llvm-dev llvm-dev at lists.llvm.org
Mon Nov 9 08:49:39 PST 2015


As somebody who's currently hosting LLVM on a platform (OpenVMS Itanium) that has configure but not a working CMake (we're working to fix that but there are some tricky issues), I would appreciate if you didn't scrub the existence of configure from the source or the documentation.  Perhaps keep pointers to the older pages and link to them from the downloads pages or something with an "as-is" message?  It would at least give somebody a head start if they didn't have CMake.  Even telling me to yank the script from an older version would be sufficient.

John

------------------------------

Message: 8
Date: Fri, 06 Nov 2015 09:56:42 -0800
From: Chris Bieneman via llvm-dev <llvm-dev at lists.llvm.org>
To: llvm-dev <llvm-dev at lists.llvm.org>
Subject: [llvm-dev] [RFC] Deprecating autoconf: Let's do it!
Message-ID: <4D17078D-A8AA-446F-8FFB-5988583628CB at apple.com>
Content-Type: text/plain; charset="utf-8"

Hi LLVMDev,

Since my last update we’ve landed patches for these issues:
* Bug 14200 - -fno-rtti not in cxxflags given by llvm-config
* Bug 23746 - test-suite lacks CMake support
* Bug 25059 - CMake libllvm.so.$MAJOR.$MINOR shared object name not compatible with ldconfig

On my last thread Jonathan Roelofs pointed out that there is a workaround for Bug 21568 (Cannot add rpath), so I’m making it non-blocking. Which leaves only Bug 23947, which I’m also going to move that to non-blocking because it only applies to building LLVM on MIPS64 hardware.

With those changes we have no issues left blocking deprecating autoconf. There are still some issues we should track and follow through on, but I think all major uses are covered and we can make CMake the only officially supported way to build LLVM.

My proposal at this point is that we should officially deprecate autoconf, and I would like to follow this process for removing it:

(1) Add a note to the release notes for 3.8, and a big warning at the end of the configure script telling people to use CMake
(2) Support autoconf with bug fixes only, no new features for 3.8
(3) After the 3.8 branch remove all the makefiles and have the configure script log a message to use CMake
(4) After the 3.9 branch remove the configure script completely

I’ve attached a patch that handles the first step. Please let me know if this sounds like a reasonable path for the community.

Also, a big “Thank You” to everyone who has contributed patches, reviewed patches, and helped out with this work over the last year. It has been a long road, but the end is in sight!

Thanks,
-Chris






More information about the llvm-dev mailing list