StefanBruens
9021ffbb95
Build Python modules as CMake MODULEs ( #3259 )
...
Python since 3.8 no longer links to the interpreter library, so
symbols like `PyExc_AttributeError` will be undefined at link time.
This causes build failures when shared libraries are linked with
`-Wl,--no-undefined`. Use `TYPE MODULE` for python extension modules,
which allows to specify distinct flags via CMAKE_MODULE_LINKER_FLAGS
vs CMAKE_SHARED_LINKER_FLAGS. (The same is already used by
`pybind11_add_module(... MODULE ...)`).
Fixes #3258 .
2022-04-28 15:50:56 +02:00
Corentin Le Molgat
1eba970bf3
Update pdlp
2022-03-02 22:10:54 +01:00
Mizux Seiha
32b101b9ee
cmake: Fixup for pdlp
2022-02-25 23:43:01 +01:00
Laurent Perron
ce02461741
wrap MPModelRequest in python
2022-01-02 10:30:57 +01:00
Mizux Seiha
655eec5260
cmake: rework python
2021-12-03 14:20:19 +01:00
Laurent Perron
9fefaadfaf
[LP] change default tolerance on verify solution; add missing base include
2021-11-28 13:01:55 +01:00
Laurent Perron
475880c6c7
show load model errors in python linear solver
2021-10-12 10:51:42 +02:00
Laurent Perron
778b1b3854
[MPSolver] Add better code to interrupt solve; rewrite thread management code when using the CP-SAT solver backend
2021-09-23 14:30:01 +02:00
Laurent Perron
6a84a52d9e
switch from pdoc3 to pdoc
2021-09-20 15:23:45 +02: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
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
Corentin Le Molgat
9662b630d6
python: Fix linear_solver.i wrapper
2021-04-01 16:39:12 +02:00
Laurent Perron
3779db1f83
deep rewrite of the gurobi loading code
2021-03-19 16:24:35 +01:00
Laurent Perron
6e15467065
linear solver: int64 -> int64_t; use new CP-SAT logging
2021-03-12 16:59:39 +01:00
Laurent Perron
c55f00b7ed
improve StopSearch() robustness
2021-01-08 09:48:52 +01:00
Laurent Perron
bcb7b3073d
large synchro with internal code: linear solver: introduce intermediate SCIP layer called gscip; sat: more work on slow propagation detection; base: remove statusor, use abseil version; constraint solver: more work on internal local search
2020-10-18 16:38:25 +02:00
Mizux Seiha
dbb878aa36
python: Fix LoadSolutionFromProto leak ( Fix #2190 )
2020-10-08 13:51:47 +02:00
Laurent Perron
23aeaf6072
fix #2094
2020-07-06 11:53:52 +02:00
Laurent Perron
f0f675debd
remove non C++ leaks with the linear solver
2020-06-25 11:15:19 +02:00
Laurent Perron
a8fc48e1fd
polish linear solver backend selection code
2020-06-25 10:32:58 +02:00
Laurent Perron
d6ecea46ad
experimental support for dynamic loading of gurobi; add MPSolver.CreateSolver() factory method for non C++ languages to check correctly installed linear solver backends and licenses when needed; port all non C++ examples
2020-06-24 18:11:12 +02: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
22356ff523
Sync g3 -> gh part_2
2020-03-09 18:34:21 +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
Laurent Perron
2ff000ab9a
bump abseil to the latest version, adapt the code all around
2019-11-20 14:28:11 -08:00
Laurent Perron
bc43e37c90
add sat inferface to the linear solver wrapper
2019-10-18 14:39:51 +02:00
Laurent Perron
439cebb9c8
polish xpress support
2019-09-04 15:20:45 +02:00
Laurent Perron
d216e3caab
remove obsolete unignore
2019-07-18 11:36:10 -07:00
Laurent Perron
8152464418
document more linear solver code
2019-07-17 07:08:02 -07:00
Laurent Perron
ef8be0d86e
polish doc
2019-07-16 10:13:02 -07:00
Laurent Perron
afc4ad1214
simplify python vector swig
2019-07-05 09:32:43 +02:00
Laurent Perron
e6ff7153aa
polish new linear_solver non C++ API
2019-07-01 14:13:15 +02:00
Laurent Perron
d4c088a367
test linear solver constraints(), variables(), and SetHint in Python/Java/C#
2019-07-01 13:41:17 +02:00
Laurent Perron
92891ceb01
implement #506
2019-06-29 17:20:42 +02:00
Laurent Perron
8d492a7dfc
fix and test SetHint for linear_solver/Python
2019-06-29 15:54:26 +02:00
Laurent Perron
8a4ae8bff0
working SetNumTheads in Python/Java/C#; Working SetHint in java/C#
2019-06-29 12:35:15 +02:00
Laurent Perron
8ade2b9209
revert useless previous CL
2019-06-24 15:43:03 +02:00
Laurent Perron
c5554f6ea7
fix #1374
2019-06-24 11:25:24 +02:00
Laurent Perron
342d703d18
wrap linear solver proto APIs in python
2019-05-17 14:02:59 +02:00
Laurent Perron
dbef2bb42f
expose SetNumThreads in python
2019-05-16 08:12:33 +02:00
Corentin Le Molgat
361df3bab6
Expose SetUB and SetLB methods on MPVariables in python.
2019-05-14 11:24:32 +02:00
Laurent Perron
aeec2312d7
fix missing export methods in python
2019-05-10 14:23:28 +02:00
Laurent Perron
2a4fc564b4
add constraint with index in linear solver (API + Proto); rewrite MPS reader/writer; update base library as needed
2019-04-18 19:18:48 +02: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