• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright (c) Huawei Technologies Co., Ltd. 2021. All rights reserved.
2
3import("//build/ohos.gni")
4
5if (target_cpu == "arm") {
6    config("ffi_config") {
7        visibility = [ ":*" ]
8
9        include_dirs = [
10            ".",
11            "./include",
12            "./src/arm",
13        ]
14
15        cflags = [
16            "-DTARGET=ARM",
17            "-Wno-sign-compare",
18            "-Wno-implicit-function-declaration",
19            "-Wno-extern-initializer",
20        ]
21    }
22
23    ohos_source_set("ffi_source") {
24        sources = [
25            "src/prep_cif.c",
26            "src/types.c",
27            "src/raw_api.c",
28            "src/java_raw_api.c",
29            "src/closures.c",
30            "src/arm/ffi.c",
31            "src/arm/sysv.S",
32        ]
33
34        configs = [
35            ":ffi_config",
36        ]
37    }
38} else {
39    config("ffi_config") {
40        visibility = [ ":*" ]
41
42        include_dirs = [
43            ".",
44            "./include",
45            "./src/aarch64",
46        ]
47
48        cflags = [
49            "-DTARGET=AARCH64",
50            "-Wno-sign-compare",
51            "-Wno-implicit-function-declaration",
52            "-Wno-extern-initializer",
53        ]
54    }
55
56    ohos_source_set("ffi_source") {
57        sources = [
58            "src/prep_cif.c",
59            "src/types.c",
60            "src/raw_api.c",
61            "src/java_raw_api.c",
62            "src/closures.c",
63            "src/aarch64/ffi.c",
64            "src/aarch64/sysv.S",
65        ]
66
67        configs = [
68            ":ffi_config",
69        ]
70    }
71}
72
73config("ffi_public_config") {
74    include_dirs = [
75        "include",
76    ]
77}
78
79ohos_shared_library("ffi") {
80    deps = [
81        ":ffi_source",
82    ]
83
84    public_configs = [
85        ":ffi_public_config",
86    ]
87
88    part_name = "multimedia_histreamer"
89    subsystem_name = "multimedia"
90}
91