blob: 6b4456a667b355b05c953cfaa5de62c86465cd5c [file] [log] [blame]
Thomas Vachuska73436b52017-03-22 19:50:47 -07001COMPILE_DEPS = [
2 '//lib:CORE_DEPS',
3]
4
5
6# The following will be wrapped into a macro to be used something like this:
7#
8# yang_model (
9# app_name = 'org.onosproject.models.foobar',
10# title = 'Demo YANG Model',
11# url = 'http://onosproject.org',
12# )
13
14
15YANG_TOOLS = [
16 '//apps/yang:onos-apps-yang',
17 '//lib:onos-yang-runtime',
18]
19
20yang_library(
21 name = 'yang',
22 srcs = glob(['src/**/*.yang']),
23)
24
25genrule(
26 name = 'schema',
27 srcs = [ ':yang#srcs' ],
28 cmd = '$(location //buck-tools:yang-schema) $OUT $SRCS',
29 out = 'yang'
30)
31
32genrule(
33 name = 'registrator',
34 srcs = glob(['src/**/*.yang']),
35 cmd = '$(location //buck-tools:yang-registrator) $OUT org.onosproject.models.demo $SRCS',
36 out = 'YangModelRegistrator.java'
37)
38
39osgi_jar(
40 name = 'onos-models-demo',
41 # srcs = [ ':registrator' ],
42 srcs = [ ':yang#srcs', ':registrator' ],
43 deps = COMPILE_DEPS + YANG_TOOLS,
44 resources = [ ':schema' ],
45 resources_root = ".",
46 do_checkstyle = False,
47 do_javadocs = False,
48)
49
50onos_app (
51 app_name = 'org.onosproject.models.demo',
52 title = 'Demo YANG Model',
53 category = 'Model',
54 url = 'http://onosproject.org',
55 description = 'Demo YANG model extension.',
56 required_apps = [ 'org.onosproject.yang' ],
57)