From e0543ecc12c9f4574360a93f4c48c0b0eff1dfaa Mon Sep 17 00:00:00 2001 From: martin Date: Fri, 7 Jul 2023 11:19:27 +0200 Subject: [PATCH] tutorial: workspace settings --- .gitignore | 2 ++ .vscode/settings.json | 10 ++++++++++ builder.Dockerfile | 31 ++++++++++++++++++++++++++++++- 3 files changed, 42 insertions(+), 1 deletion(-) create mode 100644 .vscode/settings.json diff --git a/.gitignore b/.gitignore index b6cbbbf..09d43ee 100644 --- a/.gitignore +++ b/.gitignore @@ -26,3 +26,5 @@ test/**/build/ # test/unittest/generated compile_commands.json +# FIXME: remove this in case you want this to be available for everyone. +.vscode/c_cpp_properties.json \ No newline at end of file diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..8ea12d2 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,10 @@ +{ + "[c]": { + "editor.formatOnSave": true + }, + "[cpp]": { + "editor.formatOnSave": true + }, + "C_Cpp.default.compileCommands": "${workspaceFolder}/src/build/compile_commands.json", + "cmake.configureOnOpen": true +} diff --git a/builder.Dockerfile b/builder.Dockerfile index b4e2241..2403107 100644 --- a/builder.Dockerfile +++ b/builder.Dockerfile @@ -19,5 +19,34 @@ RUN apt-get install -y --no-install-recommends \ wget \ && rm -rf /var/lib/apt/lists/* +ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' + +RUN echo 'en_US.UTF-8 UTF-8' > /etc/locale.gen && /usr/sbin/locale-gen +RUN echo "alias ll='ls -laGFh'" >> /root/.bashrc + VOLUME ["/builder/mnt"] -WORKDIR /builder/mnt \ No newline at end of file +WORKDIR /builder/mnt + +# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # +# install clang tools + +ARG base_tag=bullseye +ARG llvm_version=16 +RUN apt-get update --fix-missing && apt-get -y upgrade +RUN apt-get install -y --no-install-recommends \ + gnupg2 \ + gnupg-agent \ + ca-certificates \ + && rm -rf /var/lib/apt/lists/* + +RUN curl --fail --silent --show-error --location https://apt.llvm.org/llvm-snapshot.gpg.key | apt-key add - +RUN echo "deb http://apt.llvm.org/$base_tag/ llvm-toolchain-$base_tag-$llvm_version main" >> /etc/apt/sources.list.d/llvm.list + +RUN apt-get update --fix-missing && apt-get -y upgrade +RUN apt-get install -y --no-install-recommends \ + clang-format-${llvm_version} \ + clang-tidy-${llvm_version} \ + && rm -rf /var/lib/apt/lists/* + +RUN ln -s /usr/bin/clang-format-${llvm_version} /usr/local/bin/clang-format +RUN ln -s /usr/bin/clang-tidy-${llvm_version} /usr/local/bin/clang-tidy