// Copyright (C) 2018 The Android Open Source Project // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. package { default_applicable_licenses: ["external_ppp_pppd_license"], } // Added automatically by a large-scale-change that took the approach of // 'apply every license found to every target'. While this makes sure we respect // every license restriction, it may not be entirely correct. // // e.g. GPL in an MIT project might only apply to the contrib/ directory. // // Please consider splitting the single license below into multiple licenses, // taking care not to lose any license_kind information, and overriding the // default license using the 'licenses: [...]' property on targets as needed. // // For unused files, consider creating a 'fileGroup' with "//visibility:private" // to attach the license to, and including a comment whether the files may be // used in the current project. // See: http://go/android-license-faq license { name: "external_ppp_pppd_license", visibility: [":__subpackages__"], license_kinds: [ "SPDX-license-identifier-0BSD", "SPDX-license-identifier-Apache-2.0", "SPDX-license-identifier-BSD", "SPDX-license-identifier-GPL", "SPDX-license-identifier-GPL-2.0", "SPDX-license-identifier-LGPL", "SPDX-license-identifier-MIT", "legacy_notice", "legacy_unencumbered", ], license_text: [ "NOTICE", ], } cc_defaults { name: "ppp_defaults", cflags: [ "-DCHAPMS=1", "-DMPPE=1", "-DINET6=1", "-DUSE_OPENSSL=1", "-Wno-missing-field-initializers", "-Wno-unused-parameter", "-Werror", "-Wno-pointer-sign", "-DPLUGIN", ], local_include_dirs: ["include"], } filegroup { name: "pppd-sources", srcs: [ "auth.c", "ccp.c", "chap-md5.c", "chap-new.c", "chap_ms.c", "demand.c", "eap.c", "ecp.c", "eui64.c", "fsm.c", "ipcp.c", "ipv6cp.c", "lcp.c", "magic.c", "main.c", "options.c", "pppcrypt.c", "pppox.c", "session.c", "sys-linux.c", "tty.c", "upap.c", "utils.c", ] } cc_library_static { name: "libpppd", defaults: ["ppp_defaults"], srcs: [ ":pppd-sources" ], export_include_dirs:[".", "include"], // options.c:623:21: error: passing 'const char *' to parameter of // type 'char *' discards qualifiers. // [-Werror,-Wincompatible-pointer-types-discards-qualifiers] clang_cflags: ["-Wno-incompatible-pointer-types-discards-qualifiers"], shared_libs: [ "libdl", "liblog", "libcutils", "libcrypto", ], cflags: [ "-Dmain=main_loop", "-Wno-empty-body", "-Wno-attributes", "-Wno-sign-compare", ], ldflags: ["-rdynamic"], required: [ "pppol2tp-android", "pppopptp-android", ], } cc_binary { name: "pppd", defaults: ["ppp_defaults"], srcs: [ ":pppd-sources" ], shared_libs: [ "libdl", "liblog", "libcutils", "libcrypto", ], ldflags: ["-rdynamic"], clang_cflags: ["-Wno-incompatible-pointer-types-discards-qualifiers"], required: [ "pppol2tp-android", "pppopptp-android", ], sanitize: { memtag_heap: true, }, } cc_library_shared { name: "pppol2tp-android", defaults: ["ppp_defaults"], srcs: ["plugins/pppol2tp-android/pppol2tp-android.c"], allow_undefined_symbols: true, } cc_library_shared { name: "pppopptp-android", defaults: ["ppp_defaults"], srcs: ["plugins/pppopptp-android/pppopptp-android.c"], allow_undefined_symbols: true, }