Commit Graph

44 Commits

Author SHA1 Message Date
Laurent Perron
25027abeb9 bump graph code; add flow_graph, remove star_graph 2025-01-19 11:43:48 +01:00
Laurent Perron
54b8c24839 big graph cleaning; rewrite CP-SAT python layer; rewrite model_builder python layer; reorganize CP-SAT scheduling and packing code 2025-01-15 13:51:40 +01:00
Corentin Le Molgat
a66a6daac7 Bump Copyright to 2025 2025-01-10 11:35:44 +01:00
Laurent Perron
d68142df0b revamp graph code; remove deprecated graph implementations 2024-12-28 11:24:09 +01:00
Laurent Perron
0cc3096448 reorganize graph code 2024-12-18 17:57:57 +01:00
Corentin Le Molgat
d5c3764d77 cmake: Fix macOS 15 python build 2024-12-16 15:45:02 +01:00
Mizux Seiha
a76bf1c5dd bump license boilerplate 2024-01-04 13:43:15 +01:00
Corentin Le Molgat
63357b2e67 graph: add bazel comment 2023-08-21 09:04:57 +02:00
Laurent Perron
92ebf24647 set_node_supply -> set_node_supplies in python min cost flow 2022-12-07 13:22:53 +01:00
Laurent Perron
2caae2985c polish/reindent graph python wrappers and samples 2022-10-25 20:30:41 +02:00
Corentin Le Molgat
899e30d88b cmake: Fix python build
* fix cmake/python.cmake
* fix <cmp>/python/CMakeLists.txt
* fix examples/tests/CMakeLists.txt
2022-09-22 22:39:55 +02:00
Laurent Perron
06f3057ebc finish to numpify simple max flow 2022-09-06 14:48:40 +02:00
Laurent Perron
f69de028ba finish to numpify simple min cost flow 2022-09-06 12:42:01 +02:00
Corentin Le Molgat
f98afa8e42 Add missing STL include 2022-07-22 16:25:40 +02:00
Corentin Le Molgat
1af55b2be3 Add license boilerplate 2022-06-21 11:25:29 +02:00
Corentin Le Molgat
c7120439d4 Bump license date 2022-06-17 14:23:23 +02:00
Laurent Perron
06fd6e6c60 add min_cost_flow, max_flow, linear_sum_assignment numpy fast API, port simple_max_flow/simple_min_cost_flow to the fast API, fix #321, #1020, #2390 2022-04-30 18:23:35 +02:00
Laurent Perron
3674539ed3 reformat 2022-04-04 13:26:40 +02:00
Laurent Perron
52e439d5ef use pybind11 for ortools/graph 2022-03-31 18:21:35 +02:00
Mizux Seiha
655eec5260 cmake: rework python 2021-12-03 14:20:19 +01:00
Mizux Seiha
c7441c346c cmake: Migrate to Python3 and use Development.Module
note: Development.Module is use to look for python header only
since library is not available on manylinux.
see: https://gitlab.kitware.com/cmake/cmake/-/issues/20425

note2: Development.Module has been introduced in CMake 3.18
ref: https://cmake.org/cmake/help/latest/module/FindPython3.html
2021-09-08 16:08:52 +02:00
Corentin Le Molgat
ef4405f4ee swig: Remove unneeded int64 typedef 2021-04-02 16:08:32 +02:00
Mizux Seiha
8bb54b04ef Bump Copyright to 2021
FYI:
find ortools \( -type d -name .git -prune \) -o -type f -print0 | xargs -0 sed -i 's/\(Copyright 2010\)-2018/\1-2021/g'
2021-04-01 21:00:53 +02:00
Laurent Perron
baa3678832 remove duplicate swig include 2021-03-24 09:53:51 +01:00
Mizux Seiha
90a3155af1 cmake(python): Fix module update 2020-05-20 18:46:57 +02:00
Mizux Seiha
775aec03dd cmake(python): Refactor
* Use new Python module
* Use setup.py.in input file (should fix windows error)
2020-05-20 10:13:14 +02:00
Corentin Le Molgat
0d6f6dddd9 Export g3 -> gh 2020-03-12 18:20:13 +01:00
Corentin Le Molgat
f2981e11c3 CMake:python: Add missing definition for swig 2020-03-05 13:04:08 +01:00
Corentin Le Molgat
4c7456b175 CMake: Update Python support
* Add define SWIGWORDSIZE64 on Linux
* Add -doxygen option
* add ortools/util/python
* Move python generated stuff to BINARY_DIR/python
* Bump CMake >= 3.14 as requirement
  * SWIG module rework from 3.9 to 3.14
  * Python module rework in 3.12
