Dockerfile.template 1.3 KB

1234567891011121314151617181920212223242526272829303132333435
  1. %YAML 1.2
  2. --- |
  3. # Copyright 2021 gRPC authors.
  4. #
  5. # Licensed under the Apache License, Version 2.0 (the "License");
  6. # you may not use this file except in compliance with the License.
  7. # You may obtain a copy of the License at
  8. #
  9. # http://www.apache.org/licenses/LICENSE-2.0
  10. #
  11. # Unless required by applicable law or agreed to in writing, software
  12. # distributed under the License is distributed on an "AS IS" BASIS,
  13. # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  14. # See the License for the specific language governing permissions and
  15. # limitations under the License.
  16. FROM silkeh/clang:13
  17. # Install prerequisites for the iwyu script
  18. RUN apt-get update && apt-get install -y python3 jq git cmake python zlib1g-dev libtinfo-dev && apt-get clean
  19. # Install IWYU for Clang 13
  20. RUN git clone https://github.com/include-what-you-use/include-what-you-use.git /iwyu
  21. RUN cd /iwyu && git checkout fbd921d6640bf1b18fe5a8a895636215367eb6b9
  22. RUN mkdir /iwyu_build && cd /iwyu_build ${'\\'}
  23. && cmake -G "Unix Makefiles" /iwyu ${'\\'}
  24. && make
  25. ADD iwyu.sh /
  26. # When running locally, we'll be impersonating the current user, so we need
  27. # to make the script runnable by everyone.
  28. RUN chmod a+rx /iwyu.sh
  29. CMD ["echo 'Run with tools/distrib/iwyu.sh'"]