r213010 - Define ENABLE_CLANG_ARCMT in the legacy build system too

Alp Toker alp at nuanti.com
Tue Jul 15 10:08:37 PDT 2014


On 15/07/2014 05:07, Nico Weber wrote:
> On Mon, Jul 14, 2014 at 4:15 PM, Alp Toker <alp at nuanti.com 
> <mailto:alp at nuanti.com>> wrote:
>
>     Author: alp
>     Date: Mon Jul 14 18:15:48 2014
>     New Revision: 213010
>
>     URL: http://llvm.org/viewvc/llvm-project?rev=213010&view=rev
>     Log:
>     Define ENABLE_CLANG_ARCMT in the legacy build system too
>
>
> As far as I know, make is just as supported as cmake, no?

Not really. it hasn't seen any of the feature work CMake has for at 
least a year. You only need to look at SVN logs to see all the hard work 
and hours spent on the CMake setup to make it outclass the other setup.

Platform support is limited compared to CMake, likewise 
cross-compilation has been left behind thanks to the remarkable CMake 
sub-invocation work. No compilation database generation, meaning a poor 
experience for anyone trying to use tooling on the codebase. Broken 
dependency scanning, you have to "touch" files or risk getting 
miscompiles. And there are many Windows developers contributing these 
days -- their enhancements basically only ever get added to CMake while 
Makefiles are left with minimal build fixes.

Then there's bit rot. Various clang tests aren't supported with the 
'makefiles' build -- they're simply not run -- the set of installed 
headers isn't necessarily canonical with makefiles either. Whenever I've 
pinged that makefiles need to track some change or other, nobody's been 
too interested in following up. So users really aren't getting the "full 
LLVM experience" with it at this point, the 'makefiles' bots aren't 
getting full coverage etc.

As far as I can tell it would take a large effort to get the traditional 
build system on par with CMake at this point and nobody's puting in the 
time to actually do that. While supported, the old system definitely 
meets the definition of "legacy". Only commits could have changed that, 
not any amount of hand waving or arguing that it's still the default in 
"buildit" :-)





>
>     Modified:
>         cfe/trunk/tools/libclang/Makefile
>
>     Modified: cfe/trunk/tools/libclang/Makefile
>     URL:
>     http://llvm.org/viewvc/llvm-project/cfe/trunk/tools/libclang/Makefile?rev=213010&r1=213009&r2=213010&view=diff
>     ==============================================================================
>     --- cfe/trunk/tools/libclang/Makefile (original)
>     +++ cfe/trunk/tools/libclang/Makefile Mon Jul 14 18:15:48 2014
>     @@ -37,6 +37,10 @@ ifeq ($(HOST_OS), $(filter $(HOST_OS), L
>              LLVMLibsOptions += -Wl,-soname,lib$(LIBRARYNAME)$(SHLIBEXT)
>      endif
>
>     +ifeq ($(ENABLE_CLANG_ARCMT),1)
>     +  CXX.Flags += -DCLANG_ENABLE_ARCMT
>     +endif
>     +
>      ##===----------------------------------------------------------------------===##
>      # FIXME: This is copied from the 'lto' makefile.  Should we share
>     this?
>      ##===----------------------------------------------------------------------===##
>
>
>     _______________________________________________
>     cfe-commits mailing list
>     cfe-commits at cs.uiuc.edu <mailto:cfe-commits at cs.uiuc.edu>
>     http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
>
>

-- 
http://www.nuanti.com
the browser experts




More information about the cfe-commits mailing list