Thomas Vachuska | 73436b5 | 2017-03-22 19:50:47 -0700 | [diff] [blame^] | 1 | COMPILE_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 | |
| 15 | YANG_TOOLS = [ |
| 16 | '//apps/yang:onos-apps-yang', |
| 17 | '//lib:onos-yang-runtime', |
| 18 | ] |
| 19 | |
| 20 | yang_library( |
| 21 | name = 'yang', |
| 22 | srcs = glob(['src/**/*.yang']), |
| 23 | ) |
| 24 | |
| 25 | genrule( |
| 26 | name = 'schema', |
| 27 | srcs = [ ':yang#srcs' ], |
| 28 | cmd = '$(location //buck-tools:yang-schema) $OUT $SRCS', |
| 29 | out = 'yang' |
| 30 | ) |
| 31 | |
| 32 | genrule( |
| 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 | |
| 39 | osgi_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 | |
| 50 | onos_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 | ) |