Bazel Support (#287) (#291)

This commit is contained in:
Ezekiel Warren
2019-08-21 06:11:29 -07:00
committed by Michele Caini
parent 65e270ff57
commit 90798c161b
18 changed files with 402 additions and 0 deletions

3
.gitignore vendored
View File

@@ -3,3 +3,6 @@ conan/test_package/build
# IDEs
.idea
# Bazel
/bazel-*

9
BUILD.bazel Normal file
View File

@@ -0,0 +1,9 @@
load("//bazel:copts.bzl", "entt_copts")
cc_library(
name = "entt",
visibility = ["//visibility:public"],
strip_include_prefix = "src",
hdrs = glob(["src/**/*.h", "src/**/*.hpp"]),
copts = entt_copts,
)

41
WORKSPACE Normal file
View File

@@ -0,0 +1,41 @@
workspace(name = "com_github_skypjack_entt")
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
name = "com_google_googletest",
strip_prefix = "googletest-release-1.8.1",
url = "https://github.com/google/googletest/archive/release-1.8.1.tar.gz",
sha256 = "9bf1fe5182a604b4135edc1a425ae356c9ad15e9b23f9f12a02e80184c3a249c",
)
http_archive(
name = "org_duktape",
url = "https://duktape.org/duktape-2.4.0.tar.xz",
strip_prefix = "duktape-2.4.0",
sha256 = "86a89307d1633b5cedb2c6e56dc86e92679fc34b05be551722d8cc69ab0771fc",
build_file_content = """
cc_library(
name = "duktape",
visibility = ["//visibility:public"],
strip_include_prefix = "src",
hdrs = ["src/duktape.h", "src/duk_config.h"],
srcs = ["src/duktape.c", "src/duktape.h", "src/duk_config.h"],
)
""",
)
http_archive(
name = "bazelregistry_cereal",
strip_prefix = "cereal-8629f40d932d57c5337d4557327f6f22436211b7",
url = "https://github.com/bazelregistry/cereal/archive/8629f40d932d57c5337d4557327f6f22436211b7.zip",
sha256 = "c983a7a2e16b153c3de022a0818d2f4836e510a3fc3bea9d3703de79f58a90a6",
)
# This is for bazelregistry_cereal
http_archive(
name = "bazelregistry_rapidjson",
strip_prefix = "rapidjson-6b980984dacf689be8f65be823203b967c69da04",
url = "https://github.com/bazelregistry/rapidjson/archive/6b980984dacf689be8f65be823203b967c69da04.zip",
sha256 = "82187ba8de53bab3b4fb9e56d0bae81a96fa27a115e5a6ce14c70f0ef9338965",
)

1
bazel/BUILD.bazel Normal file
View File

@@ -0,0 +1 @@
exports_files(["copts.bzl"], visibility = ["//:__subpackages__"])

10
bazel/copts.bzl Normal file
View File

@@ -0,0 +1,10 @@
_msvc_copts = ["/std:c++17"]
_gcc_copts = ["-std=c++17"]
entt_copts = select({
# Windows
"@bazel_tools//src/conditions:windows": _msvc_copts,
"@bazel_tools//src/conditions:windows_msvc": _msvc_copts,
"@bazel_tools//src/conditions:windows_msys": _msvc_copts,
"//conditions:default": _gcc_copts,
})

0
test/BUILD.bazel Normal file
View File

View File

@@ -0,0 +1,11 @@
load("//bazel:copts.bzl", "entt_copts")
cc_binary(
name = "benchmark",
srcs = ["benchmark.cpp"],
copts = entt_copts,
deps = [
"//:entt",
"@com_google_googletest//:gtest_main",
],
)

0
test/entt/BUILD.bazel Normal file
View File

View File

@@ -0,0 +1,71 @@
load("//bazel:copts.bzl", "entt_copts")
cc_test(
name = "algorithm",
srcs = ["algorithm.cpp"],
copts = entt_copts,
deps = [
"//:entt",
"@com_google_googletest//:gtest_main",
],
)
cc_test(
name = "family",
srcs = ["family.cpp"],
copts = entt_copts,
deps = [
"//:entt",
"@com_google_googletest//:gtest_main",
],
)
cc_test(
name = "hashed_string",
srcs = ["hashed_string.cpp"],
copts = entt_copts,
deps = [
"//:entt",
"@com_google_googletest//:gtest_main",
],
)
cc_test(
name = "ident",
srcs = ["ident.cpp"],
copts = entt_copts,
deps = [
"//:entt",
"@com_google_googletest//:gtest_main",
],
)
cc_test(
name = "monostate",
srcs = ["monostate.cpp"],
copts = entt_copts,
deps = [
"//:entt",
"@com_google_googletest//:gtest_main",
],
)
cc_test(
name = "type_traits",
srcs = ["type_traits.cpp"],
copts = entt_copts,
deps = [
"//:entt",
"@com_google_googletest//:gtest_main",
],
)
cc_test(
name = "utility",
srcs = ["utility.cpp"],
copts = entt_copts,
deps = [
"//:entt",
"@com_google_googletest//:gtest_main",
],
)

View File

