| load("@rules_cc//cc:cc_library.bzl", "cc_library") |
| |
| # The private headers under detail/ are not self-contained: the vendored copies |
| # of Boost.STLInterfaces and Boost.Text rely on macros and declarations their |
| # includer pulls in first, and the *_generated.hpp fragments are pasted into the |
| # middle of another header. |
| _TEXTUAL_HDRS = glob(["include/boost/parser/detail/**/*.hpp"]) |
| |
| cc_library( |
| name = "boost.parser", |
| hdrs = glob(["include/**/*.hpp"], exclude = _TEXTUAL_HDRS), |
| copts = select({ |
| "@platforms//os:windows": ["/std:c++17"], |
| "//conditions:default": ["-std=c++17"], |
| }), |
| features = ["parse_headers"], |
| includes = ["include"], |
| textual_hdrs = _TEXTUAL_HDRS, |
| visibility = ["//visibility:public"], |
| deps = [ |
| "@boost.assert", |
| "@boost.charconv", |
| "@boost.hana", |
| "@boost.type_index", |
| ], |
| ) |