llvm-project/clang/docs
Reid Kleckner b8000c0ce8 [Windows] Autolink with basenames and add libdir to libpath
Prior to this change, for a few compiler-rt libraries such as ubsan and
the profile library, Clang would embed "-defaultlib:path/to/rt-arch.lib"
into the .drective section of every object compiled with
-finstr-profile-generate or -fsanitize=ubsan as appropriate.

These paths assume that the link step will run from the same working
directory as the compile step. There is also evidence that sometimes the
paths become absolute, such as when clang is run from a different drive
letter from the current working directory. This is fragile, and I'd like
to get away from having paths embedded in the object if possible. Long
ago it was suggested that we use this for ASan, and apparently I felt
the same way back then:
https://reviews.llvm.org/D4428#56536

This is also consistent with how all other autolinking usage works for
PS4, Mac, and Windows: they all use basenames, not paths.

To keep things working for people using the standard GCC driver
workflow, the driver now adds the resource directory to the linker
library search path when it calls the linker. This is enough to make
check-ubsan pass, and seems like a generally good thing.

Users that invoke the linker directly (most clang-cl users) will have to
add clang's resource library directory to their linker search path in
their build system. I'm not sure where I can document this. Ideally I'd
also do it in the MSBuild files, but I can't figure out where they go.
I'd like to start with this for now.

Reviewed By: hans

Differential Revision: https://reviews.llvm.org/D65543
2020-04-28 11:36:21 -07:00
..
CommandGuide
analyzer Revert "[analyzer] On-demand parsing capability for CTU" 2020-04-27 14:27:04 +02:00
tools [docs] dump-ast-matchers removes const from Matcher args and handles template functions slightly better 2020-02-26 01:56:50 +00:00
AddressSanitizer.rst
AutomaticReferenceCounting.rst Rewrite the non-trivial structs section of the ARC spec. 2020-03-06 02:51:45 -05:00
Block-ABI-Apple.rst fix some typos to cycle bots 2020-02-10 13:51:23 -05:00
Block-ABI-Apple.txt
BlockLanguageSpec.rst
CMakeLists.txt fix comment typo to cycle bots 2020-04-06 18:58:27 -04:00
ClangCheck.rst
ClangCommandLineReference.rst [Driver][docs] Document option -mtune as a no-op. 2020-04-22 09:15:48 +01:00
ClangFormat.rst [doc] Fix broken link. NFC. 2020-04-23 22:47:39 +08:00
ClangFormatStyleOptions.rst Revert "clang-format: support aligned nested conditionals formatting" 2020-04-23 09:25:01 +02:00
ClangPlugins.rst Add an attribute plugin example 2020-03-25 14:33:44 +00:00
ClangStaticAnalyzer.rst
ClangTools.rst
ConstantInterpreter.rst [ConstExprPreter] Updated constant interpreter documentation 2020-04-15 11:25:23 +01:00
ControlFlowIntegrity.rst
ControlFlowIntegrityDesign.rst
CrossCompilation.rst
DataFlowSanitizer.rst [libcxx][docs][dfsan] Fix rst rendering related typos 2020-04-27 15:07:11 -07:00
DataFlowSanitizerDesign.rst
DiagnosticsReference.rst
DriverArchitecture.png
DriverInternals.rst
ExternalClangExamples.rst
FAQ.rst
HardwareAssistedAddressSanitizerDesign.rst Update hwasan docs to cover outlined checks and globals. 2020-02-06 17:44:43 -08:00
HowToSetupToolingForLLVM.rst Don't call anyone lazy in the documentation. 2020-03-17 16:33:28 -04:00
InternalsManual.rst Add ParsedAttrInfo::handleDeclAttribute 2020-03-23 13:23:11 +00:00
IntroductionToTheClangAST.rst
ItaniumMangleAbiTags.rst
JSONCompilationDatabase.rst
LTOVisibility.rst
LanguageExtensions.rst [Matrix] Add draft specification for matrix support in Clang. 2020-04-27 18:00:23 +01:00
LeakSanitizer.rst
LibASTImporter.rst Doc: Links should use https 2020-03-22 22:49:33 +01:00
LibASTMatchers.rst
LibASTMatchersReference.html [ASTMatchers] Fixed CastKind being parsed incorrectly for dynamic matchers 2020-04-09 15:09:45 +01:00
LibASTMatchersTutorial.rst
LibFormat.rst
LibTooling.rst
MSVCCompatibility.rst
Makefile.sphinx
MatrixTypes.rst [Matrix] Add draft specification for matrix support in Clang. 2020-04-27 18:00:23 +01:00
MemorySanitizer.rst
Modules.rst
ObjectiveCLiterals.rst
OpenCLSupport.rst
OpenMPSupport.rst [OPENMP][DOCS]Update status of oimplemented constructs, NFC. 2020-04-07 15:45:08 -04:00
PCHInternals.rst
PCHLayout.graffle
PCHLayout.png
RAVFrontendAction.rst
README.txt
RefactoringEngine.rst
ReleaseNotes.rst [Windows] Autolink with basenames and add libdir to libpath 2020-04-28 11:36:21 -07:00
SafeStack.rst
SanitizerCoverage.rst Implement `-fsanitize-coverage-whitelist` and `-fsanitize-coverage-blacklist` for clang 2020-04-10 10:44:03 -07:00
SanitizerSpecialCaseList.rst
SanitizerStats.rst
ShadowCallStack.rst
SourceBasedCodeCoverage.rst fix some typos to cycle bots 2020-02-10 13:51:23 -05:00
ThinLTO.rst
ThreadSafetyAnalysis.rst
ThreadSanitizer.rst
Toolchain.rst
Tooling.rst
UndefinedBehaviorSanitizer.rst Change deprecated -fsanitize-recover flag to apply to all sanitizers, not just UBSan. 2020-04-17 22:37:30 -07:00
UsersManual.rst [Windows] Autolink with basenames and add libdir to libpath 2020-04-28 11:36:21 -07:00
conf.py
doxygen-mainpage.dox
doxygen.cfg.in
index.rst
make.bat

README.txt

See llvm/docs/README.txt