diff --git a/src/drt/BUILD b/src/drt/BUILD index be713569a38..1e7aee6cfec 100644 --- a/src/drt/BUILD +++ b/src/drt/BUILD @@ -24,7 +24,10 @@ cc_library( cc_library( name = "base_types", srcs = ["src/frBaseTypes.cpp"], - hdrs = ["src/frBaseTypes.h"], + hdrs = [ + "src/dr/FlexMazeTypes.h", + "src/frBaseTypes.h", + ], includes = ["src"], deps = [ "//src/odb/src/db", @@ -91,11 +94,11 @@ cc_library( "src/db/tech/frTechObject.h", "src/db/tech/frViaDef.h", "src/db/tech/frViaRuleGenerate.h", - "src/dr/FlexMazeTypes.h", ], includes = [ "src", ], + visibility = ["//src/drt:__subpackages__"], deps = [ ":base_types", "//src/odb/src/db", @@ -104,10 +107,44 @@ cc_library( ], ) +# Headers owned by :drt but also consumed by :ui. Kept package-private so +# nothing outside //src/drt can depend on them. +cc_library( + name = "drt_private_hdrs", + hdrs = [ + "src/AbstractGraphicsFactory.h", + "src/distributed/drUpdate.h", + "src/dr/AbstractDRGraphics.h", + "src/dr/FlexDR.h", + "src/dr/FlexGridGraph.h", + "src/dr/FlexWavefront.h", + "src/frDesign.h", + "src/frRegionQuery.h", + "src/gc/FlexGC.h", + "src/global.h", + "src/pa/AbstractPAGraphics.h", + "src/pa/FlexPA.h", + "src/pa/FlexPA_unique.h", + "src/ta/AbstractTAGraphics.h", + "src/ta/FlexTA.h", + ], + includes = ["src"], + visibility = ["//visibility:private"], + deps = [ + ":base_types", + ":db_hdrs", + "//src/dst", + "//src/odb/src/db", + "//src/utl", + "@boost.container", + "@boost.polygon", + "@boost.serialization", + ], +) + cc_library( name = "drt", srcs = [ - "src/AbstractGraphicsFactory.h", "src/DesignCallBack.cpp", "src/DesignCallBack.h", "src/TritonRoute.cpp", @@ -132,14 +169,11 @@ cc_library( "src/distributed/RoutingCallBack.h", "src/distributed/RoutingJobDescription.h", "src/distributed/drUpdate.cpp", - "src/distributed/drUpdate.h", "src/distributed/frArchive.cpp", "src/distributed/frArchive.h", "src/distributed/paUpdate.cpp", "src/distributed/paUpdate.h", - "src/dr/AbstractDRGraphics.h", "src/dr/FlexDR.cpp", - "src/dr/FlexDR.h", "src/dr/FlexDRFlow.cpp", "src/dr/FlexDR_conn.cpp", "src/dr/FlexDR_conn.h", @@ -148,16 +182,11 @@ cc_library( "src/dr/FlexDR_maze.cpp", "src/dr/FlexDR_rq.cpp", "src/dr/FlexGridGraph.cpp", - "src/dr/FlexGridGraph.h", "src/dr/FlexGridGraph_maze.cpp", - "src/dr/FlexWavefront.h", - "src/frDesign.h", "src/frProfileTask.h", "src/frRTree.h", "src/frRegionQuery.cpp", - "src/frRegionQuery.h", "src/gc/FlexGC.cpp", - "src/gc/FlexGC.h", "src/gc/FlexGC_cut.cpp", "src/gc/FlexGC_eol.cpp", "src/gc/FlexGC_impl.h", @@ -167,30 +196,24 @@ cc_library( "src/gc/FlexGC_metspc.cpp", "src/gc/FlexGC_rq.cpp", "src/global.cpp", - "src/global.h", "src/io/GuideProcessor.cpp", "src/io/GuideProcessor.h", "src/io/io.cpp", "src/io/io.h", "src/io/io_parser_helper.cpp", "src/io/io_pin.cpp", - "src/pa/AbstractPAGraphics.h", "src/pa/FlexPA.cpp", - "src/pa/FlexPA.h", "src/pa/FlexPA_acc_pattern.cpp", "src/pa/FlexPA_acc_point.cpp", "src/pa/FlexPA_init.cpp", "src/pa/FlexPA_row_pattern.cpp", "src/pa/FlexPA_unique.cpp", - "src/pa/FlexPA_unique.h", "src/rp/FlexRP.cpp", "src/rp/FlexRP.h", "src/rp/FlexRP_init.cpp", "src/rp/FlexRP_prep.cpp", "src/serialization.h", - "src/ta/AbstractTAGraphics.h", "src/ta/FlexTA.cpp", - "src/ta/FlexTA.h", "src/ta/FlexTA_assign.cpp", "src/ta/FlexTA_end.cpp", "src/ta/FlexTA_init.cpp", @@ -209,6 +232,7 @@ cc_library( deps = [ ":base_types", ":db_hdrs", + ":drt_private_hdrs", ":pin_access_service", "//src/dst", "//src/odb/src/db", @@ -231,29 +255,13 @@ cc_library( cc_library( name = "ui", srcs = [ - "include/drt/TritonRoute.h", - "src/AbstractGraphicsFactory.h", "src/GraphicsFactory.cpp", "src/GraphicsFactory.h", "src/MakeTritonRoute.cpp", - "src/distributed/drUpdate.h", - "src/dr/AbstractDRGraphics.h", - "src/dr/FlexDR.h", "src/dr/FlexDR_graphics.cpp", "src/dr/FlexDR_graphics.h", - "src/dr/FlexGridGraph.h", - "src/dr/FlexWavefront.h", - "src/frDesign.h", - "src/frRegionQuery.h", - "src/gc/FlexGC.h", - "src/global.h", - "src/pa/AbstractPAGraphics.h", - "src/pa/FlexPA.h", "src/pa/FlexPA_graphics.cpp", "src/pa/FlexPA_graphics.h", - "src/pa/FlexPA_unique.h", - "src/ta/AbstractTAGraphics.h", - "src/ta/FlexTA.h", "src/ta/FlexTA_graphics.cpp", "src/ta/FlexTA_graphics.h", ":swig", @@ -273,6 +281,7 @@ cc_library( ":base_types", ":db_hdrs", ":drt", + ":drt_private_hdrs", ":pin_access_service", "//:ord", "//src/dst", diff --git a/src/drt/src/dr/FlexDR.cpp b/src/drt/src/dr/FlexDR.cpp index c86b22f17b9..6179120364b 100644 --- a/src/drt/src/dr/FlexDR.cpp +++ b/src/drt/src/dr/FlexDR.cpp @@ -42,6 +42,7 @@ #include "distributed/frArchive.h" #include "dr/AbstractDRGraphics.h" #include "dr/FlexDR_conn.h" +#include "drt/TritonRoute.h" #include "dst/BalancerJobDescription.h" #include "dst/Distributed.h" #include "dst/JobMessage.h" diff --git a/src/drt/src/dr/FlexDR.h b/src/drt/src/dr/FlexDR.h index b074e3dad55..aa12f6d3e7f 100644 --- a/src/drt/src/dr/FlexDR.h +++ b/src/drt/src/dr/FlexDR.h @@ -36,7 +36,6 @@ #include "dr/FlexGridGraph.h" #include "dr/FlexMazeTypes.h" #include "dr/FlexWavefront.h" -#include "drt/TritonRoute.h" #include "dst/JobMessage.h" #include "frBaseTypes.h" #include "frDesign.h" @@ -58,6 +57,7 @@ class Logger; namespace drt { +class TritonRoute; class frConstraint; struct SearchRepairArgs;