• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// Copyright (c) 2016, Intel Corporation
2// All rights reserved.
3//
4// Redistribution and use in source and binary forms, with or without modification,
5// are permitted provided that the following conditions are met:
6//
7// 1. Redistributions of source code must retain the above copyright notice, this
8// list of conditions and the following disclaimer.
9//
10// 2. Redistributions in binary form must reproduce the above copyright notice,
11// this list of conditions and the following disclaimer in the documentation and/or
12// other materials provided with the distribution.
13//
14// 3. Neither the name of the copyright holder nor the names of its contributors
15// may be used to endorse or promote products derived from this software without
16// specific prior written permission.
17//
18// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
19// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
20// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
21// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
22// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
23// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
24// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
25// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
27// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28
29package {
30    default_applicable_licenses: ["external_parameter-framework_license"],
31}
32
33// Added automatically by a large-scale-change that took the approach of
34// 'apply every license found to every target'. While this makes sure we respect
35// every license restriction, it may not be entirely correct.
36//
37// e.g. GPL in an MIT project might only apply to the contrib/ directory.
38//
39// Please consider splitting the single license below into multiple licenses,
40// taking care not to lose any license_kind information, and overriding the
41// default license using the 'licenses: [...]' property on targets as needed.
42//
43// For unused files, consider creating a 'fileGroup' with "//visibility:private"
44// to attach the license to, and including a comment whether the files may be
45// used in the current project.
46//
47// large-scale-change included anything that looked like it might be a license
48// text as a license_text. e.g. LICENSE, NOTICE, COPYING etc.
49//
50// Please consider removing redundant or irrelevant files from 'license_text:'.
51// See: http://go/android-license-faq
52license {
53    name: "external_parameter-framework_license",
54    visibility: [":__subpackages__"],
55    license_kinds: [
56        "SPDX-license-identifier-BSD",
57        "SPDX-license-identifier-BSL-1.0",
58        "SPDX-license-identifier-MIT",
59    ],
60    license_text: [
61        "COPYING.txt",
62        "NOTICE",
63    ],
64}
65
66cc_defaults {
67    name: "pfw_defaults",
68    host_supported: true,
69    vendor_available: true,
70
71    cflags: [
72        "-frtti",
73        "-fexceptions",
74        "-Wall",
75        "-Werror",
76        "-Wextra",
77    ],
78    rtti: true,
79}
80
81cc_library_static {
82    name: "libpfw_utility",
83    defaults: ["pfw_defaults"],
84    host_supported: true,
85    vendor_available: true,
86
87    export_include_dirs: ["upstream/utility"],
88
89    srcs: [
90        "upstream/utility/DynamicLibrary.cpp",
91        "upstream/utility/posix/DynamicLibrary.cpp",
92        "upstream/utility/Tokenizer.cpp",
93        "upstream/utility/Utility.cpp",
94    ],
95}
96
97cc_library {
98    name: "libremote-processor",
99    defaults: ["pfw_defaults"],
100    export_include_dirs: [
101        "upstream/remote-processor",
102        "support/android/remote-processor",
103    ],
104    local_include_dirs: [
105        "asio/include",
106        "support/android/asio",
107    ],
108    srcs: [
109        "upstream/remote-processor/RequestMessage.cpp",
110        "upstream/remote-processor/Message.cpp",
111        "upstream/remote-processor/AnswerMessage.cpp",
112        "upstream/remote-processor/RemoteProcessorServer.cpp",
113        "upstream/remote-processor/BackgroundRemoteProcessorServer.cpp",
114    ],
115    cflags: [
116        "-Wno-unused-local-typedef",
117        "-Wno-implicit-fallthrough"
118    ],
119    static_libs: ["libpfw_utility"],
120}
121
122cc_library {
123    name: "libparameter",
124    defaults: ["pfw_defaults"],
125    vendor_available: true,
126
127    cppflags: [
128        "-Wno-instantiation-after-specialization",
129        "-Wno-implicit-fallthrough",
130    ],
131    export_include_dirs: [
132        "upstream/parameter",
133        "upstream/parameter/log/include",
134        "upstream/parameter/include",
135        "upstream/xmlserializer",
136        "upstream/remote-processor",
137        "support/android/parameter",
138    ],
139    shared_libs: [
140        "libxml2",
141        "libremote-processor",
142    ],
143    static_libs: [
144        "libpfw_utility",
145    ],
146
147    srcs: [
148        "upstream/parameter/ParameterMgrPlatformConnector.cpp",
149        "upstream/parameter/LoggingElementBuilderTemplate.cpp",
150        "upstream/parameter/StringParameterType.cpp",
151        "upstream/parameter/SyncerSet.cpp",
152        "upstream/parameter/BitParameter.cpp",
153        "upstream/parameter/BaseParameter.cpp",
154        "upstream/parameter/ParameterBlockType.cpp",
155        "upstream/parameter/FloatingPointParameterType.cpp",
156        "upstream/parameter/SelectionCriteriaDefinition.cpp",
157        "upstream/parameter/EnumValuePair.cpp",
158        "upstream/parameter/SelectionCriteria.cpp",
159        "upstream/parameter/SelectionCriterionRule.cpp",
160        "upstream/parameter/AreaConfiguration.cpp",
161        "upstream/parameter/BitParameterBlockType.cpp",
162        "upstream/parameter/ConfigurationAccessContext.cpp",
163        "upstream/parameter/BitwiseAreaConfiguration.cpp",
164        "upstream/parameter/ArrayParameter.cpp",
165        "upstream/parameter/ParameterBlackboard.cpp",
166        "upstream/parameter/InstanceConfigurableElement.cpp",
167        "upstream/parameter/LogarithmicParameterAdaptation.cpp",
168        "upstream/parameter/ConfigurableDomain.cpp",
169        "upstream/parameter/FormattedSubsystemObject.cpp",
170        "upstream/parameter/MappingData.cpp",
171        "upstream/parameter/SubsystemElementBuilder.cpp",
172        "upstream/parameter/BooleanParameterType.cpp",
173        "upstream/parameter/FixedPointParameterType.cpp",
174        "upstream/parameter/ComponentType.cpp",
175        "upstream/parameter/EnumParameterType.cpp",
176        "upstream/parameter/RuleParser.cpp",
177        "upstream/parameter/VirtualSubsystem.cpp",
178        "upstream/parameter/Element.cpp",
179        "upstream/parameter/ParameterFrameworkConfiguration.cpp",
180        "upstream/parameter/SelectionCriterionLibrary.cpp",
181        "upstream/parameter/StringParameter.cpp",
182        "upstream/parameter/CompoundRule.cpp",
183        "upstream/parameter/ConfigurableDomains.cpp",
184        "upstream/parameter/VirtualSyncer.cpp",
185        "upstream/parameter/MappingContext.cpp",
186        "upstream/parameter/LinearParameterAdaptation.cpp",
187        "upstream/parameter/ComponentLibrary.cpp",
188        "upstream/parameter/BitParameterBlock.cpp",
189        "upstream/parameter/ParameterMgrFullConnector.cpp",
190        "upstream/parameter/ConfigurableElement.cpp",
191        "upstream/parameter/ConfigurableElementAggregator.cpp",
192        "upstream/parameter/SubsystemObject.cpp",
193        "upstream/parameter/TypeElement.cpp",
194        "upstream/parameter/PathNavigator.cpp",
195        "upstream/parameter/ElementLocator.cpp",
196        "upstream/parameter/SimulatedBackSynchronizer.cpp",
197        "upstream/parameter/Parameter.cpp",
198        "upstream/parameter/ComponentInstance.cpp",
199        "upstream/parameter/InstanceDefinition.cpp",
200        "upstream/parameter/SubsystemObjectCreator.cpp",
201        "upstream/parameter/ParameterType.cpp",
202        "upstream/parameter/DomainConfiguration.cpp",
203        "upstream/parameter/PluginLocation.cpp",
204        "upstream/parameter/HardwareBackSynchronizer.cpp",
205        "upstream/parameter/SystemClass.cpp",
206        "upstream/parameter/ElementLibrary.cpp",
207        "upstream/parameter/ParameterAccessContext.cpp",
208        "upstream/parameter/XmlParameterSerializingContext.cpp",
209        "upstream/parameter/ElementHandle.cpp",
210        "upstream/parameter/ParameterMgr.cpp",
211        "upstream/parameter/SelectionCriterionType.cpp",
212        "upstream/parameter/Subsystem.cpp",
213        "upstream/parameter/BaseIntegerParameterType.cpp",
214        "upstream/parameter/BitParameterType.cpp",
215        "upstream/parameter/SelectionCriterion.cpp",
216        "upstream/parameter/XmlElementSerializingContext.cpp",
217        "upstream/parameter/ElementLibrarySet.cpp",
218        "upstream/parameter/FrameworkConfigurationLocation.cpp",
219        "upstream/parameter/ParameterAdaptation.cpp",
220        "upstream/parameter/XmlFileIncluderElement.cpp",
221        "upstream/xmlserializer/XmlElement.cpp",
222        "upstream/xmlserializer/XmlSerializingContext.cpp",
223        "upstream/xmlserializer/XmlMemoryDocSource.cpp",
224        "upstream/xmlserializer/XmlDocSource.cpp",
225        "upstream/xmlserializer/XmlMemoryDocSink.cpp",
226        "upstream/xmlserializer/XmlStreamDocSink.cpp",
227        "upstream/parameter/CommandHandlerWrapper.cpp",
228    ],
229}
230
231// Userdebug only, should not be used in a user build device image.
232cc_binary {
233    name: "test-platform",
234    defaults: ["pfw_defaults"],
235
236    local_include_dirs: [
237        "upstream/test/test-platform",
238        "support/android/asio",
239        "asio/include",
240    ],
241    srcs: [
242        "upstream/test/test-platform/main.cpp",
243        "upstream/test/test-platform/TestPlatform.cpp",
244    ],
245    cflags: [
246        "-Wno-unused-local-typedef",
247        "-Wno-implicit-fallthrough"
248    ],
249    static_libs: ["libpfw_utility"],
250    shared_libs: [
251        "libparameter",
252        "libremote-processor",
253    ],
254}
255
256cc_binary_host {
257    name: "domainGeneratorConnector",
258    defaults: ["pfw_defaults"],
259
260    owner: "intel",
261    static_libs: ["libpfw_utility"],
262    shared_libs: ["libparameter"],
263    srcs: ["upstream/tools/xmlGenerator/domainGeneratorConnector.cpp"],
264}
265
266// Resources are not compiled so the prebuild mechanism is used to export them.
267//////////////////////////////////////////////////
268
269filegroup {
270    name: "parameter_frameworks_configuration_schemas",
271    srcs: [
272        "upstream/schemas/ParameterFrameworkConfiguration.xsd",
273        "upstream/schemas/ConfigurableDomain.xsd",
274        "upstream/schemas/ConfigurableDomains.xsd",
275        "upstream/schemas/SystemClass.xsd",
276        "upstream/schemas/ParameterSettings.xsd",
277        "upstream/schemas/FileIncluder.xsd",
278        "upstream/schemas/Subsystem.xsd",
279        "upstream/schemas/ComponentLibrary.xsd",
280        "upstream/schemas/ComponentTypeSet.xsd",
281        "upstream/schemas/W3cXmlAttributes.xsd",
282        "upstream/schemas/Parameter.xsd",
283    ],
284    path: "upstream/",
285}
286
287prebuilt_etc_host {
288    name: "ParameterFrameworkConfiguration.xsd",
289    owner: "intel",
290    src: "upstream/schemas/ParameterFrameworkConfiguration.xsd",
291    sub_dir: "parameter-framework/Schemas",
292}
293
294prebuilt_etc_host {
295    name: "ConfigurableDomain.xsd",
296    owner: "intel",
297    src: "upstream/schemas/ConfigurableDomain.xsd",
298    sub_dir: "parameter-framework/Schemas",
299    required: ["ParameterSettings.xsd"],
300}
301
302prebuilt_etc_host {
303    name: "ConfigurableDomains.xsd",
304    owner: "intel",
305    src: "upstream/schemas/ConfigurableDomains.xsd",
306    sub_dir: "parameter-framework/Schemas",
307    required: ["ConfigurableDomain.xsd"],
308}
309
310prebuilt_etc_host {
311    name: "SystemClass.xsd",
312    owner: "intel",
313    src: "upstream/schemas/SystemClass.xsd",
314    sub_dir: "parameter-framework/Schemas",
315    required: [
316        "FileIncluder.xsd",
317        "Subsystem.xsd",
318    ],
319}
320
321prebuilt_etc_host {
322    name: "ParameterSettings.xsd",
323    owner: "intel",
324    src: "upstream/schemas/ParameterSettings.xsd",
325    sub_dir: "parameter-framework/Schemas",
326}
327
328prebuilt_etc_host {
329    name: "FileIncluder.xsd",
330    owner: "intel",
331    src: "upstream/schemas/FileIncluder.xsd",
332    sub_dir: "parameter-framework/Schemas",
333}
334
335prebuilt_etc_host {
336    name: "Subsystem.xsd",
337    owner: "intel",
338    src: "upstream/schemas/Subsystem.xsd",
339    sub_dir: "parameter-framework/Schemas",
340    required: ["ComponentLibrary.xsd"],
341}
342
343prebuilt_etc_host {
344    name: "ComponentLibrary.xsd",
345    owner: "intel",
346    src: "upstream/schemas/ComponentLibrary.xsd",
347    sub_dir: "parameter-framework/Schemas",
348    required: [
349        "ComponentTypeSet.xsd",
350        "W3cXmlAttributes.xsd",
351    ],
352}
353
354prebuilt_etc_host {
355    name: "ComponentTypeSet.xsd",
356    owner: "intel",
357    src: "upstream/schemas/ComponentTypeSet.xsd",
358    sub_dir: "parameter-framework/Schemas",
359    required: [
360        "Parameter.xsd",
361        "W3cXmlAttributes.xsd",
362    ],
363}
364
365prebuilt_etc_host {
366    name: "W3cXmlAttributes.xsd",
367    owner: "intel",
368    src: "upstream/schemas/W3cXmlAttributes.xsd",
369    sub_dir: "parameter-framework/Schemas",
370}
371
372prebuilt_etc_host {
373    name: "Parameter.xsd",
374    owner: "intel",
375    src: "upstream/schemas/Parameter.xsd",
376    sub_dir: "parameter-framework/Schemas",
377}
378
379filegroup {
380    name: "EddParser.py-srcs",
381    srcs: ["upstream/tools/xmlGenerator/EddParser.py"],
382    path: "upstream/tools/xmlGenerator/",
383}
384
385python_library_host {
386    name: "EddParser.py",
387    defaults: ["pfw_defaults"],
388    owner: "intel",
389
390    srcs: [":EddParser.py-srcs"],
391}
392
393filegroup {
394    name: "PfwBaseTranslator.py-srcs",
395    srcs: ["upstream/tools/xmlGenerator/PfwBaseTranslator.py"],
396    path: "upstream/tools/xmlGenerator/",
397}
398
399python_library_host {
400    name: "PfwBaseTranslator.py",
401    defaults: ["pfw_defaults"],
402    owner: "intel",
403
404    srcs: [":PfwBaseTranslator.py-srcs"],
405}
406
407filegroup {
408    name: "PFWScriptGenerator.py-srcs",
409    srcs: ["upstream/tools/xmlGenerator/PFWScriptGenerator.py"],
410    path: "upstream/tools/xmlGenerator/",
411}
412
413python_library_host {
414    name: "PFWScriptGenerator.py",
415    defaults: ["pfw_defaults"],
416    owner: "intel",
417
418    srcs: [":PFWScriptGenerator.py-srcs"],
419    libs: [
420        "PfwBaseTranslator.py",
421        "EddParser.py",
422    ],
423}
424
425sh_binary {
426    name: "updateRoutageDomains.sh",
427    owner: "intel",
428
429    host_supported: true,
430    src: "upstream/tools/xmlGenerator/updateRoutageDomains.sh",
431}
432
433filegroup {
434    name: "hostConfig.py-srcs",
435    srcs: ["upstream/tools/xmlGenerator/hostConfig.py"],
436    path: "upstream/tools/xmlGenerator/",
437}
438
439python_library_host {
440    name: "hostConfig.py",
441    defaults: ["pfw_defaults"],
442    owner: "intel",
443
444    srcs: [":hostConfig.py-srcs"],
445}
446
447python_binary_host {
448    name: "domainGenerator.py",
449    defaults: ["pfw_defaults"],
450    owner: "intel",
451
452    main: "upstream/tools/xmlGenerator/domainGenerator.py",
453    srcs: ["upstream/tools/xmlGenerator/domainGenerator.py"],
454    libs: [
455        "EddParser.py",
456        "hostConfig.py",
457        "PFWScriptGenerator.py",
458    ],
459    required: [
460        "domainGeneratorConnector",
461    ],
462}
463
464sh_binary {
465    name: "domainGenerator.sh",
466    owner: "intel",
467
468    host_supported: true,
469    src: "upstream/tools/xmlGenerator/domainGenerator.sh",
470}
471
472sh_binary {
473    name: "lightRoutingUpdate.sh",
474    owner: "intel",
475
476    host_supported: true,
477    src: "upstream/tools/xmlGenerator/lightRoutingUpdate.sh",
478}
479
480//////////////////////////////////////////////////
481
482cc_binary {
483    name: "remote-process",
484    defaults: ["pfw_defaults"],
485
486    srcs: ["upstream/remote-process/main.cpp"],
487    local_include_dirs: [
488        "upstream/utility",
489        "support/android/asio",
490        "asio/include",
491    ],
492    cflags: ["-Wno-unused-local-typedef"],
493    shared_libs: ["libremote-processor"],
494}
495