Files
ortools-clone/bazel
Corentin Le Molgat 62a56248e4 bazel: bump swig to 4.2.0
devNote:
```sh
cd /tmp
wget -q "https://downloads.sourceforge.net/project/swig/swig/swig-4.2.0/swig-4.2.0.tar.gz"
tar xzvf swig-4.2.0.tar.gz
cd swig-4.2.0
./configure --prefix=/usr
```
vs github
```
git clone git@github.com:swig/swig.git
cd  swig
git checkout v4.2.0
meld . /tmp/swig-4.2.0
# select Lib/swigwarn.swg, Source/CParse/parser.{ch}, Source/Include/swigconfig.h
git diff -u --no-color HEAD~0
```
2024-01-08 18:03:08 +01:00
..
2024-01-04 13:43:15 +01:00
2024-01-04 13:43:15 +01:00
2024-01-04 13:43:15 +01:00
2024-01-04 13:43:15 +01:00
2024-01-04 13:43:15 +01:00
2024-01-04 13:43:15 +01:00
2024-01-04 13:43:15 +01:00
2023-07-06 17:36:53 +02:00
2024-01-04 13:43:15 +01:00
2024-01-04 13:43:15 +01:00
2024-01-04 13:43:15 +01:00
2024-01-08 18:03:08 +01:00
2024-01-08 18:03:08 +01:00

OR-Tools Bazel Build Instructions

OS C++
Linux Status
MacOS Status
Windows Status

Dockers [Alpine, Archlinux, Centos, Debian, Fedora, OpenSuse, Ubuntu]: Status

Introduction

| Requirement | Dependencies | Compilation | Testing | Integration | CI |

OR-Tools comes with a Bazel based build (WORKSPACE) that can be used on a wide range of platforms. If you don't have Bazel installed already, you can download it for free from https://bazel.build/.

warning: Currently OR-Tools Bazel doesn't support Python, Java nor .Net, please use the Makefile or CMake based build instead.

Requirement

You'll need:

  • Bazel >= 5.4.0.
  • A compiler with C++17 support.

Solvers supported

Here the list of supported solvers:

  • CP-SAT
  • GLOP
  • GLPK
  • PDLP
  • SCIP

Dependencies

OR-Tools depends on several mandatory libraries.

  • Eigen
  • Google Abseil-cpp,
  • Google Protobuf,
  • Google Gtest,
  • Bliss,
  • SCIP,
  • GLPK (GNU Linear Programming Kit)

Compilation

You must compile OR-Tools using at least C++17 (C++20 on windows):

  • on UNIX:

    bazel build --cxxopt=-std=c++17 ...
    
  • on Windows when using MSVC:

    bazel build --cxxopt="/std:c++20" ...
    

Testing

You may run tests using:

  • on UNIX:

    bazel test --cxxopt=-std=c++17 ...
    
  • on Windows when using MSVC:

    bazel test --cxxopt="/std:c++20" ...
    

Integration

To integrate OR-Tools in your own Bazel project, you can take a look at the template project: or-tools/bazel_or-tools.