Files
ortools-clone/ortools/math_opt/samples/cpp/BUILD.bazel
Mizux Seiha 4f381f6d07 backport from main:
* bump abseil to 20250814
* bump protobuf to v32.0
* cmake: add ccache auto support
* backport flatzinc, math_opt and sat update
2025-09-16 16:25:04 +02:00

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",
],
)