Merge branch 'main' of github.com:google/or-tools
This commit is contained in:
57
.github/workflows/cmake_linux_cpp.yml
vendored
57
.github/workflows/cmake_linux_cpp.yml
vendored
@@ -4,53 +4,32 @@ on: [push, pull_request]
|
||||
|
||||
jobs:
|
||||
# Building using the github runner environement directly.
|
||||
ninja:
|
||||
linux:
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
matrix:
|
||||
build: [
|
||||
["Unix Makefiles", "Release"],
|
||||
["Ninja", "Release"],
|
||||
["Ninja Multi-Config", "Release"]
|
||||
]
|
||||
fail-fast: false
|
||||
env:
|
||||
GENERATOR: ${{ matrix.build[0] }}
|
||||
BUILD_TYPE: ${{ matrix.build[1] }}
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Check cmake
|
||||
run: cmake --version
|
||||
- name: Install Ninja
|
||||
run: |
|
||||
sudo apt update
|
||||
sudo apt install -y ninja-build
|
||||
- name: Configure
|
||||
run: cmake -S. -Bbuild -G "Ninja" -DCMAKE_BUILD_TYPE=Release -DBUILD_DEPS=ON -DCMAKE_INSTALL_PREFIX=install
|
||||
- name: Build
|
||||
run: cmake --build build --target all -v
|
||||
- name: Test
|
||||
run: CTEST_OUTPUT_ON_FAILURE=1 cmake --build build --target test -v
|
||||
- name: Install
|
||||
run: cmake --build build --target install -v
|
||||
ninja-multi:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Check cmake
|
||||
run: cmake --version
|
||||
- name: Install Ninja
|
||||
run: |
|
||||
sudo apt update
|
||||
sudo apt install -y ninja-build
|
||||
- name: Configure
|
||||
run: cmake -S. -Bbuild -G "Ninja Multi-Config" -DBUILD_DEPS=ON -DCMAKE_INSTALL_PREFIX=install
|
||||
- name: Build
|
||||
run: cmake --build build --config Release --target all -v
|
||||
- name: Test
|
||||
run: CTEST_OUTPUT_ON_FAILURE=1 cmake --build build --config Release --target test -v
|
||||
- name: Install
|
||||
run: cmake --build build --config Release --target install -v
|
||||
make:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
sudo apt-get update
|
||||
sudo apt-get install ninja-build
|
||||
- name: Check cmake
|
||||
run: cmake --version
|
||||
- name: Configure
|
||||
run: cmake -S. -Bbuild -DCMAKE_BUILD_TYPE=Release -DBUILD_DEPS=ON
|
||||
run: cmake -S. -Bbuild -G "$GENERATOR" -DCMAKE_BUILD_TYPE="$BUILD_TYPE" -DBUILD_DEPS=ON -DCMAKE_INSTALL_PREFIX=install
|
||||
- name: Build
|
||||
run: cmake --build build --config Release --target all -v
|
||||
run: cmake --build build --config "$BUILD_TYPE" --target all -v
|
||||
- name: Test
|
||||
run: CTEST_OUTPUT_ON_FAILURE=1 cmake --build build --config Release --target test -v
|
||||
run: CTEST_OUTPUT_ON_FAILURE=1 cmake --build build --config "$BUILD_TYPE" --target test -v
|
||||
- name: Install
|
||||
run: cmake --build build --config Release --target install -v -- DESTDIR=install
|
||||
run: cmake --build build --config "$BUILD_TYPE" --target install -v
|
||||
|
||||
@@ -3,11 +3,7 @@ FROM ortools/cmake:ubuntu_swig AS env
|
||||
# Install .NET SDK
|
||||
# see: https://docs.microsoft.com/en-us/dotnet/core/install/linux-ubuntu
|
||||
RUN apt-get update -qq \
|
||||
&& apt-get install -yq wget apt-transport-https \
|
||||
&& wget -q https://packages.microsoft.com/config/ubuntu/22.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb \
|
||||
&& dpkg -i packages-microsoft-prod.deb \
|
||||
&& apt-get update -qq \
|
||||
&& DEBIAN_FRONTEND=noninteractive apt-get install -yq dotnet-sdk-6.0\
|
||||
&& apt-get install -yq dotnet-sdk-6.0 \
|
||||
&& apt-get clean \
|
||||
&& rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
|
||||
# Trigger first run experience by running arbitrary cmd
|
||||
|
||||
@@ -43,6 +43,7 @@ list(FILTER CXX_SRCS EXCLUDE REGEX ".*/pdlp_solve.cc")
|
||||
list(FILTER CXX_SRCS EXCLUDE REGEX ".*/pdptw.cc")
|
||||
list(FILTER CXX_SRCS EXCLUDE REGEX ".*/sat_runner.cc")
|
||||
list(FILTER CXX_SRCS EXCLUDE REGEX ".*/shift_minimization_sat.cc")
|
||||
list(FILTER CXX_SRCS EXCLUDE REGEX ".*/pdlp_solve.cc")
|
||||
list(FILTER CXX_SRCS EXCLUDE REGEX ".*/solve.cc")
|
||||
list(FILTER CXX_SRCS EXCLUDE REGEX ".*/sports_scheduling_sat.cc") # Too long
|
||||
list(FILTER CXX_SRCS EXCLUDE REGEX ".*/strawberry_fields_with_column_generation.cc") # Too long
|
||||
|
||||
@@ -153,15 +153,21 @@ QEMU_ARGS+=( -E LD_LIBRARY_PATH=/lib )
|
||||
}
|
||||
|
||||
function expand_codescape_config() {
|
||||
# https://www.mips.com/develop/tools/codescape-mips-sdk/mips-toolchain-configurations/
|
||||
# mips-mti: MIPS32R6 and MIPS64R6
|
||||
# mips-img: MIPS32R2 and MIPS64R2
|
||||
|
||||
# ref: https://codescape.mips.com/components/toolchain/2020.06-01/downloads.html
|
||||
# ref: https://codescape.mips.com/components/toolchain/2019.02-04/downloads.html
|
||||
local -r DATE=2020.06-01
|
||||
#local -r DATE=2019.02-04
|
||||
local -r CODESCAPE_URL=https://codescape.mips.com/components/toolchain/${DATE}/Codescape.GNU.Tools.Package.${DATE}.for.MIPS.MTI.Linux.CentOS-6.x86_64.tar.gz
|
||||
#local -r CODESCAPE_URL=https://codescape.mips.com/components/toolchain/${DATE}/Codescape.GNU.Tools.Package.${DATE}.for.MIPS.IMG.Linux.CentOS-6.x86_64.tar.gz
|
||||
local -r GCC_URL=${CODESCAPE_URL}
|
||||
local -r GCC_RELATIVE_DIR="mips-mti-linux-gnu/${DATE}"
|
||||
|
||||
# ref: https://codescape.mips.com/components/toolchain/2019.02-04/downloads.html
|
||||
#local -r DATE=2019.02-04
|
||||
#local -r CODESCAPE_URL=https://codescape.mips.com/components/toolchain/${DATE}/Codescape.GNU.Tools.Package.${DATE}.for.MIPS.IMG.Linux.CentOS-6.x86_64.tar.gz
|
||||
#local -r GCC_RELATIVE_DIR="mips-img-linux-gnu/${DATE}"
|
||||
|
||||
local -r GCC_URL=${CODESCAPE_URL}
|
||||
unpack "${GCC_URL}" "${GCC_RELATIVE_DIR}"
|
||||
|
||||
local -r GCC_DIR=${ARCHIVE_DIR}/${GCC_RELATIVE_DIR}
|
||||
@@ -171,12 +177,14 @@ function expand_codescape_config() {
|
||||
case "${TARGET}" in
|
||||
"mips64")
|
||||
MIPS_FLAGS="-EB -mips64r6 -mabi=64"
|
||||
#MIPS_FLAGS="-EB -mips64r2 -mabi=64"
|
||||
FLAVOUR="mips-r6-hard"
|
||||
#FLAVOUR="mips-r2-hard"
|
||||
LIBC_DIR_SUFFIX="lib64"
|
||||
;;
|
||||
"mips64el")
|
||||
MIPS_FLAGS="-EL -mips64r6 -mabi=64"
|
||||
#MIPS_FLAGS="-EL -mips64r2 -mabi=64"
|
||||
FLAVOUR="mipsel-r6-hard"
|
||||
#FLAVOUR="mipsel-r2-hard"
|
||||
LIBC_DIR_SUFFIX="lib64"
|
||||
@@ -201,14 +209,17 @@ set(CMAKE_STAGING_PREFIX ${STAGING_DIR})
|
||||
|
||||
set(tools ${GCC_DIR})
|
||||
|
||||
# R6
|
||||
set(CMAKE_C_COMPILER \${tools}/bin/mips-mti-linux-gnu-gcc)
|
||||
#set(CMAKE_C_COMPILER \${tools}/bin/mips-img-linux-gnu-gcc)
|
||||
set(CMAKE_C_FLAGS "${MIPS_FLAGS}")
|
||||
|
||||
set(CMAKE_CXX_COMPILER \${tools}/bin/mips-mti-linux-gnu-g++)
|
||||
set(CMAKE_CXX_FLAGS "${MIPS_FLAGS} -L${SYSROOT_DIR}/usr/lib64")
|
||||
|
||||
# R2
|
||||
#set(CMAKE_C_COMPILER \${tools}/bin/mips-img-linux-gnu-gcc)
|
||||
#set(CMAKE_C_FLAGS "${MIPS_FLAGS}")
|
||||
#set(CMAKE_CXX_COMPILER \${tools}/bin/mips-img-linux-gnu-g++)
|
||||
#set(CMAKE_CXX_FLAGS "${MIPS_FLAGS}")
|
||||
set(CMAKE_CXX_FLAGS "${MIPS_FLAGS} -L${SYSROOT_DIR}/usr/lib64")
|
||||
|
||||
set(CMAKE_FIND_ROOT_PATH ${GCC_DIR})
|
||||
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
|
||||
|
||||
Reference in New Issue
Block a user