Merge "Do all validation during validation phase." into oc-mr1-dev-plus-aosp
am: 8fdb46c3fa

Change-Id: I96caf81bc1b40220e696aae463be24604af4b82b
tree: e25b8e63174d579e86b92e80f42cb8c98614b84c
  1. build/
  2. c2hal/
  3. docs/
  4. include_hash/
  5. scripts/
  6. test/
  7. utils/
  8. .clang-format
  9. Android.bp
  10. Annotation.cpp
  11. Annotation.h
  12. ArrayType.cpp
  13. ArrayType.h
  14. AST.cpp
  15. AST.h
  16. CleanSpec.mk
  17. CompoundType.cpp
  18. CompoundType.h
  19. ConstantExpression.cpp
  20. ConstantExpression.h
  21. Coordinator.cpp
  22. Coordinator.h
  23. DeathRecipientType.cpp
  24. DeathRecipientType.h
  25. EnumType.cpp
  26. EnumType.h
  27. FmqType.cpp
  28. FmqType.h
  29. generateCpp.cpp
  30. generateCppAdapter.cpp
  31. generateCppImpl.cpp
  32. generateJava.cpp
  33. generateVts.cpp
  34. HandleType.cpp
  35. HandleType.h
  36. Hash.cpp
  37. hidl-gen_l.ll
  38. hidl-gen_y.yy
  39. HidlTypeAssertion.cpp
  40. HidlTypeAssertion.h
  41. Interface.cpp
  42. Interface.h
  43. Location.cpp
  44. Location.h
  45. main.cpp
  46. MemoryType.cpp
  47. MemoryType.h
  48. Method.cpp
  49. Method.h
  50. MODULE_LICENSE_APACHE2
  51. NamedType.cpp
  52. NamedType.h
  53. NOTICE
  54. OWNERS
  55. PointerType.cpp
  56. PointerType.h
  57. PREUPLOAD.cfg
  58. README.md
  59. Reference.h
  60. RefType.cpp
  61. RefType.h
  62. ScalarType.cpp
  63. ScalarType.h
  64. Scope.cpp
  65. Scope.h
  66. StringType.cpp
  67. StringType.h
  68. Type.cpp
  69. Type.h
  70. TypeDef.cpp
  71. TypeDef.h
  72. update-all-google-makefiles.sh
  73. update-makefiles-helper.sh
  74. VectorType.cpp
  75. VectorType.h
README.md

hidl-gen user guide

1. Build

croot
make hidl-gen

2. Run

hidl-gen -o output-path -L language (-r interface-root) fqname

output-path: directory to store the output files.
language: output file for given language. e.g.c++, vts..

fqname: fully qualified name of the input files.
For singe file input, follow the format: package@version::fileName
For directory input, follow the format: package@version

interface-root(optional): prefix and root path for fqname.
If not set, use the default prefix: android.hardware and default root path
defined in $TOP.

examples:

croot
hidl-gen -o output -L c++ -r android.hardware:hardware/interfaces -r android.hidl:system/libhidl/transport android.hardware.nfc@1.0::INfc.hal
hidl-gen -o output -L vts -r android.hardware:hardware/interfaces -r android.hidl:system/libhidl/transport android.hardware.nfc@1.0
hidl-gen -o test -L c++ -r android.hardware:hardware/interfaces -r android.hidl:system/libhidl/transport android.hardware.nfc@1.0
hidl-gen -L hash -r android.hardware:hardware/interfaces -r android.hidl:system/libhidl/transport android.hardware.nfc@1.0