diff --git a/.gitignore b/.gitignore index d9d6b9971..af7096a46 100644 --- a/.gitignore +++ b/.gitignore @@ -1,24 +1,12 @@ cmake.h commit.h -Makefile -src/task -src/taskd -src/libtask.a -src/commands/libcommands.a -src/tc/libtc.a -src/columns/libcolumns.a *~ .*.swp Session.vim package-config/osx/binary/task -/build/ -CMakeFiles -CMakeCache.txt -cmake_install.cmake +/build*/ install_manifest.txt _CPack_Packages -CPackConfig.cmake -CPackSourceConfig.cmake patches *.exe tutorials diff --git a/CMakeLists.txt b/CMakeLists.txt index 117bc9dc5..a560705c1 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -175,11 +175,6 @@ add_custom_target(problems DEPENDS show-problems) set (CPACK_SOURCE_GENERATOR "TGZ") set (CPACK_SOURCE_PACKAGE_FILE_NAME ${PACKAGE_NAME}-${PACKAGE_VERSION}) -set (CPACK_SOURCE_IGNORE_FILES "CMakeCache" "CMakeFiles" "CPackConfig" "CPackSourceConfig" - "_CPack_Packages" "cmake_install" "install_manifest" "Makefile$" - "test" "package-config" "misc/*" "src/task$" "src/calc$" "performance" - "src/libtask.a" "src/columns/libcolumns.a" "src/commands/libcommands.a" - "src/tc/libtc.a" "swp$" "src/lex$" "task-.*.tar.gz" "commit.h" "cmake.h$" - "\\\\.gitmodules" "src/libshared/\\\\.git" ".github/" ".*\\\\.gitignore$" - "src/liblibshared.a" "docker-compose.yml" "\\\\.git/") +set (CPACK_SOURCE_IGNORE_FILES "build" "test" "misc/*" "performance" "swp$" "src/lex$" "task-.*.tar.gz" + "commit.h" "cmake.h$" "\\\\.gitmodules" "src/libshared/\\\\.git" ".github/" ".*\\\\.gitignore$" "docker-compose.yml" "\\\\.git/") include (CPack) diff --git a/doc/devel/contrib/development.md b/doc/devel/contrib/development.md index 47325ce0c..b6261d495 100644 --- a/doc/devel/contrib/development.md +++ b/doc/devel/contrib/development.md @@ -16,26 +16,46 @@ See the [TaskChampion CONTRIBUTING guide](../../../taskchampion/CONTRIBUTING.md) * Rust 1.64.0 or higher (hint: use https://rustup.rs/ instead of using your system's package manager) ## Obtain and Build Code: -``` - $ git clone --recursive https://github.com/GothenburgBitFactory/taskwarrior taskwarrior.git - $ cd taskwarrior.git - $ git checkout develop # Latest dev branch - $ git submodule init # This is now done by cmake as a test - $ git submodule update # Update the libhsared.git submodule - $ cmake -DCMAKE_BUILD_TYPE=debug . # debug or release. Default: neither - $ make VERBOSE=1 -j4 # Shows details, builds using 4 jobs - # Alternately 'export MAKEFLAGS=-j 4' -``` +The following documentation works with CMake 3.14 and later. +Here are the minimal steps to get started, using an out of source build directory and calling the underlying build tool over the CMake interface. +See the general CMake man pages or the [cmake-documentation](https://cmake.org/cmake/help/latest/manual/cmake.1.html) for more, -This will build several executables, but the one you want is probably `src/task`. +## Basic Building +```sh +git clone https://github.com/GothenburgBitFactory/taskwarrior +cd taskwarrior +cmake -S . -B build -DCMAKE_BUILD_TYPE=RelWithDebInfo +cmake --build build +``` +Other possible build types can be `Release` and `Debug`. +This will build several executables, but the one you want is probably `src/task`, located in the `build` directory. When you make changes, just run the last line again. -## Run the Test Suite: +### Building a specific target +For **only** building the `task` executable, use +```sh +cmake --build build --target task_executable +``` +### Building in parallel +If a parallel build is wanted use +```sh +cmake --build build -j +``` + +### Building with clang as compiler +```sh +cmake -S . -B build-clang\ + -DCMAKE_C_COMPILER=clang\ + -DCMAKE_CXX_COMPILER=clang++ +cmake --build build-clang +``` + +## Run the Test Suite: First switch to the test directory: ``` - $ cd test + $ cd build/test ``` Then you can run all tests, showing details, with ``` diff --git a/docker/task.dockerfile b/docker/task.dockerfile index de7601caf..9d85e3fe1 100644 --- a/docker/task.dockerfile +++ b/docker/task.dockerfile @@ -30,13 +30,13 @@ RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs > rustup.sh && \ RUN git clean -dfx && \ git submodule init && \ git submodule update && \ - cmake -DCMAKE_BUILD_TYPE=release . && \ - make -j8 + cmake -S . -B build -DCMAKE_BUILD_TYPE=Release . && \ + cmake --build build -j 8 FROM base AS runner # Install Taskwarrior -COPY --from=builder /root/code/src/task /usr/local/bin +COPY --from=builder /root/code/build/src/task /usr/local/bin # Initialize Taskwarrior RUN ( echo "yes" | task ) || true diff --git a/performance/load b/performance/load index f5137db34..7f6dded6d 100755 --- a/performance/load +++ b/performance/load @@ -31,18 +31,18 @@ while (my $line = <$fh>) if ($. % 20 == 19) { my $anno_id = $id - 1; - qx{../src/task rc:perf.rc rc.gc=off $anno_id annotate $line}; + qx{../build/src/task rc:perf.rc rc.gc=off $anno_id annotate $line}; print "[$.] task rc:perf.rc rc.gc=off $anno_id annotate $line\n" if $?; } elsif ($. % 4 == 1) { - qx{../src/task rc:perf.rc rc.gc=off add $line}; + qx{../build/src/task rc:perf.rc rc.gc=off add $line}; print "[$.] task rc:perf.rc rc.gc=off add $line\n" if $?; ++$id; } else { - qx{../src/task rc:perf.rc rc.gc=off log $line}; + qx{../build/src/task rc:perf.rc rc.gc=off log $line}; print "[$.] task rc:perf.rc rc.gc=off log $line\n" if $?; } } diff --git a/performance/run_perf b/performance/run_perf index 4b6dc5a9d..869640b63 100755 --- a/performance/run_perf +++ b/performance/run_perf @@ -16,7 +16,7 @@ fi # Allow override. if [[ -z $TASK ]] then - TASK=../src/task + TASK=../build/src/task fi # Run benchmarks. diff --git a/test/docker/arch b/test/docker/arch index d45ece8c7..643462630 100644 --- a/test/docker/arch +++ b/test/docker/arch @@ -20,13 +20,13 @@ RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs > rustup.sh && \ RUN git clean -dfx RUN git submodule init RUN git submodule update -RUN cmake -DCMAKE_BUILD_TYPE=debug . -RUN make -j8 -RUN make install +RUN cmake -S . -B build -DCMAKE_BUILD_TYPE=Debug . +RUN cmake --build build -j 8 +RUN cmake --install build RUN task --version # Setup tests -WORKDIR /root/code/test/ +WORKDIR /root/code/build/test/ RUN make -j8 CMD ["bash", "-c", "./run_all -v ; cat all.log | grep 'not ok' ; ./problems"] diff --git a/test/docker/centos7 b/test/docker/centos7 deleted file mode 100644 index 0457a624c..000000000 --- a/test/docker/centos7 +++ /dev/null @@ -1,36 +0,0 @@ -FROM centos:7 - -RUN yum update -y -RUN yum install python3 git gcc gcc-c++ make libuuid-devel -y -RUN yum install epel-release centos-release-scl -y -RUN yum install which cmake3 devtoolset-7-gcc* libfaketime curl -y -RUN source scl_source enable devtoolset-7; gcc --version; cmake3 --version -RUN ln -s /usr/bin/cmake3 /usr/bin/cmake - -# Setup language environment -ENV LC_ALL en_US.UTF-8 -ENV LANG en_US.UTF-8 -ENV LANGUAGE en_US.UTF-8 - -# Add source directory -ADD . /root/code/ -WORKDIR /root/code/ - -# Setup Rust -RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs > rustup.sh && \ - sh rustup.sh -y --profile minimal --default-toolchain stable --component rust-docs - -# Setup taskwarrior -RUN git clean -dfx -RUN git submodule init -RUN git submodule update -RUN source scl_source enable devtoolset-7; cmake -DCMAKE_BUILD_TYPE=debug . -RUN source scl_source enable devtoolset-7; make -j8 -RUN source scl_source enable devtoolset-7; make install -RUN task --version - -# Setup tests -WORKDIR /root/code/test/ -RUN source scl_source enable devtoolset-7; make -j8 - -CMD ["bash", "-c", "./run_all -v ; cat all.log | grep 'not ok' ; ./problems"] diff --git a/test/docker/centos8 b/test/docker/centos8 deleted file mode 100644 index 11343fb1f..000000000 --- a/test/docker/centos8 +++ /dev/null @@ -1,39 +0,0 @@ -FROM centos:8 - -# Fix missing repo metadata -RUN sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-Linux-* -RUN sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-Linux-* - -RUN dnf update -y -RUN dnf install python3 git gcc gcc-c++ make libuuid-devel glibc-langpack-en -y -RUN dnf install epel-release -y -RUN dnf install which cmake libfaketime curl -y -RUN gcc --version; cmake --version - -# Setup language environment -ENV LC_ALL en_US.UTF-8 -ENV LANG en_US.UTF-8 -ENV LANGUAGE en_US.UTF-8 - -# Add source directory -ADD . /root/code/ -WORKDIR /root/code/ - -# Setup Rust -RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs > rustup.sh && \ - sh rustup.sh -y --profile minimal --default-toolchain stable --component rust-docs - -# Setup taskwarrior -RUN git clean -dfx -RUN git submodule init -RUN git submodule update -RUN cmake -DCMAKE_BUILD_TYPE=debug . -RUN make -j8 -RUN make install -RUN task --version - -# Setup tests -WORKDIR /root/code/test/ -RUN make -j8 - -CMD ["bash", "-c", "./run_all -v ; cat all.log | grep 'not ok' ; ./problems"] diff --git a/test/docker/debianstable b/test/docker/debianstable index b1e0279b9..878553350 100644 --- a/test/docker/debianstable +++ b/test/docker/debianstable @@ -21,13 +21,13 @@ RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs > rustup.sh && \ RUN git clean -dfx RUN git submodule init RUN git submodule update -RUN cmake -DCMAKE_BUILD_TYPE=debug . -RUN make -j8 -RUN make install +RUN cmake -S . -B build -DCMAKE_BUILD_TYPE=Debug . +RUN cmake --build build -j 8 +RUN cmake --install build RUN task --version # Setup tests -WORKDIR /root/code/test/ +WORKDIR /root/code/build/test RUN make -j8 CMD ["bash", "-c", "./run_all -v ; cat all.log | grep 'not ok' ; ./problems"] diff --git a/test/docker/debiantesting b/test/docker/debiantesting index 598ab5cae..78773eef8 100644 --- a/test/docker/debiantesting +++ b/test/docker/debiantesting @@ -21,13 +21,13 @@ RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs > rustup.sh && \ RUN git clean -dfx RUN git submodule init RUN git submodule update -RUN cmake -DCMAKE_BUILD_TYPE=debug . -RUN make -j8 -RUN make install +RUN cmake -S . -B build -DCMAKE_BUILD_TYPE=Debug . +RUN cmake --build build -j 8 +RUN cmake --install build RUN task --version # Setup tests -WORKDIR /root/code/test/ +WORKDIR /root/code/build/test RUN make -j8 CMD ["bash", "-c", "./run_all -v ; cat all.log | grep 'not ok' ; ./problems"] diff --git a/test/docker/fedora32 b/test/docker/fedora32 deleted file mode 100644 index b9da1735f..000000000 --- a/test/docker/fedora32 +++ /dev/null @@ -1,32 +0,0 @@ -FROM fedora:32 - -RUN dnf update -y -RUN dnf install python3 git gcc gcc-c++ cmake make libuuid-devel libfaketime glibc-langpack-en curl -y - -# Setup language environment -ENV LC_ALL en_US.UTF-8 -ENV LANG en_US.UTF-8 -ENV LANGUAGE en_US.UTF-8 - -# Add source directory -ADD . /root/code/ -WORKDIR /root/code/ - -# Setup Rust -RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs > rustup.sh && \ - sh rustup.sh -y --profile minimal --default-toolchain stable --component rust-docs - -# Setup taskwarrior -RUN git clean -dfx -RUN git submodule init -RUN git submodule update -RUN cmake -DCMAKE_BUILD_TYPE=debug . -RUN make -j8 -RUN make install -RUN task --version - -# Setup tests -WORKDIR /root/code/test/ -RUN make -j8 - -CMD ["bash", "-c", "./run_all -v ; cat all.log | grep 'not ok' ; ./problems"] diff --git a/test/docker/fedora33 b/test/docker/fedora33 deleted file mode 100644 index 825fa8359..000000000 --- a/test/docker/fedora33 +++ /dev/null @@ -1,32 +0,0 @@ -FROM fedora:33 - -RUN dnf update -y -RUN dnf install python3 git gcc gcc-c++ cmake make libuuid-devel libfaketime glibc-langpack-en curl -y - -# Setup language environment -ENV LC_ALL en_US.UTF-8 -ENV LANG en_US.UTF-8 -ENV LANGUAGE en_US.UTF-8 - -# Add source directory -ADD . /root/code/ -WORKDIR /root/code/ - -# Setup Rust -RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs > rustup.sh && \ - sh rustup.sh -y --profile minimal --default-toolchain stable --component rust-docs - -# Setup taskwarrior -RUN git clean -dfx -RUN git submodule init -RUN git submodule update -RUN cmake -DCMAKE_BUILD_TYPE=debug . -RUN make -j8 -RUN make install -RUN task --version - -# Setup tests -WORKDIR /root/code/test/ -RUN make -j8 - -CMD ["bash", "-c", "./run_all -v ; cat all.log | grep 'not ok' ; ./problems"] diff --git a/test/docker/fedora34 b/test/docker/fedora34 deleted file mode 100644 index ff32586dd..000000000 --- a/test/docker/fedora34 +++ /dev/null @@ -1,32 +0,0 @@ -FROM fedora:34 - -RUN dnf update -y -RUN dnf install python3 git gcc gcc-c++ cmake make libuuid-devel libfaketime glibc-langpack-en curl -y - -# Setup language environment -ENV LC_ALL en_US.UTF-8 -ENV LANG en_US.UTF-8 -ENV LANGUAGE en_US.UTF-8 - -# Add source directory -ADD . /root/code/ -WORKDIR /root/code/ - -# Setup Rust -RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs > rustup.sh && \ - sh rustup.sh -y --profile minimal --default-toolchain stable --component rust-docs - -# Setup taskwarrior -RUN git clean -dfx -RUN git submodule init -RUN git submodule update -RUN cmake -DCMAKE_BUILD_TYPE=debug . -RUN make -j8 -RUN make install -RUN task --version - -# Setup tests -WORKDIR /root/code/test/ -RUN make -j8 - -CMD ["bash", "-c", "./run_all -v ; cat all.log | grep 'not ok' ; ./problems"] diff --git a/test/docker/fedora35 b/test/docker/fedora35 deleted file mode 100644 index 6696dacf0..000000000 --- a/test/docker/fedora35 +++ /dev/null @@ -1,32 +0,0 @@ -FROM fedora:35 - -RUN dnf update -y -RUN dnf install python3 git gcc gcc-c++ cmake make libuuid-devel libfaketime glibc-langpack-en curl -y - -# Setup language environment -ENV LC_ALL en_US.UTF-8 -ENV LANG en_US.UTF-8 -ENV LANGUAGE en_US.UTF-8 - -# Add source directory -ADD . /root/code/ -WORKDIR /root/code/ - -# Setup Rust -RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs > rustup.sh && \ - sh rustup.sh -y --profile minimal --default-toolchain stable --component rust-docs - -# Setup taskwarrior -RUN git clean -dfx -RUN git submodule init -RUN git submodule update -RUN cmake -DCMAKE_BUILD_TYPE=debug . -RUN make -j8 -RUN make install -RUN task --version - -# Setup tests -WORKDIR /root/code/test/ -RUN make -j8 - -CMD ["bash", "-c", "./run_all -v ; cat all.log | grep 'not ok' ; ./problems"] diff --git a/test/docker/fedora38 b/test/docker/fedora38 index 9051fc885..e254f1eb2 100644 --- a/test/docker/fedora38 +++ b/test/docker/fedora38 @@ -20,13 +20,13 @@ RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs > rustup.sh && \ RUN git clean -dfx RUN git submodule init RUN git submodule update -RUN cmake -DCMAKE_BUILD_TYPE=debug . -RUN make -j8 -RUN make install +RUN cmake -S . -B build -DCMAKE_BUILD_TYPE=Debug . +RUN cmake --build build -j 8 +RUN cmake --install build RUN task --version # Setup tests -WORKDIR /root/code/test/ +WORKDIR /root/code/build/test RUN make -j8 CMD ["bash", "-c", "./run_all -v ; cat all.log | grep 'not ok' ; ./problems"] diff --git a/test/docker/fedora39 b/test/docker/fedora39 index b5a4f91cf..c4b3bd670 100644 --- a/test/docker/fedora39 +++ b/test/docker/fedora39 @@ -20,13 +20,13 @@ RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs > rustup.sh && \ RUN git clean -dfx RUN git submodule init RUN git submodule update -RUN cmake -DCMAKE_BUILD_TYPE=debug . -RUN make -j8 -RUN make install +RUN cmake -S . -B build -DCMAKE_BUILD_TYPE=Debug . +RUN cmake --build build -j 8 +RUN cmake --install build RUN task --version # Setup tests -WORKDIR /root/code/test/ +WORKDIR /root/code/build/test RUN make -j8 CMD ["bash", "-c", "./run_all -v ; cat all.log | grep 'not ok' ; ./problems"] diff --git a/test/docker/gentoo b/test/docker/gentoo deleted file mode 100644 index 3ea9cc2f4..000000000 --- a/test/docker/gentoo +++ /dev/null @@ -1,38 +0,0 @@ -# name the portage image -FROM gentoo/portage:latest as portage - -# image is based on stage3-x86 -FROM gentoo/stage3-x86:latest - -# copy the entire portage volume in -COPY --from=portage /usr/portage /usr/portage - -RUN emerge -qv sys-libs/readline:0 sys-apps/util-linux dev-util/cmake sys-devel/make dev-vcs/git sys-libs/libfaketime net-misc/curl - -# Setup language environment -ENV LC_ALL en_US.UTF-8 -ENV LANG en_US.UTF-8 -ENV LANGUAGE en_US.UTF-8 - -# Add source directory -ADD . /root/code/ -WORKDIR /root/code/ - -# Setup Rust -RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs > rustup.sh && \ - sh rustup.sh -y --profile minimal --default-toolchain stable --component rust-docs - -# Setup taskwarrior -RUN git clean -dfx -RUN git submodule init -RUN git submodule update -RUN cmake -DCMAKE_BUILD_TYPE=debug . -RUN make -j8 -RUN make install -RUN task --version - -# Setup tests -WORKDIR /root/code/test/ -RUN make -j8 - -CMD ["bash", "-c", "./run_all -v ; cat all.log | grep 'not ok' ; ./problems"] diff --git a/test/docker/opensuse15 b/test/docker/opensuse15 index 53fcc98e0..91c4565b5 100644 --- a/test/docker/opensuse15 +++ b/test/docker/opensuse15 @@ -19,13 +19,13 @@ RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs > rustup.sh && \ RUN git clean -dfx RUN git submodule init RUN git submodule update -RUN cmake -DCMAKE_BUILD_TYPE=debug . -RUN make -j8 -RUN make install +RUN cmake -S . -B build -DCMAKE_BUILD_TYPE=Debug . +RUN cmake --build build -j 8 +RUN cmake --install build RUN task --version # Setup tests -WORKDIR /root/code/test/ +WORKDIR /root/code/build/test RUN make -j8 CMD ["bash", "-c", "./run_all -v ; cat all.log | grep 'not ok' ; ./problems"] diff --git a/test/docker/ubuntu1604 b/test/docker/ubuntu1604 deleted file mode 100644 index b7e5db8af..000000000 --- a/test/docker/ubuntu1604 +++ /dev/null @@ -1,33 +0,0 @@ -FROM ubuntu:16.04 - -RUN apt-get update -RUN apt-get install -y build-essential cmake git uuid-dev faketime locales python3 curl - -# Setup language environment -RUN locale-gen en_US.UTF-8 -ENV LC_ALL en_US.UTF-8 -ENV LANG en_US.UTF-8 -ENV LANGUAGE en_US.UTF-8 - -# Add source directory -ADD . /root/code/ -WORKDIR /root/code/ - -# Setup Rust -RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs > rustup.sh && \ - sh rustup.sh -y --profile minimal --default-toolchain stable --component rust-docs - -# Setup taskwarrior -RUN git clean -dfx -RUN git submodule init -RUN git submodule update -RUN cmake -DCMAKE_BUILD_TYPE=debug . -RUN make -j2 -RUN make install -RUN task --version - -# Setup tests -WORKDIR /root/code/test/ -RUN make - -CMD ["bash", "-c", "./run_all -v ; cat all.log | grep 'not ok' ; ./problems"] diff --git a/test/docker/ubuntu1804 b/test/docker/ubuntu1804 deleted file mode 100644 index 1da777d6e..000000000 --- a/test/docker/ubuntu1804 +++ /dev/null @@ -1,33 +0,0 @@ -FROM ubuntu:18.04 - -RUN apt-get update -RUN apt-get install -y build-essential cmake git uuid-dev faketime locales python3 curl - -# Setup language environment -RUN locale-gen en_US.UTF-8 -ENV LC_ALL en_US.UTF-8 -ENV LANG en_US.UTF-8 -ENV LANGUAGE en_US.UTF-8 - -# Add source directory -ADD . /root/code/ -WORKDIR /root/code/ - -# Setup Rust -RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs > rustup.sh && \ - sh rustup.sh -y --profile minimal --default-toolchain stable --component rust-docs - -# Setup taskwarrior -RUN git clean -dfx -RUN git submodule init -RUN git submodule update -RUN cmake -DCMAKE_BUILD_TYPE=debug . -RUN make -j8 -RUN make install -RUN task --version - -# Setup tests -WORKDIR /root/code/test/ -RUN make -j8 - -CMD ["bash", "-c", "./run_all -v ; cat all.log | grep 'not ok' ; ./problems"] diff --git a/test/docker/ubuntu2004 b/test/docker/ubuntu2004 index 41cea19f7..e225f02b8 100644 --- a/test/docker/ubuntu2004 +++ b/test/docker/ubuntu2004 @@ -21,13 +21,13 @@ RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs > rustup.sh && \ RUN git clean -dfx RUN git submodule init RUN git submodule update -RUN cmake -DCMAKE_BUILD_TYPE=debug . -RUN make -j8 -RUN make install +RUN cmake -S . -B build -DCMAKE_BUILD_TYPE=Debug . +RUN cmake --build build -j 8 +RUN cmake --install build RUN task --version # Setup tests -WORKDIR /root/code/test/ +WORKDIR /root/code/build/test RUN make -j8 CMD ["bash", "-c", "./run_all -v ; cat all.log | grep 'not ok' ; ./problems"] diff --git a/test/docker/ubuntu2204 b/test/docker/ubuntu2204 index a505a1cdc..29381323a 100644 --- a/test/docker/ubuntu2204 +++ b/test/docker/ubuntu2204 @@ -21,13 +21,13 @@ RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs > rustup.sh && \ RUN git clean -dfx RUN git submodule init RUN git submodule update -RUN cmake -DCMAKE_BUILD_TYPE=debug . -RUN make -j8 -RUN make install +RUN cmake -S . -B build -DCMAKE_BUILD_TYPE=Debug . +RUN cmake --build build -j 8 +RUN cmake --install build RUN task --version # Setup tests -WORKDIR /root/code/test/ +WORKDIR /root/code/build/test RUN make -j8 CMD ["bash", "-c", "./run_all -v ; cat all.log | grep 'not ok' ; ./problems"]