1# Copyright (c) 2021-2022 Huawei Device Co., Ltd. 2# Licensed under the Apache License, Version 2.0 (the "License"); 3# you may not use this file except in compliance with the License. 4# You may obtain a copy of the License at 5# 6# http://www.apache.org/licenses/LICENSE-2.0 7# 8# Unless required by applicable law or agreed to in writing, software 9# distributed under the License is distributed on an "AS IS" BASIS, 10# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 11# See the License for the specific language governing permissions and 12# limitations under the License. 13 14import("//build/ohos.gni") 15 16config("libsoup_config") { 17 cflags = [ 18 "-DHAVE_CONFIG_H", 19 "-DUSE_SQLITE_SYMBOLS", 20 "-DG_LOG_DOMAIN=\"libsoup\"", 21 "-DLIBSOUP_COMPILATION", 22 "-Wno-sign-compare", 23 "-Wno-#pragma-messages", 24 "-DOHOS_GLIB_COMPATIBLE", 25 "-fno-signed-char", 26 ] 27} 28 29ohos_source_set("soup_dynamic") { 30 sources = [ 31 "//third_party/libsoup/libsoup/soup-address.c", 32 "//third_party/libsoup/libsoup/soup-auth-basic.c", 33 "//third_party/libsoup/libsoup/soup-auth-digest.c", 34 "//third_party/libsoup/libsoup/soup-auth-domain-basic.c", 35 "//third_party/libsoup/libsoup/soup-auth-domain-digest.c", 36 "//third_party/libsoup/libsoup/soup-auth-domain.c", 37 "//third_party/libsoup/libsoup/soup-auth-manager.c", 38 "//third_party/libsoup/libsoup/soup-auth-negotiate.c", 39 "//third_party/libsoup/libsoup/soup-auth-ntlm.c", 40 "//third_party/libsoup/libsoup/soup-auth.c", 41 "//third_party/libsoup/libsoup/soup-body-input-stream.c", 42 "//third_party/libsoup/libsoup/soup-body-output-stream.c", 43 "//third_party/libsoup/libsoup/soup-cache-client-input-stream.c", 44 "//third_party/libsoup/libsoup/soup-cache-input-stream.c", 45 "//third_party/libsoup/libsoup/soup-cache.c", 46 "//third_party/libsoup/libsoup/soup-client-input-stream.c", 47 "//third_party/libsoup/libsoup/soup-connection-auth.c", 48 "//third_party/libsoup/libsoup/soup-connection.c", 49 "//third_party/libsoup/libsoup/soup-content-decoder.c", 50 "//third_party/libsoup/libsoup/soup-content-processor.c", 51 "//third_party/libsoup/libsoup/soup-content-sniffer-stream.c", 52 "//third_party/libsoup/libsoup/soup-content-sniffer.c", 53 "//third_party/libsoup/libsoup/soup-converter-wrapper.c", 54 "//third_party/libsoup/libsoup/soup-cookie-jar-db.c", 55 "//third_party/libsoup/libsoup/soup-cookie-jar-sqlite.c", 56 "//third_party/libsoup/libsoup/soup-cookie-jar-text.c", 57 "//third_party/libsoup/libsoup/soup-cookie-jar.c", 58 "//third_party/libsoup/libsoup/soup-cookie.c", 59 "//third_party/libsoup/libsoup/soup-date.c", 60 "//third_party/libsoup/libsoup/soup-directory-input-stream.c", 61 "//third_party/libsoup/libsoup/soup-enum-types.c", 62 "//third_party/libsoup/libsoup/soup-filter-input-stream.c", 63 "//third_party/libsoup/libsoup/soup-form.c", 64 "//third_party/libsoup/libsoup/soup-gnome-features.c", 65 "//third_party/libsoup/libsoup/soup-headers.c", 66 "//third_party/libsoup/libsoup/soup-hsts-enforcer-db.c", 67 "//third_party/libsoup/libsoup/soup-hsts-enforcer.c", 68 "//third_party/libsoup/libsoup/soup-hsts-policy.c", 69 "//third_party/libsoup/libsoup/soup-init.c", 70 "//third_party/libsoup/libsoup/soup-io-stream.c", 71 "//third_party/libsoup/libsoup/soup-logger.c", 72 "//third_party/libsoup/libsoup/soup-message-body.c", 73 "//third_party/libsoup/libsoup/soup-message-client-io.c", 74 "//third_party/libsoup/libsoup/soup-message-headers.c", 75 "//third_party/libsoup/libsoup/soup-message-io.c", 76 "//third_party/libsoup/libsoup/soup-message-queue.c", 77 "//third_party/libsoup/libsoup/soup-message-server-io.c", 78 "//third_party/libsoup/libsoup/soup-message.c", 79 "//third_party/libsoup/libsoup/soup-method.c", 80 "//third_party/libsoup/libsoup/soup-misc.c", 81 "//third_party/libsoup/libsoup/soup-multipart-input-stream.c", 82 "//third_party/libsoup/libsoup/soup-multipart.c", 83 "//third_party/libsoup/libsoup/soup-password-manager-gnome.c", 84 "//third_party/libsoup/libsoup/soup-password-manager.c", 85 "//third_party/libsoup/libsoup/soup-path-map.c", 86 "//third_party/libsoup/libsoup/soup-proxy-resolver-default.c", 87 "//third_party/libsoup/libsoup/soup-proxy-resolver-gnome.c", 88 "//third_party/libsoup/libsoup/soup-proxy-resolver-wrapper.c", 89 "//third_party/libsoup/libsoup/soup-proxy-resolver.c", 90 "//third_party/libsoup/libsoup/soup-proxy-uri-resolver.c", 91 "//third_party/libsoup/libsoup/soup-request-data.c", 92 "//third_party/libsoup/libsoup/soup-request-file.c", 93 "//third_party/libsoup/libsoup/soup-request-http.c", 94 "//third_party/libsoup/libsoup/soup-request.c", 95 "//third_party/libsoup/libsoup/soup-requester.c", 96 "//third_party/libsoup/libsoup/soup-server.c", 97 "//third_party/libsoup/libsoup/soup-session-async.c", 98 "//third_party/libsoup/libsoup/soup-session-feature.c", 99 "//third_party/libsoup/libsoup/soup-session-sync.c", 100 "//third_party/libsoup/libsoup/soup-session.c", 101 "//third_party/libsoup/libsoup/soup-socket-properties.c", 102 "//third_party/libsoup/libsoup/soup-socket.c", 103 "//third_party/libsoup/libsoup/soup-status.c", 104 "//third_party/libsoup/libsoup/soup-tld.c", 105 "//third_party/libsoup/libsoup/soup-uri.c", 106 "//third_party/libsoup/libsoup/soup-value-utils.c", 107 "//third_party/libsoup/libsoup/soup-version.c", 108 "//third_party/libsoup/libsoup/soup-websocket-connection.c", 109 "//third_party/libsoup/libsoup/soup-websocket-extension-deflate.c", 110 "//third_party/libsoup/libsoup/soup-websocket-extension-manager.c", 111 "//third_party/libsoup/libsoup/soup-websocket-extension.c", 112 "//third_party/libsoup/libsoup/soup-websocket.c", 113 "//third_party/libsoup/libsoup/soup-xmlrpc-old.c", 114 "//third_party/libsoup/libsoup/soup-xmlrpc.c", 115 ] 116 117 configs = [ ":libsoup_config" ] 118 include_dirs = [ 119 "//third_party/libsoup", 120 "//third_party/libsoup/libsoup", 121 "//third_party/glib", 122 "//third_party/glib/glib", 123 "//third_party/glib/gmodule", 124 "//third_party/glib/gio", 125 "//third_party/sqlite/include", 126 "//third_party/gettext/gettext-runtime/intl", 127 "//third_party/zlib", 128 "//third_party/libxml2/include", 129 "//third_party/libpsl/include", 130 ] 131} 132 133ohos_shared_library("libohossoup") { 134 deps = [ 135 ":soup_dynamic", 136 "//third_party/gettext:libgettext", 137 "//third_party/glib:gio", 138 "//third_party/glib:glib", 139 "//third_party/glib:gobject", 140 "//third_party/libpsl:libpsl", 141 "//third_party/libxml2:xml2", 142 "//third_party/sqlite:sqlite", 143 "//third_party/zlib:libz", 144 ] 145 part_name = "libsoup" 146 subsystem_name = "thirdparty" 147} 148