• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..--

build/23-Nov-2023-1,8971,527

c2hal/23-Nov-2023-4,2712,841

hashing/23-Nov-2023-270177

hidl2aidl/23-Nov-2023-4,5543,389

host_utils/23-Nov-2023-977633

lint/23-Nov-2023-3,3002,549

metadata/23-Nov-2023-213134

scripts/23-Nov-2023-188124

test/23-Nov-2023-11,0178,730

utils/23-Nov-2023-1,164704

.clang-formatD23-Nov-2023291

AST.cppD23-Nov-202332.7 KiB955701

AST.hD23-Nov-202313.8 KiB378190

Android.bpD23-Nov-20234.4 KiB182173

Annotation.cppD23-Nov-20233.1 KiB12879

Annotation.hD23-Nov-20232 KiB8140

ArrayType.cppD23-Nov-202314.8 KiB549429

ArrayType.hD23-Nov-20233.9 KiB13178

CleanSpec.mkD23-Nov-20232.2 KiB492

CompoundType.cppD23-Nov-202366.8 KiB2,0551,650

CompoundType.hD23-Nov-20236.5 KiB195125

ConstantExpression.cppD23-Nov-202329.2 KiB840566

ConstantExpression.hD23-Nov-20239 KiB247135

Coordinator.cppD23-Nov-202334.6 KiB1,064805

Coordinator.hD23-Nov-20238.2 KiB219104

DeathRecipientType.cppD23-Nov-20232.5 KiB8752

DeathRecipientType.hD23-Nov-20231.6 KiB5726

DocComment.cppD23-Nov-20233.3 KiB10664

DocComment.hD23-Nov-20232.1 KiB8140

EnumType.cppD23-Nov-202329.9 KiB972755

EnumType.hD23-Nov-20237.5 KiB240154

FmqType.cppD23-Nov-20234.7 KiB188140

FmqType.hD23-Nov-20232.3 KiB8147

FormattingConstants.hD23-Nov-2023717 235

HandleType.cppD23-Nov-20235 KiB193144

HandleType.hD23-Nov-20232.6 KiB9152

HidlTypeAssertion.cppD23-Nov-20231.5 KiB6033

HidlTypeAssertion.hD23-Nov-20231.3 KiB4715

Interface.cppD23-Nov-202332.7 KiB990823

Interface.hD23-Nov-20236.2 KiB185108

Location.cppD23-Nov-20233 KiB10970

Location.hD23-Nov-20232.3 KiB8743

MemoryType.cppD23-Nov-20237 KiB250197

MemoryType.hD23-Nov-20232.9 KiB9757

Method.cppD23-Nov-202310.2 KiB345268

Method.hD23-Nov-20234.4 KiB14389

NOTICED23-Nov-202311.1 KiB203169

NamedType.cppD23-Nov-20231.5 KiB5528

NamedType.hD23-Nov-20231.5 KiB6126

OWNERSD23-Nov-202372 54

PREUPLOAD.cfgD23-Nov-2023102 86

PointerType.cppD23-Nov-20232.8 KiB10365

PointerType.hD23-Nov-20232.1 KiB7440

README.mdD23-Nov-20231.6 KiB5940

Reference.hD23-Nov-20234.7 KiB169101

ScalarType.cppD23-Nov-20238.2 KiB340276

ScalarType.hD23-Nov-20233.2 KiB11874

Scope.cppD23-Nov-20238.5 KiB303222

Scope.hD23-Nov-20233.6 KiB12668

StringType.cppD23-Nov-20235.8 KiB227172

StringType.hD23-Nov-20232.7 KiB9253

TEST_MAPPINGD23-Nov-2023203 1716

Type.cppD23-Nov-202321 KiB794595

Type.hD23-Nov-202313.7 KiB391228

TypeDef.cppD23-Nov-20232.2 KiB8651

TypeDef.hD23-Nov-20231.6 KiB6127

VectorType.cppD23-Nov-202316.7 KiB662519

VectorType.hD23-Nov-20233.9 KiB12884

generateCpp.cppD23-Nov-202364 KiB1,9321,553

generateCppAdapter.cppD23-Nov-20236.2 KiB187136

generateCppImpl.cppD23-Nov-20234.8 KiB168110

generateDependencies.cppD23-Nov-20231.2 KiB4321

generateFormattedHidl.cppD23-Nov-20231.4 KiB4521

generateInheritanceHierarchy.cppD23-Nov-20231.6 KiB5330

generateJava.cppD23-Nov-202318.7 KiB630483

generateJavaImpl.cppD23-Nov-20233.1 KiB9457

generateVts.cppD23-Nov-20232.9 KiB9659

hidl-gen_l.hD23-Nov-2023943 327

hidl-gen_l.llD23-Nov-20237.8 KiB215177

hidl-gen_y-helpers.hD23-Nov-20231 KiB3210

hidl-gen_y.yyD23-Nov-202335.6 KiB1,1561,022

main.cppD23-Nov-202353.1 KiB1,5991,315

update-all-google-makefiles.shD23-Nov-2023435 115

update-makefiles-helper.shD23-Nov-20233.1 KiB12277

README.md

1# hidl-gen
2
3Full documentation can be found here:
4<https://source.android.com/devices/architecture/hidl/>
5
6hidl-gen is a compiler for the HIDL (HAL Interface Design Language) which generates
7C++ and Java endpoints for RPC mechanisms. The main userspace libraries which this
8compiler uses can be found at system/libhidl.
9
10## 1. Build
11
12```
13m hidl-gen
14```
15
16## 2. Run
17
18Note that options for hidl-gen expected to be invoked by the build system
19are marked with 'internal' in the help menu.
20
21```
22hidl-gen -h
23
24hidl-gen -o output -L c++-impl -r android.hardware:hardware/interfaces -r android.hidl:system/libhidl/transport android.hardware.nfc@1.0
25```
26
27Some defaults for package roots are also provided
28
29```
30hidl-gen -o output -L c++-impl android.hardware.nfc@1.0
31hidl-gen -o output -L vts android.hardware.nfc@1.0
32hidl-gen -L hash android.hardware.nfc@1.0
33```
34
35Example command for vendor project
36
37```
38hidl-gen -L c++-impl -r vendor.foo:vendor/foo/interfaces vendor.foo.nfc@1.0
39```
40
41See update-makefiles-helper.sh and update-all-google-makefiles.sh for examples
42of how to generate HIDL makefiles (using the -Landroidbp option).
43
44> **_NOTE:_**  When using the -Landroidbp option, you can force generated
45> modules to be installed in `/system_ext` rather than other partition by putting a
46> marker file `.hidl_for_system_ext` alongside `*.hal` files.
47
48> **_NOTE:_**  You can also install the vendor variant of the generated modules
49> to be installed in `/odm` rather than `/vendor` by putting a marker file
50> `.hidl_for_odm` alongside `*.hal` files.
51
52# c2hal
53
54This is a helper tool to convert C headers to valid .hal files.
55
56```
57m c2hal && c2hal -h
58```
59