This is an archive of the discontinued LLVM Phabricator instance.

Remove autoconf support for building runtime libraries.
ClosedPublic

Authored by beanz on Jan 22 2016, 10:45 AM.

Details

Summary

This patch is provided in preparation for removing autoconf on 1/26. The proposal to remove autoconf on 1/26 was discussed on the llvm-dev thread here: http://lists.llvm.org/pipermail/llvm-dev/2016-January/093875.html

"I am the punishment of God... If [autoconf] had not committed great sins, God would not have sent a punishment like me upon [it]."
-Genghis Khan

Diff Detail

Repository
rL LLVM

Event Timeline

beanz updated this revision to Diff 45707.Jan 22 2016, 10:45 AM
beanz retitled this revision from to Remove autoconf support for building runtime libraries..
beanz updated this object.
beanz added a subscriber: llvm-commits.
samsonov accepted this revision.Jan 22 2016, 1:18 PM
samsonov edited edge metadata.

Do you need to remove sanitizer- and profile- specific parts of make/platform/clang_darwin.mk?
Happy to see it go, provided Apple build process uses CMake builds of sanitizer runtimes now.

This revision is now accepted and ready to land.Jan 22 2016, 1:18 PM
beanz added a subscriber: iains.Jan 22 2016, 1:24 PM

Alexey,

My intention for leaving the makefiles for the builtins is mostly as a reference for people bootstrapping platforms, and the darwin implementation is one of the more complete implementations. I don't expect that the makefiles in their current state will cover any uses not covered by CMake. But I am aware of some use cases (specifically looking at @iains) where out-of-tree modified makefiles are the easiest path forward.

Apple's build has migrated entirely to CMake. There is one outstanding significant limitation in the CMake build system relating to bootstrapping cross-targeting builds. I'm hoping to have a solution to that in a few weeks so we can remove all the makefiles from compiler-rt.

-Chris

Alexey,

My intention for leaving the makefiles for the builtins is mostly as a reference for people bootstrapping platforms, and the darwin implementation is one of the more complete implementations. I don't expect that the makefiles in their current state will cover any uses not covered by CMake. But I am aware of some use cases (specifically looking at @iains) where out-of-tree modified makefiles are the easiest path forward.

I'm fine with leaving the Makefiles for builtins. But if you're removing makefiles for sanitizers, you can also remove stuff like

FUNCTIONS.asan_osx_dynamic := $(AsanFunctions) $(AsanCXXFunctions) \
                              $(InterceptionFunctions) \
                              $(SanitizerCommonFunctions) \
                              $(AsanDynamicFunctions) \
                              $(UbsanFunctions) $(UbsanCXXFunctions)

from make/platform/clang_darwin.mk

Apple's build has migrated entirely to CMake. There is one outstanding significant limitation in the CMake build system relating to bootstrapping cross-targeting builds. I'm hoping to have a solution to that in a few weeks so we can remove all the makefiles from compiler-rt.

-Chris

beanz updated this revision to Diff 45738.Jan 22 2016, 1:48 PM
beanz edited edge metadata.

Removed sanitizer and profile runtime library support from clang_darwin.mk

Awesome, thanks!

echristo accepted this revision.Jan 26 2016, 11:54 AM
echristo edited edge metadata.
This revision was automatically updated to reflect the committed changes.
compiler-rt/trunk/lib/lsan/Makefile.mk