Add Ubuntu 22.04 to the install scripts, CI, docs. (#1888)

Signed-off-by: Wolfgang Hess <whess@fsfe.org>
master
Wolfgang Hess 2022-07-04 19:38:24 +02:00 committed by GitHub
parent b1b63a3cb1
commit f76f849e6a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
8 changed files with 68 additions and 24 deletions

15
.github/workflows/ci-jammy.yaml vendored Normal file
View File

@ -0,0 +1,15 @@
name: Ubuntu 22.04 CI
on:
push:
branches: ["master"]
pull_request:
branches: ["master"]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Run the Dockerfile
run: docker build . -f Dockerfile.jammy

View File

@ -22,7 +22,7 @@ ENV CC=$cc
ENV CXX=$cxx ENV CXX=$cxx
# This base image doesn't ship with sudo, apt-utils. tzdata is installed here to avoid hanging later # This base image doesn't ship with sudo, apt-utils. tzdata is installed here to avoid hanging later
# when it would wait for user input. # when it would wait for user input.
RUN apt-get update && apt-get install -y sudo apt-utils tzdata && rm -rf /var/lib/apt/lists/* RUN apt-get update && apt-get install -y sudo apt-utils tzdata && rm -rf /var/lib/apt/lists/*
COPY scripts/install_debs_cmake.sh cartographer/scripts/ COPY scripts/install_debs_cmake.sh cartographer/scripts/

View File

@ -22,7 +22,7 @@ ENV CC=$cc
ENV CXX=$cxx ENV CXX=$cxx
# This base image doesn't ship with sudo, apt-utils. tzdata is installed here to avoid hanging later # This base image doesn't ship with sudo, apt-utils. tzdata is installed here to avoid hanging later
# when it would wait for user input. # when it would wait for user input.
RUN apt-get update && apt-get install -y sudo apt-utils tzdata && rm -rf /var/lib/apt/lists/* RUN apt-get update && apt-get install -y sudo apt-utils tzdata && rm -rf /var/lib/apt/lists/*
COPY scripts/install_debs_cmake.sh cartographer/scripts/ COPY scripts/install_debs_cmake.sh cartographer/scripts/

31
Dockerfile.jammy Normal file
View File

@ -0,0 +1,31 @@
# Copyright 2020 The Cartographer Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
FROM ubuntu:jammy
ARG cc
ARG cxx
# Set the preferred C/C++ compiler toolchain, if given (otherwise default).
ENV CC=$cc
ENV CXX=$cxx
# This base image doesn't ship with sudo, apt-utils. tzdata is installed here to avoid hanging later
# when it would wait for user input.
RUN apt-get update && apt-get install -y sudo apt-utils tzdata && rm -rf /var/lib/apt/lists/*
COPY scripts/install_debs_cmake.sh cartographer/scripts/
RUN cartographer/scripts/install_debs_cmake.sh && rm -rf /var/lib/apt/lists/*
COPY . cartographer
RUN cartographer/scripts/install_cartographer_cmake.sh && rm -rf cartographer

View File

@ -16,7 +16,7 @@
Cartographer Cartographer
============ ============
|build| |docs| |license| |build-jammy| |build-focal| |docs| |license|
Purpose Purpose
======= =======
@ -83,7 +83,11 @@ Slides of these Cartographer Open House meetings are listed below.
- June 22, 2017: `Slides <https://storage.googleapis.com/cartographer-public-data/cartographer-open-house/170622/sildes.pdf>`_ - June 22, 2017: `Slides <https://storage.googleapis.com/cartographer-public-data/cartographer-open-house/170622/sildes.pdf>`_
- June 8, 2017: `Slides <https://storage.googleapis.com/cartographer-public-data/cartographer-open-house/170608/slides.pdf>`_ - June 8, 2017: `Slides <https://storage.googleapis.com/cartographer-public-data/cartographer-open-house/170608/slides.pdf>`_
.. |build| image:: https://github.com/cartographer-project/cartographer/actions/workflows/ci-focal.yaml/badge.svg .. |build-jammy| image:: https://github.com/cartographer-project/cartographer/actions/workflows/ci-jammy.yaml/badge.svg
:alt: Ubuntu 22.04 Build Status
:scale: 100%
:target: https://github.com/cartographer-project/cartographer/actions/workflows/ci-jammy.yaml
.. |build-focal| image:: https://github.com/cartographer-project/cartographer/actions/workflows/ci-focal.yaml/badge.svg
:alt: Ubuntu 20.04 Build Status :alt: Ubuntu 20.04 Build Status
:scale: 100% :scale: 100%
:target: https://github.com/cartographer-project/cartographer/actions/workflows/ci-focal.yaml :target: https://github.com/cartographer-project/cartographer/actions/workflows/ci-focal.yaml

View File

@ -75,10 +75,6 @@ On Ubuntu 18.04 (Bionic):
:language: bash :language: bash
:lines: 20- :lines: 20-
.. literalinclude:: ../../scripts/install_ceres.sh
:language: bash
:lines: 20-
.. literalinclude:: ../../scripts/install_proto3.sh .. literalinclude:: ../../scripts/install_proto3.sh
:language: bash :language: bash
:lines: 20- :lines: 20-
@ -97,8 +93,8 @@ on systems that meet the following requirements:
* 64-bit, modern CPU (e.g. 3rd generation i7) * 64-bit, modern CPU (e.g. 3rd generation i7)
* 16 GB RAM * 16 GB RAM
* Ubuntu 18.04 (Bionic), 20.04 (Focal) * Ubuntu 18.04 (Bionic), 20.04 (Focal), 22.04 (Jammy)
* gcc version 6.3.0, 7.5.0, 9.3.0 * gcc version 6.3.0, 7.5.0, 9.3.0, 11.2.0
Known Issues Known Issues
------------ ------------

View File

@ -19,7 +19,7 @@ set -o verbose
git clone https://github.com/abseil/abseil-cpp.git git clone https://github.com/abseil/abseil-cpp.git
cd abseil-cpp cd abseil-cpp
git checkout d902eb869bcfacc1bad14933ed9af4bed006d481 git checkout 215105818dfde3174fe799600bb0f3cae233d0bf # 20211102.0
mkdir build mkdir build
cd build cd build
cmake -G Ninja \ cmake -G Ninja \

View File

@ -37,17 +37,15 @@ sudo apt-get install -y \
ninja-build \ ninja-build \
stow stow
# Install Ceres Solver and Protocol Buffers support if available. # Install Ceres Solver, Protocol Buffers, Abseil support if available.
# No need to build it ourselves. # No need to build it ourselves.
if [[ "$(lsb_release -sc)" = "focal" || "$(lsb_release -sc)" = "buster" ]] case "$(lsb_release -sc)" in
then jammy)
sudo apt-get install -y python3-sphinx libgmock-dev libceres-dev protobuf-compiler sudo apt-get install -y python3-sphinx libgmock-dev libceres-dev protobuf-compiler libabsl-dev ;;
else focal|buster)
sudo apt-get install -y python-sphinx sudo apt-get install -y python3-sphinx libgmock-dev libceres-dev protobuf-compiler ;;
if [[ "$(lsb_release -sc)" = "bionic" ]] bionic)
then sudo apt-get install -y python-sphinx libceres-dev ;;
sudo apt-get install -y libceres-dev *)
fi sudo apt-get install -y python-sphinx ;;
fi esac