- CitrineOS core extracted (CSMS OCPP 2.0.1) - OpenOCPP extracted (firmware OCPP 1.6J/2.0.1) - ShapeShifter library installed (pip install -e) - ShapeShifter specification extracted - EVerest extracted TODO updated with progress
138 lines
3.6 KiB
Plaintext
138 lines
3.6 KiB
Plaintext
# SPDX-License-Identifier: Apache-2.0
|
|
# stripped down version of the 2.1.2 recipe in the bazel-central-registry
|
|
# by UebelAndre, licensed Apache-2.0 https://github.com/bazelbuild/bazel-central-registry/blob/4c39e836b6db6c1f83f27e3c79a8a9f03fb1b292/modules/mosquitto/2.1.2/overlay/BUILD.bazel
|
|
# adapted to mosquitto 2.0.22
|
|
load("@bazel_skylib//rules:common_settings.bzl", "bool_flag")
|
|
load("@bazel_skylib//rules:copy_file.bzl", "copy_file")
|
|
load("@bazel_skylib//rules:write_file.bzl", "write_file")
|
|
load("@rules_cc//cc:cc_binary.bzl", "cc_binary")
|
|
load("@rules_cc//cc:cc_library.bzl", "cc_library")
|
|
|
|
###############################################################################
|
|
# Common build settings
|
|
###############################################################################
|
|
|
|
COMMON_COPTS = select({
|
|
"//conditions:default": [
|
|
"-std=gnu99",
|
|
"-w",
|
|
],
|
|
})
|
|
|
|
COMMON_DEFINES = [
|
|
"CMAKE",
|
|
'VERSION=\\"2.0.22\\"',
|
|
"OPENSSL_API_COMPAT=0x10100000L",
|
|
] + select({
|
|
"//conditions:default": [
|
|
"WITH_UNIX_SOCKETS",
|
|
],
|
|
})
|
|
|
|
PLUGIN_LINKOPTS = select({
|
|
"//conditions:default": [],
|
|
})
|
|
|
|
###############################################################################
|
|
# config_header
|
|
###############################################################################
|
|
|
|
copy_file(
|
|
name = "config_header_gen",
|
|
src = "config.h",
|
|
out = "config_inc/config.h",
|
|
)
|
|
|
|
cc_library(
|
|
name = "config_header",
|
|
hdrs = ["config_inc/config.h"],
|
|
includes = ["config_inc"],
|
|
visibility = ["//:__subpackages__"],
|
|
)
|
|
|
|
###############################################################################
|
|
# Bundled dependencies (uthash, utlist)
|
|
###############################################################################
|
|
|
|
cc_library(
|
|
name = "bundled_deps",
|
|
hdrs = [
|
|
"deps/uthash.h",
|
|
"deps/utlist.h",
|
|
],
|
|
includes = ["deps"],
|
|
visibility = ["//:__subpackages__"],
|
|
)
|
|
|
|
###############################################################################
|
|
# mosquitto_common -- shared utility library (libcommon/)
|
|
###############################################################################
|
|
|
|
cc_library(
|
|
name = "mosquitto_common",
|
|
srcs = [],
|
|
hdrs = glob([
|
|
"include/*.h",
|
|
]),
|
|
copts = COMMON_COPTS,
|
|
includes = [
|
|
"include",
|
|
"libcommon",
|
|
],
|
|
local_defines = COMMON_DEFINES + select({
|
|
"//conditions:default": [],
|
|
}),
|
|
visibility = ["//:__subpackages__"],
|
|
deps = [
|
|
":bundled_deps",
|
|
":config_header",
|
|
"@everest-core//third-party/bazel/openssl:ssl",
|
|
] + select({
|
|
"//conditions:default": [],
|
|
}),
|
|
)
|
|
|
|
###############################################################################
|
|
# libmosquitto -- MQTT client library (lib/)
|
|
###############################################################################
|
|
|
|
cc_library(
|
|
name = "mosquitto",
|
|
srcs = glob(
|
|
[
|
|
"lib/*.c",
|
|
"lib/*.h",
|
|
],
|
|
),
|
|
hdrs = glob([
|
|
"include/*.h",
|
|
]),
|
|
copts = COMMON_COPTS,
|
|
includes = [
|
|
"common",
|
|
"include",
|
|
"lib",
|
|
"libcommon",
|
|
],
|
|
linkopts = select({
|
|
"//conditions:default": [
|
|
"-lpthread",
|
|
],
|
|
}),
|
|
local_defines = COMMON_DEFINES + [
|
|
] + select({
|
|
"//conditions:default": ["WITH_THREADING"],
|
|
}) + select({
|
|
"//conditions:default": [],
|
|
}),
|
|
visibility = ["//visibility:public"],
|
|
deps = [
|
|
":bundled_deps",
|
|
":config_header",
|
|
":mosquitto_common",
|
|
"@everest-core//third-party/bazel/openssl:ssl",
|
|
] + select({
|
|
"//conditions:default": [],
|
|
}),
|
|
)
|