1package {
2    // See: http://go/android-license-faq
3    // A large-scale-change added 'default_applicable_licenses' to import
4    // all of the 'license_kinds' from "hardware_st_secure_element2_license"
5    // to get the below license kinds:
6    //   SPDX-license-identifier-Apache-2.0
7    //   SPDX-license-identifier-GPL-2.0
8    default_applicable_licenses: ["hardware_st_secure_element2_license"],
9}
10
11cc_library_shared {
12    // FIXME: this should only be -impl for a passthrough hal.
13    // In most cases, to convert this to a binderized implementation, you should:
14    // - change '-impl' to '-service' here and make it a cc_binary instead of a
15    //   cc_library_shared.
16    // - add a *.rc file for this module.
17    // - delete HIDL_FETCH_I* functions.
18    // - call configureRpcThreadpool and registerAsService on the instance.
19    // You may also want to append '-impl/-service' with a specific identifier like
20    // '-vendor' or '-<hardware identifier>' etc to distinguish it.
21    name: "android.hardware.secure_element@1.0-impl-gto",
22    //relative_install_path: "hw",
23    // FIXME: this should be 'vendor: true' for modules that will eventually be
24    // on AOSP.
25    vendor: true,
26    srcs: [
27        "1.0/esehal/src/checksum.c",
28        "1.0/esehal/src/iso7816_t1.c",
29        "1.0/esehal/src/libse-gto.c",
30        "1.0/esehal/src/spi.c",
31        "1.0/esehal/src/transport.c",
32        "1.0/esehal/src/log.c",
33        "1.0/SecureElement.cpp",
34    ],
35
36    local_include_dirs: [
37        "1.0/esehal/src",
38    ],
39
40    cflags: [
41        "-DANDROID",
42        "-DENABLE_LOGGING=1",
43        "-DENABLE_DEBUG=1",
44        "-DBUILDCFG=1",
45        "-DNXP_EXTNS=TRUE",
46        "-Wno-unused-parameter",
47        "-Wno-unused-private-field",
48        "-Wno-error",
49        "-Wreturn-type",
50    ],
51
52    shared_libs: [
53        "libbase",
54        "libcutils",
55        "libhardware",
56        "libhidlbase",
57        "liblog",
58        "libutils",
59        "android.hardware.secure_element@1.0",
60    ],
61
62}
63
64cc_binary {
65    name: "android.hardware.secure_element@1.0-service-gto",
66    relative_install_path: "hw",
67    init_rc: ["1.0/android.hardware.secure_element@1.0-service-gto.rc"],
68    vendor: true,
69    defaults: ["hidl_defaults"],
70    srcs: [
71        "1.0/GtoService.cpp",
72    ],
73
74    shared_libs: [
75        "android.hardware.secure_element@1.0",
76        "android.hardware.secure_element@1.0-impl-gto",
77        "libbase",
78        "libcutils",
79        "libhardware",
80        "libhidlbase",
81        "liblog",
82        "libutils",
83    ],
84
85    sanitize: {
86        memtag_heap: true,
87    },
88}
89
90cc_library_shared {
91    // FIXME: this should only be -impl for a passthrough hal.
92    // In most cases, to convert this to a binderized implementation, you should:
93    // - change '-impl' to '-service' here and make it a cc_binary instead of a
94    //   cc_library_shared.
95    // - add a *.rc file for this module.
96    // - delete HIDL_FETCH_I* functions.
97    // - call configureRpcThreadpool and registerAsService on the instance.
98    // You may also want to append '-impl/-service' with a specific identifier like
99    // '-vendor' or '-<hardware identifier>' etc to distinguish it.
100    name: "android.hardware.secure_element@1.1-impl-gto",
101    //relative_install_path: "hw",
102    // FIXME: this should be 'vendor: true' for modules that will eventually be
103    // on AOSP.
104    vendor: true,
105    srcs: [
106        "1.0/esehal/src/checksum.c",
107        "1.0/esehal/src/iso7816_t1.c",
108        "1.0/esehal/src/libse-gto.c",
109        "1.0/esehal/src/spi.c",
110        "1.0/esehal/src/transport.c",
111        "1.0/esehal/src/log.c",
112        "1.1/SecureElement.cpp",
113    ],
114
115    local_include_dirs: [
116        "1.0/esehal/src",
117    ],
118
119    cflags: [
120        "-DANDROID",
121        "-DENABLE_LOGGING=1",
122        "-DENABLE_DEBUG=1",
123        "-DBUILDCFG=1",
124        "-DNXP_EXTNS=TRUE",
125        "-Wno-unused-parameter",
126        "-Wno-unused-private-field",
127        "-Wno-error",
128        "-Wreturn-type",
129    ],
130
131    shared_libs: [
132        "libbase",
133        "libcutils",
134        "libhardware",
135        "libhidlbase",
136        "liblog",
137        "libutils",
138        "android.hardware.secure_element@1.0",
139	"android.hardware.secure_element@1.1",
140    ],
141
142}
143
144cc_binary {
145    name: "android.hardware.secure_element@1.1-service-gto",
146    relative_install_path: "hw",
147    init_rc: ["1.1/android.hardware.secure_element@1.1-service-gto.rc"],
148    vendor: true,
149    defaults: ["hidl_defaults"],
150    srcs: [
151        "1.1/GtoService.cpp",
152    ],
153
154    shared_libs: [
155        "android.hardware.secure_element@1.0",
156        "android.hardware.secure_element@1.0-impl-gto",
157	"android.hardware.secure_element@1.1",
158        "android.hardware.secure_element@1.1-impl-gto",
159        "libbase",
160        "libcutils",
161        "libhardware",
162        "libhidlbase",
163        "liblog",
164        "libutils",
165    ],
166
167    sanitize: {
168        memtag_heap: true,
169    },
170}
171
172cc_library_shared {
173    // FIXME: this should only be -impl for a passthrough hal.
174    // In most cases, to convert this to a binderized implementation, you should:
175    // - change '-impl' to '-service' here and make it a cc_binary instead of a
176    //   cc_library_shared.
177    // - add a *.rc file for this module.
178    // - delete HIDL_FETCH_I* functions.
179    // - call configureRpcThreadpool and registerAsService on the instance.
180    // You may also want to append '-impl/-service' with a specific identifier like
181    // '-vendor' or '-<hardware identifier>' etc to distinguish it.
182    name: "android.hardware.secure_element@1.2-impl-gto",
183    //relative_install_path: "hw",
184    // FIXME: this should be 'vendor: true' for modules that will eventually be
185    // on AOSP.
186    vendor: true,
187    srcs: [
188        "1.0/esehal/src/checksum.c",
189        "1.0/esehal/src/iso7816_t1.c",
190        "1.0/esehal/src/libse-gto.c",
191        "1.0/esehal/src/spi.c",
192        "1.0/esehal/src/transport.c",
193        "1.0/esehal/src/log.c",
194        "1.2/SecureElement.cpp",
195    ],
196
197    local_include_dirs: [
198        "1.0/esehal/src",
199    ],
200
201    cflags: [
202        "-DANDROID",
203        "-DENABLE_LOGGING=1",
204        "-DENABLE_DEBUG=1",
205        "-DBUILDCFG=1",
206        "-DNXP_EXTNS=TRUE",
207        "-Wno-unused-parameter",
208        "-Wno-unused-private-field",
209        "-Wno-error",
210        "-Wreturn-type",
211    ],
212
213    shared_libs: [
214        "libbase",
215        "libcutils",
216        "libhardware",
217        "libhidlbase",
218        "liblog",
219        "libutils",
220        "android.hardware.secure_element@1.0",
221	"android.hardware.secure_element@1.1",
222	"android.hardware.secure_element@1.2",
223    ],
224
225}
226
227cc_binary {
228    name: "android.hardware.secure_element@1.2-service-gto",
229    relative_install_path: "hw",
230    init_rc: ["1.2/android.hardware.secure_element@1.2-service-gto.rc"],
231    vendor: true,
232    defaults: ["hidl_defaults"],
233    srcs: [
234        "1.2/GtoService.cpp",
235    ],
236
237    shared_libs: [
238        "android.hardware.secure_element@1.0",
239        "android.hardware.secure_element@1.0-impl-gto",
240	"android.hardware.secure_element@1.1",
241        "android.hardware.secure_element@1.1-impl-gto",
242        "android.hardware.secure_element@1.2",
243        "android.hardware.secure_element@1.2-impl-gto",
244        "libbase",
245        "libcutils",
246        "libhardware",
247        "libhidlbase",
248        "liblog",
249        "libutils",
250    ],
251
252    sanitize: {
253        memtag_heap: true,
254    },
255}
256
257// --------------------------------------------------------------------------------
258
259cc_library_shared {
260    // FIXME: this should only be -impl for a passthrough hal.
261    // In most cases, to convert this to a binderized implementation, you should:
262    // - change '-impl' to '-service' here and make it a cc_binary instead of a
263    //   cc_library_shared.
264    // - add a *.rc file for this module.
265    // - delete HIDL_FETCH_I* functions.
266    // - call configureRpcThreadpool and registerAsService on the instance.
267    // You may also want to append '-impl/-service' with a specific identifier like
268    // '-vendor' or '-<hardware identifier>' etc to distinguish it.
269    name: "android.hardware.secure_element@1.0-impl-gto-ese2",
270    //relative_install_path: "hw",
271    // FIXME: this should be 'vendor: true' for modules that will eventually be
272    // on AOSP.
273    vendor: true,
274    srcs: [
275        "1.0/esehal/src/checksum.c",
276        "1.0/esehal/src/iso7816_t1.c",
277        "1.0/esehal/src/libse-gto.c",
278        "1.0/esehal/src/spi.c",
279        "1.0/esehal/src/transport.c",
280        "1.0/esehal/src/log.c",
281        "1.0/SecureElement.cpp",
282    ],
283
284    local_include_dirs: [
285        "1.0/esehal/src",
286    ],
287
288    cflags: [
289        "-DANDROID",
290        "-DENABLE_LOGGING=1",
291        "-DENABLE_DEBUG=1",
292        "-DBUILDCFG=1",
293        "-DNXP_EXTNS=TRUE",
294        "-Wno-unused-parameter",
295        "-Wno-unused-private-field",
296        "-Wno-error",
297        "-Wreturn-type",
298    ],
299
300    shared_libs: [
301        "libbase",
302        "libcutils",
303        "libhardware",
304        "libhidlbase",
305        "liblog",
306        "libutils",
307        "android.hardware.secure_element@1.0",
308    ],
309
310}
311
312cc_binary {
313    name: "android.hardware.secure_element@1.0-service-gto-ese2",
314    relative_install_path: "hw",
315    init_rc: ["1.0/android.hardware.secure_element@1.0-service-gto-ese2.rc"],
316    vendor: true,
317    defaults: ["hidl_defaults"],
318    srcs: [
319        "1.0/GtoService_ese2.cpp",
320    ],
321
322    shared_libs: [
323        "android.hardware.secure_element@1.0",
324        "android.hardware.secure_element@1.0-impl-gto-ese2",
325        "libbase",
326        "libcutils",
327        "libhardware",
328        "libhidlbase",
329        "liblog",
330        "libutils",
331    ],
332
333    sanitize: {
334        memtag_heap: true,
335    },
336}
337
338cc_library_shared {
339    // FIXME: this should only be -impl for a passthrough hal.
340    // In most cases, to convert this to a binderized implementation, you should:
341    // - change '-impl' to '-service' here and make it a cc_binary instead of a
342    //   cc_library_shared.
343    // - add a *.rc file for this module.
344    // - delete HIDL_FETCH_I* functions.
345    // - call configureRpcThreadpool and registerAsService on the instance.
346    // You may also want to append '-impl/-service' with a specific identifier like
347    // '-vendor' or '-<hardware identifier>' etc to distinguish it.
348    name: "android.hardware.secure_element@1.1-impl-gto-ese2",
349    //relative_install_path: "hw",
350    // FIXME: this should be 'vendor: true' for modules that will eventually be
351    // on AOSP.
352    vendor: true,
353    srcs: [
354        "1.0/esehal/src/checksum.c",
355        "1.0/esehal/src/iso7816_t1.c",
356        "1.0/esehal/src/libse-gto.c",
357        "1.0/esehal/src/spi.c",
358        "1.0/esehal/src/transport.c",
359        "1.0/esehal/src/log.c",
360        "1.1/SecureElement.cpp",
361    ],
362
363    local_include_dirs: [
364        "1.0/esehal/src",
365    ],
366
367    cflags: [
368        "-DANDROID",
369        "-DENABLE_LOGGING=1",
370        "-DENABLE_DEBUG=1",
371        "-DBUILDCFG=1",
372        "-DNXP_EXTNS=TRUE",
373        "-Wno-unused-parameter",
374        "-Wno-unused-private-field",
375        "-Wno-error",
376        "-Wreturn-type",
377    ],
378
379    shared_libs: [
380        "libbase",
381        "libcutils",
382        "libhardware",
383        "libhidlbase",
384        "liblog",
385        "libutils",
386        "android.hardware.secure_element@1.0",
387	"android.hardware.secure_element@1.1",
388    ],
389
390}
391
392cc_binary {
393    name: "android.hardware.secure_element@1.1-service-gto-ese2",
394    relative_install_path: "hw",
395    init_rc: ["1.1/android.hardware.secure_element@1.1-service-gto-ese2.rc"],
396    vendor: true,
397    defaults: ["hidl_defaults"],
398    srcs: [
399        "1.1/GtoService_ese2.cpp",
400    ],
401
402    shared_libs: [
403        "android.hardware.secure_element@1.0",
404        "android.hardware.secure_element@1.0-impl-gto-ese2",
405	"android.hardware.secure_element@1.1",
406        "android.hardware.secure_element@1.1-impl-gto-ese2",
407        "libbase",
408        "libcutils",
409        "libhardware",
410        "libhidlbase",
411        "liblog",
412        "libutils",
413    ],
414
415    sanitize: {
416        memtag_heap: true,
417    },
418}
419
420cc_library_shared {
421    // FIXME: this should only be -impl for a passthrough hal.
422    // In most cases, to convert this to a binderized implementation, you should:
423    // - change '-impl' to '-service' here and make it a cc_binary instead of a
424    //   cc_library_shared.
425    // - add a *.rc file for this module.
426    // - delete HIDL_FETCH_I* functions.
427    // - call configureRpcThreadpool and registerAsService on the instance.
428    // You may also want to append '-impl/-service' with a specific identifier like
429    // '-vendor' or '-<hardware identifier>' etc to distinguish it.
430    name: "android.hardware.secure_element@1.2-impl-gto-ese2",
431    //relative_install_path: "hw",
432    // FIXME: this should be 'vendor: true' for modules that will eventually be
433    // on AOSP.
434    vendor: true,
435    srcs: [
436        "1.0/esehal/src/checksum.c",
437        "1.0/esehal/src/iso7816_t1.c",
438        "1.0/esehal/src/libse-gto.c",
439        "1.0/esehal/src/spi.c",
440        "1.0/esehal/src/transport.c",
441        "1.0/esehal/src/log.c",
442        "1.2/SecureElement.cpp",
443    ],
444
445    local_include_dirs: [
446        "1.0/esehal/src",
447    ],
448
449    cflags: [
450        "-DANDROID",
451        "-DENABLE_LOGGING=1",
452        "-DENABLE_DEBUG=1",
453        "-DBUILDCFG=1",
454        "-DNXP_EXTNS=TRUE",
455        "-Wno-unused-parameter",
456        "-Wno-unused-private-field",
457        "-Wno-error",
458        "-Wreturn-type",
459    ],
460
461    shared_libs: [
462        "libbase",
463        "libcutils",
464        "libhardware",
465        "libhidlbase",
466        "liblog",
467        "libutils",
468        "android.hardware.secure_element@1.0",
469	"android.hardware.secure_element@1.1",
470	"android.hardware.secure_element@1.2",
471    ],
472
473}
474
475cc_binary {
476    name: "android.hardware.secure_element@1.2-service-gto-ese2",
477    relative_install_path: "hw",
478    init_rc: ["1.2/android.hardware.secure_element@1.2-service-gto-ese2.rc"],
479    vendor: true,
480    defaults: ["hidl_defaults"],
481    srcs: [
482        "1.2/GtoService_ese2.cpp",
483    ],
484
485    shared_libs: [
486        "android.hardware.secure_element@1.0",
487        "android.hardware.secure_element@1.0-impl-gto-ese2",
488	"android.hardware.secure_element@1.1",
489        "android.hardware.secure_element@1.1-impl-gto-ese2",
490        "android.hardware.secure_element@1.2",
491        "android.hardware.secure_element@1.2-impl-gto-ese2",
492        "libbase",
493        "libcutils",
494        "libhardware",
495        "libhidlbase",
496        "liblog",
497        "libutils",
498    ],
499
500    sanitize: {
501        memtag_heap: true,
502    },
503}
504