-
Notifications
You must be signed in to change notification settings - Fork 4
Support isystem flag #10
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
In addition to `-I`, this adds support for the [`-isystem` flag][-isystem flag]. The main difference between `-I` and `-isystem` is that warnings for the latter will be suppressed. This is useful when using strict warnings for linting, whilst avoiding warnings from third party headers to show up. [-isystem flag]: https://clang.llvm.org/docs/ClangCommandLineReference.html#cmdoption-clang-isystem-directory
Hi @davidaurelio! We're usually hesitant when adding new flags. "clang" has loads of them. Do you think "isystem" is so useful that we should bake it in? (Honestly the "-I" is probably there because it was always here, and removing would be breaking.) Is it very awkward to just set and use "args" here? |
Hi @kaste, I can absolutely understand that point. However, there’s a couple of reasons why I think this is valuable – essentially the same reasons why
|
I have another local modification: adding separate configurations for Objective-C and Obj-C++. Worth a PR? Or would you expect users to handle that via Also, can I convince you to accept a PR for SL-javac that adds an array for paths? |
👍 that's a good reason. Obviously too long to remember it, but there was clearly non consensus what the default "args" should be, even for "-fsyntax-only". So everything is available via "args". If you already have the local mod, just push it. The same for "javac" of course. Personally I prefer the list format esp. when it comes to paths. |
Thanks. The other changes are on my work machine. I will push them as soon as I get to it. |
This adds `-cp` as an additional configuration option to configure the classpath for *javac.* Per the discussion on SublimeLinter/SublimeLinter-clang#10 it is clear that it is preferred to *not* extra configuration option beyond `args`. However, specifying a long list of paths for *javac* is tedious, as elements are colon-separated and thus cannot be individual elements in an `args` list. This is completely optional, and offers better maintainability for users working on big projects. Additionally, it allows to set general flags in the preferences of SublimeLinter, while still offering the possibility of setting custom paths for every project. It is enough to offer `-cp`, as if `-sourcepath` or `-processorpath` are not specified, the classpath is searched for source files and annotation processors, respectively. * * * A comparison for [Litho][]: ``` // -cp "-cp": [ "${project_path}/litho-intellij-plugin/src/main/java", "${project_path}/litho-sections-widget/src/main/java", "${project_path}/litho-processor/src/main/java", "${project_path}/litho-rendercore/src/main/java", "${project_path}/litho-testing/src/main/java", "${project_path}/litho-instrumentation-tests/src/main/java", "${project_path}/litho-core/src/main/java", "${project_path}/codelabs/props/app/src/main/java", "${project_path}/codelabs/layout-spec/app/src/main/java", "${project_path}/codelabs/hello-world/app/src/main/java", "${project_path}/codelabs/hscroll-height/app/src/main/java", "${project_path}/codelabs/state/app/src/main/java", "${project_path}/codelabs/updating-ui/app/src/main/java", "${project_path}/codelabs/save-state-rotation/app/src/main/java", "${project_path}/codelabs/textinput-keyboard/app/src/main/java", "${project_path}/codelabs/mount-spec/app/src/main/java", "${project_path}/codelabs/events/app/src/main/java", "${project_path}/codelabs/group-section-lifecycle/app/src/main/java", "${project_path}/litho-sections-core/src/main/java", "${project_path}/sample-codelab/src/main/java", "${project_path}/litho-sections-debug/src/main/java", "${project_path}/litho-annotations/src/main/java", "${project_path}/sample-barebones/src/main/java", "${project_path}/litho-widget/src/main/java", "${project_path}/litho-it/specs/src/main/java", "${project_path}/litho-it/processor/src/main/java", "${project_path}/litho-it/src/main/java", "${project_path}/sample-barebones-kotlin/src/main/java", "${project_path}/sample/src/main/java", "${project_path}/lib/yoga/src/main/java", "${project_path}/litho-espresso/src/main/java", "${project_path}/litho-sections-annotations/src/main/java", "${project_path}/litho-fresco/src/main/java", "${project_path}/litho-sections-processor/src/main/java", ] // args "args": [ "-sourcepath", "${project_path}/litho-intellij-plugin/src/main/java:${project_path}/litho-sections-widget/src/main/java:${project_path}/litho-processor/src/main/java:${project_path}/litho-rendercore/src/main/java:${project_path}/litho-testing/src/main/java:${project_path}/litho-instrumentation-tests/src/main/java:${project_path}/litho-core/src/main/java:${project_path}/codelabs/props/app/src/main/java:${project_path}/codelabs/layout-spec/app/src/main/java:${project_path}/codelabs/hello-world/app/src/main/java:${project_path}/codelabs/hscroll-height/app/src/main/java:${project_path}/codelabs/state/app/src/main/java:${project_path}/codelabs/updating-ui/app/src/main/java:${project_path}/codelabs/save-state-rotation/app/src/main/java:${project_path}/codelabs/textinput-keyboard/app/src/main/java:${project_path}/codelabs/mount-spec/app/src/main/java:${project_path}/codelabs/events/app/src/main/java:${project_path}/codelabs/group-section-lifecycle/app/src/main/java:${project_path}/litho-sections-core/src/main/java:${project_path}/sample-codelab/src/main/java:${project_path}/litho-sections-debug/src/main/java:${project_path}/litho-annotations/src/main/java:${project_path}/sample-barebones/src/main/java:${project_path}/litho-widget/src/main/java:${project_path}/litho-it/specs/src/main/java:${project_path}/litho-it/processor/src/main/java:${project_path}/litho-it/src/main/java:${project_path}/sample-barebones-kotlin/src/main/java:${project_path}/sample/src/main/java:${project_path}/lib/yoga/src/main/java:${project_path}/litho-espresso/src/main/java:${project_path}/litho-sections-annotations/src/main/java:${project_path}/litho-fresco/src/main/java:${project_path}/litho-sections-processor/src/main/java", ] ``` [Litho]: https://github.com/facebook/litho/
This adds `-cp` as an additional configuration option to configure the classpath for *javac.* Per the discussion on SublimeLinter/SublimeLinter-clang#10 it became clear that it is preferred to *not* add extra configuration option beyond `args`. However, specifying a long list of paths for *javac* is tedious, as elements are colon-separated and thus cannot be individual elements in an `args` list. This is completely optional, and offers better maintainability for users working on big projects. Additionally, it allows to set general flags in the preferences of SublimeLinter, while still offering the possibility of setting custom paths for every project. It is enough to offer `-cp`, as if `-sourcepath` or `-processorpath` are not specified, the classpath is searched for source files and annotation processors, respectively. * * * A comparison for [Litho][]: ``` // -cp "-cp": [ "${project_path}/litho-intellij-plugin/src/main/java", "${project_path}/litho-sections-widget/src/main/java", "${project_path}/litho-processor/src/main/java", "${project_path}/litho-rendercore/src/main/java", "${project_path}/litho-testing/src/main/java", "${project_path}/litho-instrumentation-tests/src/main/java", "${project_path}/litho-core/src/main/java", "${project_path}/codelabs/props/app/src/main/java", "${project_path}/codelabs/layout-spec/app/src/main/java", "${project_path}/codelabs/hello-world/app/src/main/java", "${project_path}/codelabs/hscroll-height/app/src/main/java", "${project_path}/codelabs/state/app/src/main/java", "${project_path}/codelabs/updating-ui/app/src/main/java", "${project_path}/codelabs/save-state-rotation/app/src/main/java", "${project_path}/codelabs/textinput-keyboard/app/src/main/java", "${project_path}/codelabs/mount-spec/app/src/main/java", "${project_path}/codelabs/events/app/src/main/java", "${project_path}/codelabs/group-section-lifecycle/app/src/main/java", "${project_path}/litho-sections-core/src/main/java", "${project_path}/sample-codelab/src/main/java", "${project_path}/litho-sections-debug/src/main/java", "${project_path}/litho-annotations/src/main/java", "${project_path}/sample-barebones/src/main/java", "${project_path}/litho-widget/src/main/java", "${project_path}/litho-it/specs/src/main/java", "${project_path}/litho-it/processor/src/main/java", "${project_path}/litho-it/src/main/java", "${project_path}/sample-barebones-kotlin/src/main/java", "${project_path}/sample/src/main/java", "${project_path}/lib/yoga/src/main/java", "${project_path}/litho-espresso/src/main/java", "${project_path}/litho-sections-annotations/src/main/java", "${project_path}/litho-fresco/src/main/java", "${project_path}/litho-sections-processor/src/main/java", ] // args "args": [ "-sourcepath", "${project_path}/litho-intellij-plugin/src/main/java:${project_path}/litho-sections-widget/src/main/java:${project_path}/litho-processor/src/main/java:${project_path}/litho-rendercore/src/main/java:${project_path}/litho-testing/src/main/java:${project_path}/litho-instrumentation-tests/src/main/java:${project_path}/litho-core/src/main/java:${project_path}/codelabs/props/app/src/main/java:${project_path}/codelabs/layout-spec/app/src/main/java:${project_path}/codelabs/hello-world/app/src/main/java:${project_path}/codelabs/hscroll-height/app/src/main/java:${project_path}/codelabs/state/app/src/main/java:${project_path}/codelabs/updating-ui/app/src/main/java:${project_path}/codelabs/save-state-rotation/app/src/main/java:${project_path}/codelabs/textinput-keyboard/app/src/main/java:${project_path}/codelabs/mount-spec/app/src/main/java:${project_path}/codelabs/events/app/src/main/java:${project_path}/codelabs/group-section-lifecycle/app/src/main/java:${project_path}/litho-sections-core/src/main/java:${project_path}/sample-codelab/src/main/java:${project_path}/litho-sections-debug/src/main/java:${project_path}/litho-annotations/src/main/java:${project_path}/sample-barebones/src/main/java:${project_path}/litho-widget/src/main/java:${project_path}/litho-it/specs/src/main/java:${project_path}/litho-it/processor/src/main/java:${project_path}/litho-it/src/main/java:${project_path}/sample-barebones-kotlin/src/main/java:${project_path}/sample/src/main/java:${project_path}/lib/yoga/src/main/java:${project_path}/litho-espresso/src/main/java:${project_path}/litho-sections-annotations/src/main/java:${project_path}/litho-fresco/src/main/java:${project_path}/litho-sections-processor/src/main/java", ] ``` [Litho]: https://github.com/facebook/litho/
This adds `-cp` as an additional configuration option to configure the classpath for *javac.* Per the discussion on SublimeLinter/SublimeLinter-clang#10 it became clear that it is preferred to *not* add extra configuration option beyond `args`. However, specifying a long list of paths for *javac* is tedious, as elements are colon-separated and thus cannot be individual elements in an `args` list. This is completely optional, and offers better maintainability for users working on big projects. Additionally, it allows to set general flags in the preferences of SublimeLinter, while still offering the possibility of setting custom paths for every project. It is enough to offer `-cp`, as if `-sourcepath` or `-processorpath` are not specified, the classpath is searched for source files and annotation processors, respectively. * * * A comparison for [Litho][]: ``` // -cp "-cp": [ "${project_path}/litho-intellij-plugin/src/main/java", "${project_path}/litho-sections-widget/src/main/java", "${project_path}/litho-processor/src/main/java", "${project_path}/litho-rendercore/src/main/java", "${project_path}/litho-testing/src/main/java", "${project_path}/litho-instrumentation-tests/src/main/java", "${project_path}/litho-core/src/main/java", "${project_path}/codelabs/props/app/src/main/java", "${project_path}/codelabs/layout-spec/app/src/main/java", "${project_path}/codelabs/hello-world/app/src/main/java", "${project_path}/codelabs/hscroll-height/app/src/main/java", "${project_path}/codelabs/state/app/src/main/java", "${project_path}/codelabs/updating-ui/app/src/main/java", "${project_path}/codelabs/save-state-rotation/app/src/main/java", "${project_path}/codelabs/textinput-keyboard/app/src/main/java", "${project_path}/codelabs/mount-spec/app/src/main/java", "${project_path}/codelabs/events/app/src/main/java", "${project_path}/codelabs/group-section-lifecycle/app/src/main/java", "${project_path}/litho-sections-core/src/main/java", "${project_path}/sample-codelab/src/main/java", "${project_path}/litho-sections-debug/src/main/java", "${project_path}/litho-annotations/src/main/java", "${project_path}/sample-barebones/src/main/java", "${project_path}/litho-widget/src/main/java", "${project_path}/litho-it/specs/src/main/java", "${project_path}/litho-it/processor/src/main/java", "${project_path}/litho-it/src/main/java", "${project_path}/sample-barebones-kotlin/src/main/java", "${project_path}/sample/src/main/java", "${project_path}/lib/yoga/src/main/java", "${project_path}/litho-espresso/src/main/java", "${project_path}/litho-sections-annotations/src/main/java", "${project_path}/litho-fresco/src/main/java", "${project_path}/litho-sections-processor/src/main/java", ] // args "args": [ "-sourcepath", "${project_path}/litho-intellij-plugin/src/main/java:${project_path}/litho-sections-widget/src/main/java:${project_path}/litho-processor/src/main/java:${project_path}/litho-rendercore/src/main/java:${project_path}/litho-testing/src/main/java:${project_path}/litho-instrumentation-tests/src/main/java:${project_path}/litho-core/src/main/java:${project_path}/codelabs/props/app/src/main/java:${project_path}/codelabs/layout-spec/app/src/main/java:${project_path}/codelabs/hello-world/app/src/main/java:${project_path}/codelabs/hscroll-height/app/src/main/java:${project_path}/codelabs/state/app/src/main/java:${project_path}/codelabs/updating-ui/app/src/main/java:${project_path}/codelabs/save-state-rotation/app/src/main/java:${project_path}/codelabs/textinput-keyboard/app/src/main/java:${project_path}/codelabs/mount-spec/app/src/main/java:${project_path}/codelabs/events/app/src/main/java:${project_path}/codelabs/group-section-lifecycle/app/src/main/java:${project_path}/litho-sections-core/src/main/java:${project_path}/sample-codelab/src/main/java:${project_path}/litho-sections-debug/src/main/java:${project_path}/litho-annotations/src/main/java:${project_path}/sample-barebones/src/main/java:${project_path}/litho-widget/src/main/java:${project_path}/litho-it/specs/src/main/java:${project_path}/litho-it/processor/src/main/java:${project_path}/litho-it/src/main/java:${project_path}/sample-barebones-kotlin/src/main/java:${project_path}/sample/src/main/java:${project_path}/lib/yoga/src/main/java:${project_path}/litho-espresso/src/main/java:${project_path}/litho-sections-annotations/src/main/java:${project_path}/litho-fresco/src/main/java:${project_path}/litho-sections-processor/src/main/java", ] ``` [Litho]: https://github.com/facebook/litho/
This adds `cp` as an additional configuration option to configure the classpath for *javac.* Per the discussion on SublimeLinter/SublimeLinter-clang#10 it became clear that it is preferred to *not* add extra configuration option beyond `args`. However, specifying a long list of paths for *javac* is tedious, as elements are colon-separated and thus cannot be individual elements in an `args` list. This is completely optional, and offers better maintainability for users working on big projects. Additionally, it allows to set general flags in the preferences of SublimeLinter, while still offering the possibility of setting custom paths for every project. It is enough to offer `cp`, because when `-sourcepath` or `-processorpath` are not specified, the classpath is searched for source files and annotation processors, respectively. * * * A comparison for [Litho][]: ``` // -cp "cp": [ "${project_path}/litho-intellij-plugin/src/main/java", "${project_path}/litho-sections-widget/src/main/java", "${project_path}/litho-processor/src/main/java", "${project_path}/litho-rendercore/src/main/java", "${project_path}/litho-testing/src/main/java", "${project_path}/litho-instrumentation-tests/src/main/java", "${project_path}/litho-core/src/main/java", "${project_path}/codelabs/props/app/src/main/java", "${project_path}/codelabs/layout-spec/app/src/main/java", "${project_path}/codelabs/hello-world/app/src/main/java", "${project_path}/codelabs/hscroll-height/app/src/main/java", "${project_path}/codelabs/state/app/src/main/java", "${project_path}/codelabs/updating-ui/app/src/main/java", "${project_path}/codelabs/save-state-rotation/app/src/main/java", "${project_path}/codelabs/textinput-keyboard/app/src/main/java", "${project_path}/codelabs/mount-spec/app/src/main/java", "${project_path}/codelabs/events/app/src/main/java", "${project_path}/codelabs/group-section-lifecycle/app/src/main/java", "${project_path}/litho-sections-core/src/main/java", "${project_path}/sample-codelab/src/main/java", "${project_path}/litho-sections-debug/src/main/java", "${project_path}/litho-annotations/src/main/java", "${project_path}/sample-barebones/src/main/java", "${project_path}/litho-widget/src/main/java", "${project_path}/litho-it/specs/src/main/java", "${project_path}/litho-it/processor/src/main/java", "${project_path}/litho-it/src/main/java", "${project_path}/sample-barebones-kotlin/src/main/java", "${project_path}/sample/src/main/java", "${project_path}/lib/yoga/src/main/java", "${project_path}/litho-espresso/src/main/java", "${project_path}/litho-sections-annotations/src/main/java", "${project_path}/litho-fresco/src/main/java", "${project_path}/litho-sections-processor/src/main/java", ] // args "args": [ "-sourcepath", "${project_path}/litho-intellij-plugin/src/main/java:${project_path}/litho-sections-widget/src/main/java:${project_path}/litho-processor/src/main/java:${project_path}/litho-rendercore/src/main/java:${project_path}/litho-testing/src/main/java:${project_path}/litho-instrumentation-tests/src/main/java:${project_path}/litho-core/src/main/java:${project_path}/codelabs/props/app/src/main/java:${project_path}/codelabs/layout-spec/app/src/main/java:${project_path}/codelabs/hello-world/app/src/main/java:${project_path}/codelabs/hscroll-height/app/src/main/java:${project_path}/codelabs/state/app/src/main/java:${project_path}/codelabs/updating-ui/app/src/main/java:${project_path}/codelabs/save-state-rotation/app/src/main/java:${project_path}/codelabs/textinput-keyboard/app/src/main/java:${project_path}/codelabs/mount-spec/app/src/main/java:${project_path}/codelabs/events/app/src/main/java:${project_path}/codelabs/group-section-lifecycle/app/src/main/java:${project_path}/litho-sections-core/src/main/java:${project_path}/sample-codelab/src/main/java:${project_path}/litho-sections-debug/src/main/java:${project_path}/litho-annotations/src/main/java:${project_path}/sample-barebones/src/main/java:${project_path}/litho-widget/src/main/java:${project_path}/litho-it/specs/src/main/java:${project_path}/litho-it/processor/src/main/java:${project_path}/litho-it/src/main/java:${project_path}/sample-barebones-kotlin/src/main/java:${project_path}/sample/src/main/java:${project_path}/lib/yoga/src/main/java:${project_path}/litho-espresso/src/main/java:${project_path}/litho-sections-annotations/src/main/java:${project_path}/litho-fresco/src/main/java:${project_path}/litho-sections-processor/src/main/java", ] ``` [Litho]: https://github.com/facebook/litho/
This adds `cp` as an additional configuration option to configure the classpath for *javac.* Per the discussion on SublimeLinter/SublimeLinter-clang#10 it became clear that it is preferred to *not* add extra configuration option beyond `args`. However, specifying a long list of paths for *javac* is tedious, as elements are colon-separated and thus cannot be individual elements in an `args` list. This is completely optional, and offers better maintainability for users working on big projects. Additionally, it allows to set general flags in the preferences of SublimeLinter, while still offering the possibility of setting custom paths for every project. It is enough to offer `cp`, because when `-sourcepath` or `-processorpath` are not specified, the classpath is searched for source files and annotation processors, respectively. * * * A comparison for [Litho][]: ``` // -cp "cp": [ "${project_path}/litho-intellij-plugin/src/main/java", "${project_path}/litho-sections-widget/src/main/java", "${project_path}/litho-processor/src/main/java", "${project_path}/litho-rendercore/src/main/java", "${project_path}/litho-testing/src/main/java", "${project_path}/litho-instrumentation-tests/src/main/java", "${project_path}/litho-core/src/main/java", "${project_path}/codelabs/props/app/src/main/java", "${project_path}/codelabs/layout-spec/app/src/main/java", "${project_path}/codelabs/hello-world/app/src/main/java", "${project_path}/codelabs/hscroll-height/app/src/main/java", "${project_path}/codelabs/state/app/src/main/java", "${project_path}/codelabs/updating-ui/app/src/main/java", "${project_path}/codelabs/save-state-rotation/app/src/main/java", "${project_path}/codelabs/textinput-keyboard/app/src/main/java", "${project_path}/codelabs/mount-spec/app/src/main/java", "${project_path}/codelabs/events/app/src/main/java", "${project_path}/codelabs/group-section-lifecycle/app/src/main/java", "${project_path}/litho-sections-core/src/main/java", "${project_path}/sample-codelab/src/main/java", "${project_path}/litho-sections-debug/src/main/java", "${project_path}/litho-annotations/src/main/java", "${project_path}/sample-barebones/src/main/java", "${project_path}/litho-widget/src/main/java", "${project_path}/litho-it/specs/src/main/java", "${project_path}/litho-it/processor/src/main/java", "${project_path}/litho-it/src/main/java", "${project_path}/sample-barebones-kotlin/src/main/java", "${project_path}/sample/src/main/java", "${project_path}/lib/yoga/src/main/java", "${project_path}/litho-espresso/src/main/java", "${project_path}/litho-sections-annotations/src/main/java", "${project_path}/litho-fresco/src/main/java", "${project_path}/litho-sections-processor/src/main/java", ] // args "args": [ "-sourcepath", "${project_path}/litho-intellij-plugin/src/main/java:${project_path}/litho-sections-widget/src/main/java:${project_path}/litho-processor/src/main/java:${project_path}/litho-rendercore/src/main/java:${project_path}/litho-testing/src/main/java:${project_path}/litho-instrumentation-tests/src/main/java:${project_path}/litho-core/src/main/java:${project_path}/codelabs/props/app/src/main/java:${project_path}/codelabs/layout-spec/app/src/main/java:${project_path}/codelabs/hello-world/app/src/main/java:${project_path}/codelabs/hscroll-height/app/src/main/java:${project_path}/codelabs/state/app/src/main/java:${project_path}/codelabs/updating-ui/app/src/main/java:${project_path}/codelabs/save-state-rotation/app/src/main/java:${project_path}/codelabs/textinput-keyboard/app/src/main/java:${project_path}/codelabs/mount-spec/app/src/main/java:${project_path}/codelabs/events/app/src/main/java:${project_path}/codelabs/group-section-lifecycle/app/src/main/java:${project_path}/litho-sections-core/src/main/java:${project_path}/sample-codelab/src/main/java:${project_path}/litho-sections-debug/src/main/java:${project_path}/litho-annotations/src/main/java:${project_path}/sample-barebones/src/main/java:${project_path}/litho-widget/src/main/java:${project_path}/litho-it/specs/src/main/java:${project_path}/litho-it/processor/src/main/java:${project_path}/litho-it/src/main/java:${project_path}/sample-barebones-kotlin/src/main/java:${project_path}/sample/src/main/java:${project_path}/lib/yoga/src/main/java:${project_path}/litho-espresso/src/main/java:${project_path}/litho-sections-annotations/src/main/java:${project_path}/litho-fresco/src/main/java:${project_path}/litho-sections-processor/src/main/java", ] ``` [Litho]: https://github.com/facebook/litho/
…ure *javac.* Per the discussion on SublimeLinter/SublimeLinter-clang#10 it became clear that it is preferred to *not* add extra configuration option beyond `args`. However, specifying a long list of paths for *javac* is tedious, as elements are colon-separated and thus cannot be individual elements in an `args` list. This is completely optional, and offers better maintainability for users working on big projects. Additionally, it allows to set general flags in the preferences of SublimeLinter, while still offering the possibility of setting custom paths for every project. It is enough to offer `classpath`. When `-sourcepath` or `-processorpath` are not specified, the classpath will be searched for source files and annotation processors, too. * * * A comparison for [Litho][]: ``` // classpath "classpath": [ "${project_path}/litho-intellij-plugin/src/main/java", "${project_path}/litho-sections-widget/src/main/java", "${project_path}/litho-processor/src/main/java", "${project_path}/litho-rendercore/src/main/java", "${project_path}/litho-testing/src/main/java", "${project_path}/litho-instrumentation-tests/src/main/java", "${project_path}/litho-core/src/main/java", "${project_path}/codelabs/props/app/src/main/java", "${project_path}/codelabs/layout-spec/app/src/main/java", "${project_path}/codelabs/hello-world/app/src/main/java", "${project_path}/codelabs/hscroll-height/app/src/main/java", "${project_path}/codelabs/state/app/src/main/java", "${project_path}/codelabs/updating-ui/app/src/main/java", "${project_path}/codelabs/save-state-rotation/app/src/main/java", "${project_path}/codelabs/textinput-keyboard/app/src/main/java", "${project_path}/codelabs/mount-spec/app/src/main/java", "${project_path}/codelabs/events/app/src/main/java", "${project_path}/codelabs/group-section-lifecycle/app/src/main/java", "${project_path}/litho-sections-core/src/main/java", "${project_path}/sample-codelab/src/main/java", "${project_path}/litho-sections-debug/src/main/java", "${project_path}/litho-annotations/src/main/java", "${project_path}/sample-barebones/src/main/java", "${project_path}/litho-widget/src/main/java", "${project_path}/litho-it/specs/src/main/java", "${project_path}/litho-it/processor/src/main/java", "${project_path}/litho-it/src/main/java", "${project_path}/sample-barebones-kotlin/src/main/java", "${project_path}/sample/src/main/java", "${project_path}/lib/yoga/src/main/java", "${project_path}/litho-espresso/src/main/java", "${project_path}/litho-sections-annotations/src/main/java", "${project_path}/litho-fresco/src/main/java", "${project_path}/litho-sections-processor/src/main/java", ] // args "args": [ "-sourcepath", "${project_path}/litho-intellij-plugin/src/main/java:${project_path}/litho-sections-widget/src/main/java:${project_path}/litho-processor/src/main/java:${project_path}/litho-rendercore/src/main/java:${project_path}/litho-testing/src/main/java:${project_path}/litho-instrumentation-tests/src/main/java:${project_path}/litho-core/src/main/java:${project_path}/codelabs/props/app/src/main/java:${project_path}/codelabs/layout-spec/app/src/main/java:${project_path}/codelabs/hello-world/app/src/main/java:${project_path}/codelabs/hscroll-height/app/src/main/java:${project_path}/codelabs/state/app/src/main/java:${project_path}/codelabs/updating-ui/app/src/main/java:${project_path}/codelabs/save-state-rotation/app/src/main/java:${project_path}/codelabs/textinput-keyboard/app/src/main/java:${project_path}/codelabs/mount-spec/app/src/main/java:${project_path}/codelabs/events/app/src/main/java:${project_path}/codelabs/group-section-lifecycle/app/src/main/java:${project_path}/litho-sections-core/src/main/java:${project_path}/sample-codelab/src/main/java:${project_path}/litho-sections-debug/src/main/java:${project_path}/litho-annotations/src/main/java:${project_path}/sample-barebones/src/main/java:${project_path}/litho-widget/src/main/java:${project_path}/litho-it/specs/src/main/java:${project_path}/litho-it/processor/src/main/java:${project_path}/litho-it/src/main/java:${project_path}/sample-barebones-kotlin/src/main/java:${project_path}/sample/src/main/java:${project_path}/lib/yoga/src/main/java:${project_path}/litho-espresso/src/main/java:${project_path}/litho-sections-annotations/src/main/java:${project_path}/litho-fresco/src/main/java:${project_path}/litho-sections-processor/src/main/java", ] ``` [Litho]: https://github.com/facebook/litho/
In addition to
-I
, this adds support for the-isystem
flag.The main difference between
-I
and-isystem
is that warnings for the latter will be suppressed. This is useful when using strict warnings for linting, whilst avoiding warnings from third party headers to show up.