Skip to content

Commit

Permalink
Resolve ODR issues with manipulation_station example
Browse files Browse the repository at this point in the history
by including manipulation_station targets, and their dependencies, in libdrake.so.  
we consider this a temporary, and very imperfect, solution until in-tree examples can produce their own bindings w/o going through libdrake.so.  (see RobotLocomotion#9648)
  • Loading branch information
RussTedrake committed Oct 29, 2018
1 parent f79ed63 commit f742774
Show file tree
Hide file tree
Showing 3 changed files with 9 additions and 3 deletions.
3 changes: 1 addition & 2 deletions bindings/pydrake/examples/BUILD.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,6 @@ drake_pybind_library(
name = "manipulation_station_py",
cc_deps = [
"//bindings/pydrake:documentation_pybind",
"//examples/manipulation_station",
],
cc_srcs = ["manipulation_station_py.cc"],
package_info = PACKAGE_INFO,
Expand Down Expand Up @@ -140,8 +139,8 @@ drake_py_library(

install(
name = "install",
targets = PY_LIBRARIES,
py_dest = PACKAGE_INFO.py_dest,
targets = PY_LIBRARIES,
deps = get_drake_py_installs(PY_LIBRARIES_WITH_INSTALL),
)

Expand Down
1 change: 1 addition & 0 deletions tools/install/libdrake/build_components.bzl
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,7 @@ LIBDRAKE_COMPONENTS = [
"//common/trajectories",
"//common:drake_marker_shared_library", # unpackaged
"//common:text_logging_gflags_h", # unpackaged
"//examples/manipulation_station:station_simulation", # unpackaged
"//geometry",
"//geometry/dev",
"//geometry/dev/render",
Expand Down
8 changes: 7 additions & 1 deletion tools/install/libdrake/build_components_refresh.py
Original file line number Diff line number Diff line change
Expand Up @@ -30,12 +30,18 @@ def _bazel_query(args):

def _find_libdrake_components():
# This forms the set of cc_library targets that will be installed.
# TODO(russt/eric-cousineau/jwnimmer): Remove any examples from
# libdrake.so, pending resolution of #9648.
components_query = """
kind("cc_library", visible("//tools/install/libdrake:libdrake.so", "//..."))
except(attr("testonly", "1", "//..."))
except("//:*")
except("//bindings/pydrake/...")
except("//examples/...")
except(
"//examples/..." except(
"//examples/manipulation_station/..."
)
)
except("//lcmtypes/...")
except("//tools/install/libdrake:*")
except(attr(tags, "exclude_from_libdrake", //...))
Expand Down

0 comments on commit f742774

Please sign in to comment.