"""
@generated
cargo-raze crate build file.

DO NOT EDIT! Replaced on runs of cargo-raze
"""

# buildifier: disable=load
load("@bazel_skylib//lib:selects.bzl", "selects")

# buildifier: disable=load
load(
    "@rules_rust//rust:rust.bzl",
    "rust_binary",
    "rust_library",
    "rust_test",
)

package(default_visibility = [
    # Public for visibility by "@raze__crate__version//" targets.
    #
    # Prefer access through "//third_party/cargo", which limits external
    # visibility to explicit Cargo.toml dependencies.
    "//visibility:public",
])

licenses([
    "notice",  # MIT from expression "MIT OR Apache-2.0"
])

# Generated Targets
load(
    "@rules_rust//cargo:cargo_build_script.bzl",
    "cargo_build_script",
)

# Unsupported target "build-script-build" with type "custom-build" omitted

cargo_features = [
    # TODO(q3k): these features were all added manually - figure out a way
    # to convince cargo-raze to do this for us.
    "accctrl",
    "aclapi",
    "activation",
    "adhoc",
    "appmgmt",
    "audioclient",
    "audiosessiontypes",
    "avrt",
    "basetsd",
    "bcrypt",
    "bits",
    "bits10_1",
    "bits1_5",
    "bits2_0",
    "bits2_5",
    "bits3_0",
    "bits4_0",
    "bits5_0",
    "bitscfg",
    "bitsmsg",
    "bluetoothapis",
    "bluetoothleapis",
    "bthdef",
    "bthioctl",
    "bthledef",
    "bthsdpdef",
    "bugcodes",
    "cderr",
    "cfg",
    "cfgmgr32",
    "cguid",
    "combaseapi",
    "coml2api",
    "commapi",
    "commctrl",
    "commdlg",
    "commoncontrols",
    "consoleapi",
    "corecrt",
    "corsym",
    "d2d1",
    "d2d1_1",
    "d2d1_2",
    "d2d1_3",
    "d2d1effectauthor",
    "d2d1effects",
    "d2d1effects_1",
    "d2d1effects_2",
    "d2d1svg",
    "d2dbasetypes",
    "d3d",
    "d3d10",
    "d3d10_1",
    "d3d10_1shader",
    "d3d10effect",
    "d3d10misc",
    "d3d10sdklayers",
    "d3d10shader",
    "d3d11",
    "d3d11_1",
    "d3d11_2",
    "d3d11_3",
    "d3d11_4",
    "d3d11on12",
    "d3d11sdklayers",
    "d3d11shader",
    "d3d11tokenizedprogramformat",
    "d3d12",
    "d3d12sdklayers",
    "d3d12shader",
    "d3d9",
    "d3d9caps",
    "d3d9types",
    "d3dcommon",
    "d3dcompiler",
    "d3dcsx",
    "d3dkmdt",
    "d3dkmthk",
    "d3dukmdt",
    "d3dx10core",
    "d3dx10math",
    "d3dx10mesh",
    "datetimeapi",
    "davclnt",
    "dbghelp",
    "dbt",
    "dcommon",
    "dcomp",
    "dcompanimation",
    "dcomptypes",
    "dde",
    "ddraw",
    "ddrawi",
    "ddrawint",
    "debugapi",
    "devguid",
    "devicetopology",
    "devpkey",
    "devpropdef",
    "dinput",
    "dinputd",
    "dispex",
    "dmksctl",
    "dmusicc",
    "docobj",
    "documenttarget",
    "dot1x",
    "dpa_dsa",
    "dpapi",
    "dsgetdc",
    "dsound",
    "dsrole",
    "dvp",
    "dwmapi",
    "dwrite",
    "dwrite_1",
    "dwrite_2",
    "dwrite_3",
    "dxdiag",
    "dxfile",
    "dxgi",
    "dxgi1_2",
    "dxgi1_3",
    "dxgi1_4",
    "dxgi1_5",
    "dxgi1_6",
    "dxgidebug",
    "dxgiformat",
    "dxgitype",
    "dxva2api",
    "dxvahd",
    "eaptypes",
    "enclaveapi",
    "endpointvolume",
    "errhandlingapi",
    "everything",
    "evntcons",
    "evntprov",
    "evntrace",
    "excpt",
    "exdisp",
    "fibersapi",
    "fileapi",
    "functiondiscoverykeys_devpkey",
    "gl-gl",
    "guiddef",
    "handleapi",
    "heapapi",
    "hidclass",
    "hidpi",
    "hidsdi",
    "hidusage",
    "highlevelmonitorconfigurationapi",
    "hstring",
    "http",
    "ifdef",
    "ifmib",
    "imm",
    "impl-debug",
    "impl-default",
    "in6addr",
    "inaddr",
    "inspectable",
    "interlockedapi",
    "intsafe",
    "ioapiset",
    "ipexport",
    "iphlpapi",
    "ipifcons",
    "ipmib",
    "iprtrmib",
    "iptypes",
    "jobapi",
    "jobapi2",
    "knownfolders",
    "ks",
    "ksmedia",
    "ktmtypes",
    "ktmw32",
    "l2cmn",
    "libloaderapi",
    "limits",
    "lmaccess",
    "lmalert",
    "lmapibuf",
    "lmat",
    "lmcons",
    "lmdfs",
    "lmerrlog",
    "lmjoin",
    "lmmsg",
    "lmremutl",
    "lmrepl",
    "lmserver",
    "lmshare",
    "lmstats",
    "lmsvc",
    "lmuse",
    "lmwksta",
    "lowlevelmonitorconfigurationapi",
    "lsalookup",
    "memoryapi",
    "minschannel",
    "minwinbase",
    "minwindef",
    "mmdeviceapi",
    "mmeapi",
    "mmreg",
    "mmsystem",
    "mprapidef",
    "msaatext",
    "mscat",
    "mschapp",
    "mssip",
    "mstcpip",
    "mswsock",
    "mswsockdef",
    "namedpipeapi",
    "namespaceapi",
    "nb30",
    "ncrypt",
    "netioapi",
    "nldef",
    "ntddndis",
    "ntddscsi",
    "ntddser",
    "ntdef",
    "ntlsa",
    "ntsecapi",
    "ntstatus",
    "oaidl",
    "objbase",
    "objidl",
    "objidlbase",
    "ocidl",
    "ole2",
    "oleauto",
    "olectl",
    "oleidl",
    "opmapi",
    "pdh",
    "perflib",
    "physicalmonitorenumerationapi",
    "playsoundapi",
    "portabledevice",
    "portabledeviceapi",
    "portabledevicetypes",
    "powerbase",
    "powersetting",
    "powrprof",
    "processenv",
    "processsnapshot",
    "processthreadsapi",
    "processtopologyapi",
    "profileapi",
    "propidl",
    "propkey",
    "propkeydef",
    "propsys",
    "prsht",
    "psapi",
    "qos",
    "realtimeapiset",
    "reason",
    "restartmanager",
    "restrictederrorinfo",
    "rmxfguid",
    "roapi",
    "robuffer",
    "roerrorapi",
    "rpc",
    "rpcdce",
    "rpcndr",
    "rtinfo",
    "sapi",
    "sapi51",
    "sapi53",
    "sapiddk",
    "sapiddk51",
    "schannel",
    "sddl",
    "securityappcontainer",
    "securitybaseapi",
    "servprov",
    "setupapi",
    "shellapi",
    "shellscalingapi",
    "shlobj",
    "shobjidl",
    "shobjidl_core",
    "shtypes",
    "softpub",
    "spapidef",
    "spellcheck",
    "sporder",
    "sql",
    "sqlext",
    "sqltypes",
    "sqlucode",
    "sspi",
    "std",
    "stralign",
    "stringapiset",
    "strmif",
    "subauth",
    "synchapi",
    "sysinfoapi",
    "systemtopologyapi",
    "taskschd",
    "tcpestats",
    "tcpmib",
    "textstor",
    "threadpoolapiset",
    "threadpoollegacyapiset",
    "timeapi",
    "timezoneapi",
    "tlhelp32",
    "transportsettingcommon",
    "tvout",
    "udpmib",
    "unknwnbase",
    "urlhist",
    "urlmon",
    "usb",
    "usbioctl",
    "usbiodef",
    "usbscan",
    "usbspec",
    "userenv",
    "usp10",
    "utilapiset",
    "uxtheme",
    "vadefs",
    "vcruntime",
    "vsbackup",
    "vss",
    "vsserror",
    "vswriter",
    "wbemads",
    "wbemcli",
    "wbemdisp",
    "wbemprov",
    "wbemtran",
    "wct",
    "werapi",
    "winbase",
    "wincodec",
    "wincodecsdk",
    "wincon",
    "wincontypes",
    "wincred",
    "wincrypt",
    "windef",
    "windot11",
    "windowsceip",
    "windowsx",
    "winefs",
    "winerror",
    "winevt",
    "wingdi",
    "winhttp",
    "wininet",
    "winineti",
    "winioctl",
    "winnetwk",
    "winnls",
    "winnt",
    "winreg",
    "winsafer",
    "winscard",
    "winsmcrd",
    "winsock2",
    "winspool",
    "winstring",
    "winsvc",
    "wintrust",
    "winusb",
    "winusbio",
    "winuser",
    "winver",
    "wlanapi",
    "wlanihv",
    "wlanihvtypes",
    "wlantypes",
    "wlclient",
    "wmistr",
    "wnnc",
    "wow64apiset",
    "wpdmtpextensions",
    "ws2bth",
    "ws2def",
    "ws2ipdef",
    "ws2spi",
    "ws2tcpip",
    "wtsapi32",
    "wtypes",
    "wtypesbase",
    "xinput",
]

rust_library(
    name = "winapi",
    srcs = glob(["**/*.rs"]),
    crate_features = cargo_features,
    crate_root = "src/lib.rs",
    crate_type = "lib",
    data = [],
    edition = "2015",
    rustc_flags = [
        "--cap-lints=allow",
    ],
    tags = [
        "cargo-raze",
        "manual",
    ],
    version = "0.3.9",
    # buildifier: leave-alone
    deps = [
        ":winapi_build_script",
    ],
)

# TODO(q3k): figure out why cargo-raze doesn't generate this either?
cargo_build_script(
    name = "winapi_build_script",
    srcs = glob(["**/*.rs"]),
    build_script_env = {
    },
    crate_features = cargo_features,
    crate_root = "build.rs",
    data = glob(["**"]),
    edition = "2018",
    rustc_flags = [
        "--cap-lints=allow",
    ],
    tags = [
        "cargo-raze",
        "manual",
    ],
    version = "0.3.9",
    visibility = ["//visibility:private"],
    deps = [
        #"//third_party/cargo/vendor/wayland-scanner-0.28.5:wayland_scanner",
        #"//third_party/cargo/vendor/wayland-sys-0.28.5:wayland_sys",
    ],
)
