blob: 5afdef5fceab69a3cdb536660ea5e2e909a3080f [file] [log] [blame]
# Copyright 2017 The Fuchsia Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
LOCAL_DIR := $(GET_LOCAL_DIR)
BUILDGEN_DIR=$(BUILDDIR)/system/host/fidl
MODULE := $(LOCAL_DIR)
MODULE_TYPE := hostlib
MODULE_COMPILEFLAGS := -O0 -g
MODULE_SRCS := \
$(LOCAL_DIR)/lib/attributes.cpp \
$(LOCAL_DIR)/lib/c_generator.cpp \
$(LOCAL_DIR)/lib/coded_types_generator.cpp \
$(LOCAL_DIR)/lib/error_reporter.cpp \
$(LOCAL_DIR)/lib/flat_ast.cpp \
$(LOCAL_DIR)/lib/formatter.cpp \
$(LOCAL_DIR)/lib/json_generator.cpp \
$(LOCAL_DIR)/lib/lexer.cpp \
$(LOCAL_DIR)/lib/library_zx.cpp \
$(LOCAL_DIR)/lib/names.cpp \
$(LOCAL_DIR)/lib/ordinals.cpp \
$(LOCAL_DIR)/lib/parser.cpp \
$(LOCAL_DIR)/lib/raw_ast.cpp \
$(LOCAL_DIR)/lib/source_file.cpp \
$(LOCAL_DIR)/lib/source_location.cpp \
$(LOCAL_DIR)/lib/source_manager.cpp \
$(LOCAL_DIR)/lib/tables_generator.cpp \
$(LOCAL_DIR)/lib/tree_visitor.cpp \
$(LOCAL_DIR)/lib/virtual_source_file.cpp \
$(BUILDGEN_DIR)/lib/json_schema.cpp \
$(BUILDGEN_DIR)/lib/json_schema.cpp: $(LOCAL_DIR)/schema.json
@$(MKDIR)
$(NOECHO)rm -rf $@ && \
printf "\
#include <string>\n\
#include \"fidl/json_schema.h\"\n\
// Autogenerated: Do not modify!\n\
std::string JsonSchema::schema_ = " >> $@ && \
for i in $^; do \
printf "R\"JSON(""$$(cat $${i} | sed -e 's,\\,\\\\,g' )"")JSON\"" >> $@; \
done && \
printf "\
;\n" >> $@ \
MODULE_HOST_LIBS := \
system/ulib/fit.hostlib \
third_party/ulib/uboringssl.hostlib \
MODULE_COMPILEFLAGS := \
-Isystem/ulib/fit/include \
-Ithird_party/ulib/uboringssl/include \
include make/module.mk