diff --git a/.circleci/config.yml b/.circleci/config.yml index 79995ac..dfb8178 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -47,21 +47,11 @@ jobs: || (sleep 15; apt-get -qq -o APT::Acquire::Retries=4 update) sudo apt-get -qq -o APT::Acquire::Retries=4 -o Dpkg::Use-Pty=0 --no-install-recommends install \ ca-certificates \ + cmake \ g++ \ git \ - gnupg \ make \ - pkg-config \ - wget - wget -qO- https://apt.kitware.com/keys/kitware-archive-latest.asc 2>/dev/null \ - | gpg --dearmor - \ - | sudo tee /usr/share/keyrings/kitware-archive-keyring.gpg >/dev/null - echo 'deb [arch=arm64 signed-by=/usr/share/keyrings/kitware-archive-keyring.gpg] https://apt.kitware.com/ubuntu/ jammy main' \ - | sudo tee /etc/apt/sources.list.d/kitware.list >/dev/null - sudo apt-get -qq -o APT::Acquire::Retries=4 update \ - || (sleep 15; apt-get -qq -o APT::Acquire::Retries=4 update) - sudo apt-get -qq -o APT::Acquire::Retries=4 -o Dpkg::Use-Pty=0 --no-install-recommends install \ - cmake + pkgconf sudo apt-get -qq -o Dpkg::Use-Pty=0 autoremove sudo rm -rf /var/lib/apt/lists/* environment: diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 504d0e2..70c0ab7 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -47,7 +47,7 @@ on: # yamllint disable-line rule:truthy jobs: bazel_arch: name: bazel arch latest - runs-on: ubuntu-22.04 + runs-on: ubuntu-latest container: archlinux:latest steps: - name: setup @@ -70,29 +70,14 @@ jobs: shell: bash bazel_macos: - name: bazel macos latest - runs-on: macos-latest + name: bazel macos 14 + runs-on: macos-14 steps: - name: checkout uses: actions/checkout@v4 - name: setup run: | - rm -f \ - /usr/local/bin/2to3 \ - /usr/local/bin/2to3-3.* \ - /usr/local/bin/go \ - /usr/local/bin/gofmt \ - /usr/local/bin/idle3 \ - /usr/local/bin/idle3.* \ - /usr/local/bin/pydoc3 \ - /usr/local/bin/pydoc3.* \ - /usr/local/bin/python3 \ - /usr/local/bin/python3.* \ - /usr/local/bin/python3-config \ - /usr/local/bin/python3.*-config \ - /usr/local/lib/libtcl8.*.dylib \ - /usr/local/lib/libtk8.*.dylib - brew update-reset -q + brew update -q brew upgrade -f -q brew bundle install -q --no-lock brew cleanup -q -s @@ -107,8 +92,8 @@ jobs: shell: zsh -efuo pipefail {0} bazel_ubuntu: - name: bazel ubuntu 22.04 - runs-on: ubuntu-22.04 + name: bazel ubuntu latest + runs-on: ubuntu-latest container: ubuntu:latest steps: - name: setup @@ -125,9 +110,9 @@ jobs: gnupg \ python-is-python3 \ wget - wget -qO - https://bazel.build/bazel-release.pub.gpg 2>/dev/null | gpg --dearmor - \ - > /usr/share/keyrings/bazel-archive-keyring.gpg - echo 'deb [arch=amd64 signed-by=/usr/share/keyrings/bazel-archive-keyring.gpg] https://storage.googleapis.com/bazel-apt stable jdk1.8' \ + wget -qO - https://bazel.build/bazel-release.pub.gpg 2>/dev/null \ + | gpg --dearmor - > /usr/share/keyrings/bazel-archive-keyring.gpg + echo 'deb [signed-by=/usr/share/keyrings/bazel-archive-keyring.gpg] https://storage.googleapis.com/bazel-apt stable jdk1.8' \ > /etc/apt/sources.list.d/bazel.list apt-get -qq -o APT::Acquire::Retries=4 update \ || (sleep 15; apt-get -qq -o APT::Acquire::Retries=4 update) @@ -147,7 +132,7 @@ jobs: bzlmod_arch: name: bzlmod arch latest - runs-on: ubuntu-22.04 + runs-on: ubuntu-latest container: archlinux:latest steps: - name: setup @@ -170,29 +155,14 @@ jobs: shell: bash bzlmod_macos: - name: bzlmod macos latest - runs-on: macos-latest + name: bzlmod macos 14 + runs-on: macos-14 steps: - name: checkout uses: actions/checkout@v4 - name: setup run: | - rm -f \ - /usr/local/bin/2to3 \ - /usr/local/bin/2to3-3.* \ - /usr/local/bin/go \ - /usr/local/bin/gofmt \ - /usr/local/bin/idle3 \ - /usr/local/bin/idle3.* \ - /usr/local/bin/pydoc3 \ - /usr/local/bin/pydoc3.* \ - /usr/local/bin/python3 \ - /usr/local/bin/python3.* \ - /usr/local/bin/python3-config \ - /usr/local/bin/python3.*-config \ - /usr/local/lib/libtcl8.*.dylib \ - /usr/local/lib/libtk8.*.dylib - brew update-reset -q + brew update -q brew upgrade -f -q brew bundle install -q --no-lock brew cleanup -q -s @@ -207,8 +177,8 @@ jobs: shell: zsh -efuo pipefail {0} bzlmod_ubuntu: - name: bzlmod ubuntu 22.04 - runs-on: ubuntu-22.04 + name: bzlmod ubuntu latest + runs-on: ubuntu-latest container: ubuntu:latest steps: - name: setup @@ -225,9 +195,9 @@ jobs: gnupg \ python-is-python3 \ wget - wget -qO - https://bazel.build/bazel-release.pub.gpg 2>/dev/null | gpg --dearmor - \ - > /usr/share/keyrings/bazel-archive-keyring.gpg - echo 'deb [arch=amd64 signed-by=/usr/share/keyrings/bazel-archive-keyring.gpg] https://storage.googleapis.com/bazel-apt stable jdk1.8' \ + wget -qO - https://bazel.build/bazel-release.pub.gpg 2>/dev/null \ + | gpg --dearmor - > /usr/share/keyrings/bazel-archive-keyring.gpg + echo 'deb [signed-by=/usr/share/keyrings/bazel-archive-keyring.gpg] https://storage.googleapis.com/bazel-apt stable jdk1.8' \ > /etc/apt/sources.list.d/bazel.list apt-get -qq -o APT::Acquire::Retries=4 update \ || (sleep 15; apt-get -qq -o APT::Acquire::Retries=4 update) @@ -246,9 +216,9 @@ jobs: shell: bash cmake_alpine: - name: cmake alpine 3 - runs-on: ubuntu-22.04 - container: alpine:3 + name: cmake alpine latest + runs-on: ubuntu-latest + container: alpine:latest steps: - name: setup run: | @@ -289,7 +259,7 @@ jobs: cmake_arch: name: cmake arch latest - runs-on: ubuntu-22.04 + runs-on: ubuntu-latest container: archlinux:latest steps: - name: setup @@ -333,7 +303,7 @@ jobs: cmake_fedora: name: cmake fedora latest - runs-on: ubuntu-22.04 + runs-on: ubuntu-latest container: fedora:latest steps: - name: setup @@ -379,29 +349,14 @@ jobs: shell: bash cmake_macos: - name: cmake macos latest - runs-on: macos-latest + name: cmake macos 14 + runs-on: macos-14 steps: - name: checkout uses: actions/checkout@v4 - name: setup run: | - rm -f \ - /usr/local/bin/2to3 \ - /usr/local/bin/2to3-3.* \ - /usr/local/bin/go \ - /usr/local/bin/gofmt \ - /usr/local/bin/idle3 \ - /usr/local/bin/idle3.* \ - /usr/local/bin/pydoc3 \ - /usr/local/bin/pydoc3.* \ - /usr/local/bin/python3 \ - /usr/local/bin/python3.* \ - /usr/local/bin/python3-config \ - /usr/local/bin/python3.*-config \ - /usr/local/lib/libtcl8.*.dylib \ - /usr/local/lib/libtk8.*.dylib - brew update-reset -q + brew update -q brew upgrade -f -q brew bundle install -q --no-lock brew cleanup -q -s @@ -435,7 +390,7 @@ jobs: cmake_rockylinux: name: cmake rockylinux 9 - runs-on: ubuntu-22.04 + runs-on: ubuntu-latest container: rockylinux:9 steps: - name: setup @@ -483,9 +438,9 @@ jobs: shell: bash cmake_ubuntu: - name: cmake ubuntu 22.04 - runs-on: ubuntu-22.04 - container: ubuntu:22.04 + name: cmake ubuntu latest + runs-on: ubuntu-latest + container: ubuntu:latest steps: - name: setup run: | @@ -496,26 +451,15 @@ jobs: apt-get -qq -o APT::Acquire::Retries=4 -o Dpkg::Use-Pty=0 \ --no-install-recommends install \ ca-certificates \ + cmake \ doxygen \ - dpkg \ dpkg-dev \ file \ g++ \ git \ - gnupg \ graphviz \ make \ - pkg-config \ - wget - wget -qO- https://apt.kitware.com/keys/kitware-archive-latest.asc 2>/dev/null \ - | gpg --dearmor - > /usr/share/keyrings/kitware-archive-keyring.gpg - echo 'deb [arch=amd64 signed-by=/usr/share/keyrings/kitware-archive-keyring.gpg] https://apt.kitware.com/ubuntu/ jammy main' \ - > /etc/apt/sources.list.d/kitware.list - apt-get -qq -o APT::Acquire::Retries=4 update \ - || (sleep 15; apt-get -qq -o APT::Acquire::Retries=4 update) - apt-get -qq -o APT::Acquire::Retries=4 -o Dpkg::Use-Pty=0 \ - --no-install-recommends install \ - cmake + pkgconf apt-get -qq -o Dpkg::Use-Pty=0 autoremove rm -rf /var/lib/apt/lists/* env: diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index 9fb69bf..147d749 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -47,7 +47,7 @@ on: # yamllint disable-line rule:truthy jobs: analyze: name: analyze - runs-on: ubuntu-22.04 + runs-on: ubuntu-latest steps: - name: checkout uses: actions/checkout@v4 diff --git a/CMakeLists.txt b/CMakeLists.txt index 94137c2..5c46b62 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -34,10 +34,11 @@ # # -cmake_minimum_required(VERSION 3.10 FATAL_ERROR) +cmake_minimum_required(VERSION 3.16 FATAL_ERROR) project(RVO3D VERSION 1.1.0 DESCRIPTION "Optimal Reciprocal Collision Avoidance in Three Dimensions" + HOMEPAGE_URL https://gamma.cs.unc.edu/RVO2/ LANGUAGES CXX) list(INSERT CMAKE_MODULE_PATH 0 "${PROJECT_SOURCE_DIR}/cmake/modules") @@ -67,7 +68,6 @@ set(RVO3D_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}) set(RVO3D_LIBRARY RVO3D) set(RVO3D_NAME "RVO2-3D Library") -set(RVO3D_HOMEPAGE_URL https://gamma.cs.unc.edu/RVO2/) set(CMAKE_CXX_STANDARD 98) set(CMAKE_CXX_STANDARD_REQUIRED OFF) @@ -329,18 +329,18 @@ set(CPACK_SOURCE_STRIP_FILES ON) set(CPACK_DEBIAN_FILE_NAME DEB-DEFAULT) set(CPACK_DEBIAN_PACKAGE_DEPENDS) -set(CPACK_DEBIAN_PACKAGE_HOMEPAGE ${RVO3D_HOMEPAGE_URL}) +set(CPACK_DEBIAN_PACKAGE_HOMEPAGE ${PROJECT_HOMEPAGE_URL}) set(CPACK_DEBIAN_PACKAGE_SECTION contrib/devel) set(CPACK_DEBIAN_PACKAGE_SHLIBDEPS ON) set(CPACK_FREEBSD_PACKAGE_DEPS) set(CPACK_FREEBSD_PACKAGE_LICENSE APACHE20) -set(CPACK_FREEBSD_PACKAGE_WWW ${RVO3D_HOMEPAGE_URL}) +set(CPACK_FREEBSD_PACKAGE_WWW ${PROJECT_HOMEPAGE_URL}) set(CPACK_RPM_FILE_NAME RPM-DEFAULT) set(CPACK_RPM_PACKAGE_AUTOREQPROV ON) set(CPACK_RPM_PACKAGE_LICENSE "ASL 2.0") set(CPACK_RPM_PACKAGE_REQUIRES) -set(CPACK_RPM_PACKAGE_URL ${RVO3D_HOMEPAGE_URL}) +set(CPACK_RPM_PACKAGE_URL ${PROJECT_HOMEPAGE_URL}) include(CPack) diff --git a/Dockerfile b/Dockerfile index f679442..44ed62e 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,3 +1,5 @@ +# syntax=docker.io/docker/dockerfile:1 + # # Dockerfile # RVO2-3D Library @@ -31,9 +33,9 @@ # # -FROM ubuntu:22.04 +FROM ubuntu:latest LABEL org.opencontainers.image.authors="Jur van den Berg, Stephen J. Guy, Jamie Snape, Ming C. Lin, Dinesh Manocha" -LABEL org.opencontainers.image.base.name="docker.io/library/ubuntu:22.04" +LABEL org.opencontainers.image.base.name="docker.io/library/ubuntu:latest" LABEL org.opencontainers.image.description="Optimal Reciprocal Collision Avoidance in Three Dimensions" LABEL org.opencontainers.image.licenses="Apache-2.0" LABEL org.opencontainers.image.source="https://github.com/snape/RVO2-3D/" @@ -50,22 +52,23 @@ RUN export DEBIAN_FRONTEND=noninteractive \ ca-certificates \ clang \ clang-tidy \ + cmake \ cmake-format \ cppcheck \ cpplint \ dirmngr \ doxygen \ - dpkg \ dpkg-dev \ file \ g++ \ gdb \ git \ - gnupg \ graphviz \ iwyu \ + jsonlint \ lldb \ make \ + markdownlint \ nano \ netbase \ ninja-build \ @@ -74,25 +77,9 @@ RUN export DEBIAN_FRONTEND=noninteractive \ python3 \ reuse \ strace \ - unzip \ valgrind \ - wget \ yamllint \ - zlib1g-dev \ - && wget -qO - https://bazel.build/bazel-release.pub.gpg | gpg --dearmor - \ - > /usr/share/keyrings/bazel-archive-keyring.gpg \ - && echo 'deb [arch=amd64 signed-by=/usr/share/keyrings/bazel-archive-keyring.gpg] https://storage.googleapis.com/bazel-apt stable jdk1.8' \ - > /etc/apt/sources.list.d/bazel.list \ - && wget -qO - https://apt.kitware.com/keys/kitware-archive-latest.asc \ - | gpg --dearmor - > /usr/share/keyrings/kitware-archive-keyring.gpg \ - && echo 'deb [arch=amd64 signed-by=/usr/share/keyrings/kitware-archive-keyring.gpg] https://apt.kitware.com/ubuntu jammy main' \ - > /etc/apt/sources.list.d/kitware.list \ - && apt-get update -qq \ - && apt-get install --no-install-recommends -o Dpkg::Use-Pty=0 -qy \ - bazel \ - cmake \ && rm -rf /var/lib/apt/lists/* \ && npm install -g \ - @bazel/buildifier \ - jsonlint \ - markdownlint-cli + @bazel/bazelisk \ + @bazel/buildifier diff --git a/RVO3D.pc.in b/RVO3D.pc.in index c1a1508..92aa570 100644 --- a/RVO3D.pc.in +++ b/RVO3D.pc.in @@ -38,7 +38,7 @@ includedir=${prefix}/@RVO3D_INCLUDE_DIR@ Name: @RVO3D_NAME@ Description: @PROJECT_DESCRIPTION@ -URL: @RVO3D_HOMEPAGE_URL@ +URL: @PROJECT_HOMEPAGE_URL@ Version: @PROJECT_VERSION@ Libs: -L${libdir} -l@RVO3D_LIBRARY@ Cflags: -I${includedir}