Skip to content

Migrate to abseil-cpp #871

Closed
Closed

Description

Description

Currently ortools provide its own custom base library but it should use abseil-cpp instead which is the official way to get Google C++ "basic" set of libraries.

Here the roadmap of origin/abseil branch:

CCTZ Integration (DEPRECATED)

cctz is not needed anymore since abseil-cpp ship its own version.
(they have copy/paste the cctz code in https://github.com/abseil/abseil-cpp/tree/master/absl/time/internal/cctz)
note: debian already provide a cctz package...

  1. Patch cctz to add cmake install rule (Missing CMake install rules cctz#82)
  2. Backport cmake install rule to google/cctz (cf Add CMake install rules cctz#83)
  3. Add cctz as third party deps in Makefile
  4. Revert cctz to Makefile (cctz is now integrated in abseil-cpp)

Abseil-cpp Integration

  1. Patch abseil-cpp to add cmake intall rule (Step 6: Allow Abseil to be installed and used with find_package() abseil/abseil-cpp#111)
  2. Backport cmake install rule to abseil/abseil-cpp ([WIP] CMake Install rule proposal abseil/abseil-cpp#182)
  3. Add abseil-cpp to Makefile based build on unix
  4. Add abseil-cpp to Makefile based build on windows
  5. Add abseil-cpp to CMake based build
  6. Port or-tools to abseil: C++ Part (unix)
  7. Port or-tools to abseil: C++ Part (windows)
  8. Port C++ example to abseil
  9. Port or-tools to abseil: Python Part
  10. Port Python example to abseil
  11. Port or-tools to abseil: Java Part
  12. Port Java example to abseil
  13. Port or-tools to abseil: .Net Part
  14. Port .Net example to abseil
  15. Update Python archive rules
  16. Update .Net runtime nuget package
  17. Update CC/Java/.Net archive rules
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions