Dockerfile 1.2 KB

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