[all-commits] [llvm/llvm-project] 062f6f: [InstallAPI] Support mutually exclusive parse opti...
Cyndy Ishida via All-commits
all-commits at lists.llvm.org
Fri May 10 09:36:03 PDT 2024
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 062f6fe324e98b0994e49bc14eb45b20aa0807c4
https://github.com/llvm/llvm-project/commit/062f6fe324e98b0994e49bc14eb45b20aa0807c4
Author: Cyndy Ishida <cyndy_ishida at apple.com>
Date: 2024-05-10 (Fri, 10 May 2024)
Changed paths:
M clang/include/clang/Basic/DiagnosticInstallAPIKinds.td
M clang/include/clang/InstallAPI/MachO.h
A clang/test/InstallAPI/Inputs/Foundation/Foundation.framework/Modules/module.modulemap
A clang/test/InstallAPI/Inputs/LibFoo/usr/include/foo.h
A clang/test/InstallAPI/Inputs/LibFoo/usr/include/macro_defs.h
A clang/test/InstallAPI/Inputs/LibFoo/usr/include/public.h
A clang/test/InstallAPI/Inputs/Zippered/Zippered.framework/Headers/Zippered.h
A clang/test/InstallAPI/Inputs/Zippered/Zippered.framework/PrivateHeaders/Zippered_Private.h
A clang/test/InstallAPI/Inputs/Zippered/Zippered.tbd
A clang/test/InstallAPI/Inputs/Zippered/Zippered.yaml
A clang/test/InstallAPI/exclusive-passes-2.test
A clang/test/InstallAPI/exclusive-passes-platform.test
A clang/test/InstallAPI/exclusive-passes-zippered.test
A clang/test/InstallAPI/exclusive-passes.test
A clang/test/InstallAPI/invalid-exclusive-passes.test
A clang/test/InstallAPI/project-header-only-args.test
M clang/tools/clang-installapi/ClangInstallAPI.cpp
M clang/tools/clang-installapi/InstallAPIOpts.td
M clang/tools/clang-installapi/Options.cpp
M clang/tools/clang-installapi/Options.h
M llvm/include/llvm/TextAPI/Utils.h
M llvm/lib/TextAPI/Utils.cpp
Log Message:
-----------
[InstallAPI] Support mutually exclusive parse options (#90686)
Projects like libc use mutually exclusive macros to compile files
multiple times and then merge the result into the final library. For
installapi to accept these, we'd need to parse the same declarations in
different ways. This patch adds the basic pipelining for installapi to
create the correct TBD file.
* -Xproject allows: -fmodules, -fobjc-arc, fvisibility=hidden, prefix
headers
* -Xlabel allows: -D and -U settings
* Error on 'private' and 'public' labels -X<label>
* Xplatform allows: -iframework <path> This is to support the case where
zippered frameworks want to pass in iOSSupport search path.
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list