@@ -0,0 +1,121 @@
load("//bazel:copts.bzl", "entt_copts")
cc_test(
name = "actor",
copts = entt_copts,
srcs = ["actor.cpp"],
deps = [
"//:entt",
"@com_google_googletest//:gtest_main",
],
)
cc_test(
name = "entity",
copts = entt_copts,
srcs = ["entity.cpp"],
deps = [
"//:entt",
"@com_google_googletest//:gtest_main",
],
)
cc_test(
name = "group",
copts = entt_copts,
srcs = ["group.cpp"],
deps = [
"//:entt",
"@com_google_googletest//:gtest_main",
],
)
cc_test(
name = "helper",
copts = entt_copts,
srcs = ["helper.cpp"],
deps = [
"//:entt",
"@com_google_googletest//:gtest_main",
],
)
cc_test(
name = "observer",
copts = entt_copts,
srcs = ["observer.cpp"],
deps = [
"//:entt",
"@com_google_googletest//:gtest_main",
],
)
cc_test(
name = "prototype",
copts = entt_copts,
srcs = ["prototype.cpp"],
deps = [
"//:entt",
"@com_google_googletest//:gtest_main",
],
)
cc_test(
name = "registry",
copts = entt_copts,
srcs = ["registry.cpp"],
deps = [
"//:entt",
"@com_google_googletest//:gtest_main",
],
)
cc_test(
name = "runtime_view",
copts = entt_copts,
srcs = ["runtime_view.cpp"],
deps = [
"//:entt",
"@com_google_googletest//:gtest_main",
],
)
cc_test(
name = "snapshot",
copts = entt_copts,
srcs = ["snapshot.cpp"],
deps = [
"//:entt",
"@com_google_googletest//:gtest_main",
],
)
cc_test(
name = "sparse_set",
copts = entt_copts,
srcs = ["sparse_set.cpp"],
deps = [
"//:entt",
"@com_google_googletest//:gtest_main",
],
)
cc_test(
name = "storage",
copts = entt_copts,
srcs = ["storage.cpp"],
deps = [
"//:entt",
"@com_google_googletest//:gtest_main",
],
)
cc_test(
name = "view",
copts = entt_copts,
srcs = ["view.cpp"],
deps = [
"//:entt",
"@com_google_googletest//:gtest_main",
],
)

View File

@@ -0,0 +1,11 @@
load("//bazel:copts.bzl", "entt_copts")
cc_test(
name = "locator",
srcs = ["locator.cpp"],
copts = entt_copts,
deps = [
"//:entt",
"@com_google_googletest//:gtest_main",
],
)

View File

@@ -0,0 +1,11 @@
load("//bazel:copts.bzl", "entt_copts")
cc_test(
name = "meta",
srcs = ["meta.cpp"],
copts = entt_copts,
deps = [
"//:entt",
"@com_google_googletest//:gtest_main",
],
)

View File

@@ -0,0 +1,21 @@
load("//bazel:copts.bzl", "entt_copts")
cc_test(
name = "process",
srcs = ["process.cpp"],
copts = entt_copts,
deps = [
"//:entt",
"@com_google_googletest//:gtest_main",
],
)
cc_test(
name = "scheduler",
srcs = ["scheduler.cpp"],
copts = entt_copts,
deps = [
"//:entt",
"@com_google_googletest//:gtest_main",
],
)

View File

@@ -0,0 +1,11 @@
load("//bazel:copts.bzl", "entt_copts")
cc_test(
name = "resource",
srcs = ["resource.cpp"],
copts = entt_copts,
deps = [
"//:entt",
"@com_google_googletest//:gtest_main",
],
)

View File

@@ -0,0 +1,41 @@
load("//bazel:copts.bzl", "entt_copts")
cc_test(
name = "delegate",
srcs = ["delegate.cpp"],
copts = entt_copts,
deps = [
"//:entt",
"@com_google_googletest//:gtest_main",
],
)
cc_test(
name = "dispatcher",
srcs = ["dispatcher.cpp"],
copts = entt_copts,
deps = [
"//:entt",
"@com_google_googletest//:gtest_main",
],
)
cc_test(
name = "emitter",
srcs = ["emitter.cpp"],
copts = entt_copts,
deps = [
"//:entt",
"@com_google_googletest//:gtest_main",
],
)
cc_test(
name = "sigh",
srcs = ["sigh.cpp"],
copts = entt_copts,
deps = [
"//:entt",
"@com_google_googletest//:gtest_main",
],
)

16
test/lib/BUILD.bazel Normal file
View File

@@ -0,0 +1,16 @@
load("//bazel:copts.bzl", "entt_copts")
cc_test(
name = "lib",
srcs = [
"types.h",
"a_module.cpp",
"another_module.cpp",
"lib.cpp",
],
copts = entt_copts,
deps = [
"//:entt",
"@com_google_googletest//:gtest_main",
],
)

12
test/mod/BUILD.bazel Normal file
View File

@@ -0,0 +1,12 @@
load("//bazel:copts.bzl", "entt_copts")
cc_test(
name = "mod",
srcs = ["mod.cpp"],
copts = entt_copts,
deps = [
"//:entt",
"@org_duktape//:duktape",
"@com_google_googletest//:gtest_main",
],
)

12
test/snapshot/BUILD.bazel Normal file
View File

@@ -0,0 +1,12 @@
load("//bazel:copts.bzl", "entt_copts")
cc_test(
name = "snapshot",
srcs = ["snapshot.cpp"],
copts = entt_copts,
deps = [
"//:entt",
"@com_google_googletest//:gtest_main",
"@bazelregistry_cereal//:cereal",
],
)