* Drop Python 2.7 support (like in Makefile)
* Fix clean target
  * OUTPUT/BYPRODUCTS path are relative to CURRENT_BINARY_DIR not WORKING_DIR
* Fix ortools package install in virtualenv
* Clean target now remove the <build>/venv directory
2020-02-28 08:21:27 +01:00
Corentin Le Molgat
cc6a5dfe40 Python: graph small cleanup 2020-02-14 10:41:37 +01:00
Laurent Perron
2ff000ab9a bump abseil to the latest version, adapt the code all around 2019-11-20 14:28:11 -08:00
Laurent Perron
fedf3d4ff4 revamp and simplify swig support, force typed enums for C# and Java for all except the constraint_solver/routing module; port examples; Fix SAT on very large problems 2018-12-11 17:03:03 +01:00
Laurent Perron
1e59a36509 reduce swig complexity 2018-12-11 11:52:50 +01:00
Laurent Perron
589047ce90 python support int64 -> int64_t 2018-12-10 13:35:41 +01:00
Corentin Le Molgat
47fefdc3bb Remove tab from CMakeLists.txt
- Mandatory to follow google internal convention
2018-11-13 10:12:02 +01:00
Laurent Perron
87b9d55b21 update license headers 2018-11-10 18:00:53 +01:00
Laurent Perron
fa09d4949a add SimpleMaxFlow::SetArcCapacity; change to the base library 2018-03-07 11:30:39 +01:00
Corentin Le Molgat
19ae1c121c Fix python loader_path 2018-01-22 14:33:20 +01:00
Corentin Le Molgat
6856567eda Rework CMakeLists.txt
Dependencies:
- Add dependencies as subprojects instead of prebuild (aka imported target)
- add zlib project
- Use Cbc as CMake subproject instead of prebuilt
- Add log between each subproject
- Force gflags namespace to gflags

Or-tools:
- Rework python.cmake support
- Fix missing ortool.util in python (#558)
- Try to use static library for ortools::proto
pros: can use target_link_libraries to get includes etc...
cons: lot of symbols undefined since libortools.so will strip everything -_-
- Use add_library(XXX OBJECT) for ortools/*
- fix get version from git when using small depth copy
- Create Install rule for ortools
- Don't create export rules
note: since we use subprojects instead of Imported Target,
ortools export complained against target deps "that is not in the export set."

Update windows support
- add swig project
- Protobuf force the use of /MD instead of /MT
- or-tools use /MD by default
- Add missing ws2_32
- Add missing psapi
- Update windows disable warnings list
- Build Static or-tools on Windows
- fix windows export symbols leak issue

Signed-off-by: Corentin Le Molgat <corentinl@google.com>
2018-01-19 15:03:25 +01:00
Laurent Perron
03fccb4032 improve incrementality of glop when used in the sat solver; change more copyright dates; more documentation on the gate scheduling problem 2017-10-18 11:09:13 +02:00
Laurent Perron
e42ef1e06e cleanups and minor syncs; sat: add LP guided heuristics 2017-08-03 10:20:59 -07:00
Amit Prakash Ambasta
553772d03c Removed python build for cleaner patches 2017-05-31 12:00:50 +05:30
Amit Prakash Ambasta
2a12468b93 Added cmake support for C++, initial python build support 2017-05-30 12:02:56 +05:30
Laurent Perron
66b8d23079 move src to ortools; simplified python generation; remove some namespaces in the ortools/base helper files 2017-04-26 17:30:25 +02:00