* bump abseil to 20250814 * bump protobuf to v32.0 * cmake: add ccache auto support * backport flatzinc, math_opt and sat update
253 lines
7.5 KiB
Python
253 lines
7.5 KiB
Python
# Copyright 2010-2025 Google LLC
|
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
# you may not use this file except in compliance with the License.
|
|
# You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
|
|
load("@rules_cc//cc:cc_binary.bzl", "cc_binary")
|
|
|
|
cc_binary(
|
|
name = "basic_example",
|
|
srcs = ["basic_example.cc"],
|
|
deps = [
|
|
"//ortools/base",
|
|
"//ortools/base:status_macros",
|
|
"//ortools/math_opt/cpp:math_opt",
|
|
"//ortools/math_opt/solvers:gscip_solver",
|
|
"@abseil-cpp//absl/status",
|
|
],
|
|
)
|
|
|
|
cc_binary(
|
|
name = "cocktail_hour",
|
|
srcs = ["cocktail_hour.cc"],
|
|
deps = [
|
|
"//ortools/base",
|
|
"//ortools/base:map_util",
|
|
"//ortools/base:status_macros",
|
|
"//ortools/math_opt/cpp:math_opt",
|
|
"//ortools/math_opt/solvers:gscip_solver",
|
|
"//ortools/util:status_macros",
|
|
"@abseil-cpp//absl/container:flat_hash_map",
|
|
"@abseil-cpp//absl/container:flat_hash_set",
|
|
"@abseil-cpp//absl/flags:flag",
|
|
"@abseil-cpp//absl/log:check",
|
|
"@abseil-cpp//absl/status",
|
|
"@abseil-cpp//absl/status:statusor",
|
|
"@abseil-cpp//absl/strings",
|
|
"@abseil-cpp//absl/types:span",
|
|
],
|
|
)
|
|
|
|
cc_binary(
|
|
name = "linear_programming",
|
|
srcs = ["linear_programming.cc"],
|
|
deps = [
|
|
"//ortools/base",
|
|
"//ortools/base:status_macros",
|
|
"//ortools/math_opt/cpp:math_opt",
|
|
"//ortools/math_opt/solvers:glop_solver",
|
|
"@abseil-cpp//absl/status",
|
|
"@abseil-cpp//absl/strings",
|
|
"@abseil-cpp//absl/time",
|
|
],
|
|
)
|
|
|
|
cc_binary(
|
|
name = "advanced_linear_programming",
|
|
srcs = ["advanced_linear_programming.cc"],
|
|
deps = [
|
|
"//ortools/base",
|
|
"//ortools/base:status_macros",
|
|
"//ortools/math_opt/cpp:math_opt",
|
|
"//ortools/math_opt/solvers:glop_solver",
|
|
"@abseil-cpp//absl/status",
|
|
"@abseil-cpp//absl/strings",
|
|
"@abseil-cpp//absl/time",
|
|
],
|
|
)
|
|
|
|
cc_binary(
|
|
name = "integer_programming",
|
|
srcs = ["integer_programming.cc"],
|
|
deps = [
|
|
"//ortools/base",
|
|
"//ortools/base:status_macros",
|
|
"//ortools/math_opt/cpp:math_opt",
|
|
"//ortools/math_opt/solvers:gscip_solver",
|
|
"@abseil-cpp//absl/status",
|
|
"@abseil-cpp//absl/time",
|
|
],
|
|
)
|
|
|
|
cc_binary(
|
|
name = "cutting_stock",
|
|
srcs = ["cutting_stock.cc"],
|
|
deps = [
|
|
"//ortools/base",
|
|
"//ortools/base:status_macros",
|
|
"//ortools/math_opt/cpp:math_opt",
|
|
"//ortools/math_opt/solvers:cp_sat_solver",
|
|
"//ortools/math_opt/solvers:glop_solver",
|
|
"@abseil-cpp//absl/log:check",
|
|
"@abseil-cpp//absl/status",
|
|
"@abseil-cpp//absl/status:statusor",
|
|
"@abseil-cpp//absl/strings",
|
|
],
|
|
)
|
|
|
|
cc_binary(
|
|
name = "facility_lp_benders",
|
|
srcs = ["facility_lp_benders.cc"],
|
|
deps = [
|
|
"//ortools/base",
|
|
"//ortools/base:status_macros",
|
|
"//ortools/math_opt/cpp:math_opt",
|
|
"//ortools/math_opt/solvers:glop_solver",
|
|
"//ortools/math_opt/solvers:glpk_solver",
|
|
"//ortools/math_opt/solvers:pdlp_solver",
|
|
"//ortools/util:status_macros",
|
|
"@abseil-cpp//absl/container:flat_hash_map",
|
|
"@abseil-cpp//absl/flags:flag",
|
|
"@abseil-cpp//absl/memory",
|
|
"@abseil-cpp//absl/random",
|
|
"@abseil-cpp//absl/random:distributions",
|
|
"@abseil-cpp//absl/random:seed_sequences",
|
|
"@abseil-cpp//absl/status",
|
|
"@abseil-cpp//absl/status:statusor",
|
|
"@abseil-cpp//absl/strings",
|
|
"@abseil-cpp//absl/strings:str_format",
|
|
"@abseil-cpp//absl/time",
|
|
"@abseil-cpp//absl/types:span",
|
|
],
|
|
)
|
|
|
|
cc_binary(
|
|
name = "lagrangian_relaxation",
|
|
srcs = ["lagrangian_relaxation.cc"],
|
|
deps = [
|
|
"//ortools/base",
|
|
"//ortools/base:container_logging",
|
|
"//ortools/base:mathutil",
|
|
"//ortools/base:status_macros",
|
|
"//ortools/math_opt/cpp:math_opt",
|
|
"//ortools/math_opt/solvers:glop_solver",
|
|
"//ortools/math_opt/solvers:gscip_solver",
|
|
"@abseil-cpp//absl/flags:flag",
|
|
"@abseil-cpp//absl/log:check",
|
|
"@abseil-cpp//absl/status",
|
|
"@abseil-cpp//absl/status:statusor",
|
|
"@abseil-cpp//absl/strings",
|
|
"@abseil-cpp//absl/strings:str_format",
|
|
],
|
|
)
|
|
|
|
cc_binary(
|
|
name = "linear_regression",
|
|
srcs = ["linear_regression.cc"],
|
|
deps = [
|
|
"//ortools/base",
|
|
"//ortools/base:status_macros",
|
|
"//ortools/math_opt/cpp:math_opt",
|
|
"//ortools/math_opt/solvers:pdlp_solver",
|
|
"@abseil-cpp//absl/algorithm:container",
|
|
"@abseil-cpp//absl/flags:flag",
|
|
"@abseil-cpp//absl/log:check",
|
|
"@abseil-cpp//absl/random",
|
|
"@abseil-cpp//absl/status",
|
|
"@abseil-cpp//absl/status:statusor",
|
|
"@abseil-cpp//absl/strings",
|
|
"@abseil-cpp//absl/types:span",
|
|
],
|
|
)
|
|
|
|
cc_binary(
|
|
name = "mathopt_info",
|
|
srcs = ["mathopt_info.cc"],
|
|
deps = [
|
|
"//ortools/base",
|
|
"//ortools/math_opt/core:solver_interface",
|
|
"//ortools/math_opt/cpp:math_opt",
|
|
"//ortools/math_opt/solvers:cp_sat_solver",
|
|
"//ortools/math_opt/solvers:glop_solver",
|
|
"//ortools/math_opt/solvers:glpk_solver",
|
|
"//ortools/math_opt/solvers:gscip_solver",
|
|
"//ortools/math_opt/solvers:highs_solver",
|
|
"//ortools/math_opt/solvers:pdlp_solver",
|
|
],
|
|
)
|
|
|
|
cc_binary(
|
|
name = "tsp",
|
|
srcs = ["tsp.cc"],
|
|
deps = [
|
|
"//ortools/base",
|
|
"//ortools/base:file",
|
|
"//ortools/base:status_macros",
|
|
"//ortools/math_opt/cpp:math_opt",
|
|
"//ortools/math_opt/solvers:gscip_solver",
|
|
"@abseil-cpp//absl/container:flat_hash_set",
|
|
"@abseil-cpp//absl/flags:flag",
|
|
"@abseil-cpp//absl/log:check",
|
|
"@abseil-cpp//absl/random",
|
|
"@abseil-cpp//absl/status",
|
|
"@abseil-cpp//absl/status:statusor",
|
|
"@abseil-cpp//absl/strings",
|
|
"@abseil-cpp//absl/types:span",
|
|
],
|
|
)
|
|
|
|
cc_binary(
|
|
name = "graph_coloring",
|
|
srcs = ["graph_coloring.cc"],
|
|
deps = [
|
|
"//ortools/base",
|
|
"//ortools/base:status_macros",
|
|
"//ortools/math_opt/cpp:math_opt",
|
|
"//ortools/math_opt/solvers:cp_sat_solver",
|
|
"@abseil-cpp//absl/flags:flag",
|
|
"@abseil-cpp//absl/status",
|
|
"@abseil-cpp//absl/status:statusor",
|
|
"@abseil-cpp//absl/strings",
|
|
],
|
|
)
|
|
|
|
cc_binary(
|
|
name = "time_indexed_scheduling",
|
|
srcs = ["time_indexed_scheduling.cc"],
|
|
deps = [
|
|
"//ortools/base",
|
|
"//ortools/base:status_macros",
|
|
"//ortools/math_opt/cpp:math_opt",
|
|
"//ortools/math_opt/solvers:cp_sat_solver",
|
|
"//ortools/math_opt/solvers:gscip_solver",
|
|
"@abseil-cpp//absl/algorithm:container",
|
|
"@abseil-cpp//absl/flags:flag",
|
|
"@abseil-cpp//absl/log",
|
|
"@abseil-cpp//absl/random",
|
|
"@abseil-cpp//absl/status",
|
|
"@abseil-cpp//absl/status:statusor",
|
|
"@abseil-cpp//absl/types:span",
|
|
],
|
|
)
|
|
|
|
cc_binary(
|
|
name = "area_socp",
|
|
srcs = ["area_socp.cc"],
|
|
deps = [
|
|
"//ortools/base",
|
|
"//ortools/base:logging",
|
|
"//ortools/base:status_macros",
|
|
"//ortools/math_opt/cpp:math_opt",
|
|
"@abseil-cpp//absl/flags:flag",
|
|
"@abseil-cpp//absl/status",
|
|
],
|
|
)
|