Home | History | Annotate | Download | only in android-clat
      1 cc_defaults {
      2     name: "clatd_defaults",
      3 
      4     cflags: [
      5         "-Wall",
      6         "-Werror",
      7         "-Wunused-parameter",
      8 
      9         // Bug: http://b/33566695
     10         "-Wno-address-of-packed-member",
     11     ],
     12 
     13     // For NETID_UNSET and MARK_UNSET.
     14     include_dirs: ["bionic/libc/dns/include"],
     15 
     16     // For NETID_USE_LOCAL_NAMESERVERS.
     17     header_libs: ["libnetd_client_headers"],
     18 }
     19 
     20 // Code used both by the daemon and by unit tests.
     21 filegroup {
     22     name: "clatd_common",
     23     srcs: [
     24         "config.c",
     25         "clatd.c",
     26         "dns64.c",
     27         "dump.c",
     28         "getaddr.c",
     29         "icmp.c",
     30         "ipv4.c",
     31         "ipv6.c",
     32         "logging.c",
     33         "mtu.c",
     34         "netlink_callbacks.c",
     35         "netlink_msg.c",
     36         "ring.c",
     37         "setif.c",
     38         "translate.c",
     39     ],
     40 }
     41 
     42 // The clat daemon.
     43 cc_binary {
     44     name: "clatd",
     45     defaults: ["clatd_defaults"],
     46     srcs: [
     47         ":clatd_common",
     48         "main.c"
     49     ],
     50     static_libs: ["libnl"],
     51     shared_libs: [
     52         "libcutils",
     53         "liblog",
     54         "libnetutils",
     55     ],
     56 
     57     // Only enable clang-tidy for the daemon, not the tests, because enabling it for the
     58     // tests substantially increases build/compile cycle times and doesn't really provide a
     59     // security benefit.
     60     tidy: true,
     61     tidy_checks: [
     62         "-*",
     63         "cert-*",
     64         "clang-analyzer-security*",
     65         "android-*",
     66     ],
     67     tidy_flags: [
     68         "-warnings-as-errors=clang-analyzer-security*,cert-*,android-*",
     69     ],
     70 }
     71 
     72 // The configuration file.
     73 prebuilt_etc {
     74     name: "clatd.conf",
     75     src: "clatd.conf",
     76 }
     77 
     78 // Unit tests.
     79 cc_test {
     80     name: "clatd_test",
     81     defaults: ["clatd_defaults"],
     82     srcs: [
     83         ":clatd_common",
     84         "clatd_test.cpp"
     85     ],
     86     static_libs: [
     87         "libbase",
     88         "libnetd_test_tun_interface",
     89         "libnl",
     90     ],
     91     shared_libs: [
     92         "libcutils",
     93         "liblog",
     94         "libnetutils",
     95     ],
     96     test_suites: ["device-tests"],
     97 }
     98 
     99 // Microbenchmark.
    100 cc_test {
    101     name: "clatd_microbenchmark",
    102     defaults: ["clatd_defaults"],
    103     srcs: [
    104         "clatd_microbenchmark.c",
    105         "tun.c",
    106     ],
    107     shared_libs: [
    108         "libnetutils",
    109     ],
    110 }
    111