blob: 376be85d7d6303a91e8f90b74cdbea47bf84d3a6 [file] [log] [blame]
// Copyright (c) 2016, Intel Corporation
// All rights reserved.
//
// Redistribution and use in source and binary forms, with or without modification,
// are permitted provided that the following conditions are met:
//
// 1. Redistributions of source code must retain the above copyright notice, this
// list of conditions and the following disclaimer.
//
// 2. Redistributions in binary form must reproduce the above copyright notice,
// this list of conditions and the following disclaimer in the documentation and/or
// other materials provided with the distribution.
//
// 3. Neither the name of the copyright holder nor the names of its contributors
// may be used to endorse or promote products derived from this software without
// specific prior written permission.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
cc_defaults {
name: "pfw_defaults",
host_supported: true,
cflags: [
"-frtti",
"-fexceptions",
"-Wall",
"-Werror",
"-Wextra",
],
rtti: true,
}
cc_library_static {
name: "libpfw_utility",
defaults: ["pfw_defaults"],
host_supported: true,
export_include_dirs: ["upstream/utility"],
srcs: [
"upstream/utility/DynamicLibrary.cpp",
"upstream/utility/posix/DynamicLibrary.cpp",
"upstream/utility/Tokenizer.cpp",
"upstream/utility/Utility.cpp",
],
}
cc_library_shared {
name: "libremote-processor",
defaults: ["pfw_defaults"],
cflags: ["-Wno-implicit-fallthrough"],
local_include_dirs: ["upstream/asio/stub"],
export_include_dirs: [
"upstream/remote-processor",
"support/android/remote-processor",
],
srcs: [
"upstream/remote-processor/RequestMessage.cpp",
"upstream/remote-processor/Message.cpp",
"upstream/remote-processor/AnswerMessage.cpp",
"upstream/remote-processor/RemoteProcessorServer.cpp",
"upstream/remote-processor/BackgroundRemoteProcessorServer.cpp",
],
static_libs: ["libpfw_utility"],
}
cc_library_shared {
name: "libparameter",
defaults: ["pfw_defaults"],
cppflags: [
"-Wno-instantiation-after-specialization",
"-Wno-implicit-fallthrough",
],
export_include_dirs: [
"upstream/parameter",
"upstream/parameter/log/include",
"upstream/parameter/include",
"upstream/xmlserializer",
"upstream/remote-processor",
"support/android/parameter",
],
shared_libs: [
"libremote-processor",
],
static_libs: [
"libpfw_utility",
"libxml2",
],
srcs: [
"upstream/parameter/ParameterMgrPlatformConnector.cpp",
"upstream/parameter/LoggingElementBuilderTemplate.cpp",
"upstream/parameter/StringParameterType.cpp",
"upstream/parameter/SyncerSet.cpp",
"upstream/parameter/BitParameter.cpp",
"upstream/parameter/BaseParameter.cpp",
"upstream/parameter/ParameterBlockType.cpp",
"upstream/parameter/FloatingPointParameterType.cpp",
"upstream/parameter/SelectionCriteriaDefinition.cpp",
"upstream/parameter/EnumValuePair.cpp",
"upstream/parameter/SelectionCriteria.cpp",
"upstream/parameter/SelectionCriterionRule.cpp",
"upstream/parameter/AreaConfiguration.cpp",
"upstream/parameter/BitParameterBlockType.cpp",
"upstream/parameter/ConfigurationAccessContext.cpp",
"upstream/parameter/BitwiseAreaConfiguration.cpp",
"upstream/parameter/ArrayParameter.cpp",
"upstream/parameter/ParameterBlackboard.cpp",
"upstream/parameter/InstanceConfigurableElement.cpp",
"upstream/parameter/LogarithmicParameterAdaptation.cpp",
"upstream/parameter/ConfigurableDomain.cpp",
"upstream/parameter/FormattedSubsystemObject.cpp",
"upstream/parameter/MappingData.cpp",
"upstream/parameter/SubsystemElementBuilder.cpp",
"upstream/parameter/BooleanParameterType.cpp",
"upstream/parameter/FixedPointParameterType.cpp",
"upstream/parameter/ComponentType.cpp",
"upstream/parameter/EnumParameterType.cpp",
"upstream/parameter/RuleParser.cpp",
"upstream/parameter/VirtualSubsystem.cpp",
"upstream/parameter/Element.cpp",
"upstream/parameter/ParameterFrameworkConfiguration.cpp",
"upstream/parameter/SelectionCriterionLibrary.cpp",
"upstream/parameter/StringParameter.cpp",
"upstream/parameter/CompoundRule.cpp",
"upstream/parameter/ConfigurableDomains.cpp",
"upstream/parameter/VirtualSyncer.cpp",
"upstream/parameter/MappingContext.cpp",
"upstream/parameter/LinearParameterAdaptation.cpp",
"upstream/parameter/ComponentLibrary.cpp",
"upstream/parameter/BitParameterBlock.cpp",
"upstream/parameter/ParameterMgrFullConnector.cpp",
"upstream/parameter/ConfigurableElement.cpp",
"upstream/parameter/ConfigurableElementAggregator.cpp",
"upstream/parameter/SubsystemObject.cpp",
"upstream/parameter/TypeElement.cpp",
"upstream/parameter/PathNavigator.cpp",
"upstream/parameter/ElementLocator.cpp",
"upstream/parameter/SimulatedBackSynchronizer.cpp",
"upstream/parameter/Parameter.cpp",
"upstream/parameter/ComponentInstance.cpp",
"upstream/parameter/InstanceDefinition.cpp",
"upstream/parameter/SubsystemObjectCreator.cpp",
"upstream/parameter/ParameterType.cpp",
"upstream/parameter/DomainConfiguration.cpp",
"upstream/parameter/PluginLocation.cpp",
"upstream/parameter/HardwareBackSynchronizer.cpp",
"upstream/parameter/SystemClass.cpp",
"upstream/parameter/ElementLibrary.cpp",
"upstream/parameter/ParameterAccessContext.cpp",
"upstream/parameter/XmlParameterSerializingContext.cpp",
"upstream/parameter/ElementHandle.cpp",
"upstream/parameter/ParameterMgr.cpp",
"upstream/parameter/SelectionCriterionType.cpp",
"upstream/parameter/Subsystem.cpp",
"upstream/parameter/IntegerParameterType.cpp",
"upstream/parameter/BitParameterType.cpp",
"upstream/parameter/SelectionCriterion.cpp",
"upstream/parameter/XmlElementSerializingContext.cpp",
"upstream/parameter/ElementLibrarySet.cpp",
"upstream/parameter/FrameworkConfigurationLocation.cpp",
"upstream/parameter/ParameterAdaptation.cpp",
"upstream/parameter/XmlFileIncluderElement.cpp",
"upstream/xmlserializer/XmlElement.cpp",
"upstream/xmlserializer/XmlSerializingContext.cpp",
"upstream/xmlserializer/XmlMemoryDocSource.cpp",
"upstream/xmlserializer/XmlDocSource.cpp",
"upstream/xmlserializer/XmlMemoryDocSink.cpp",
"upstream/xmlserializer/XmlStreamDocSink.cpp",
"upstream/parameter/CommandHandlerWrapper.cpp",
],
target: {
android: {
shared_libs: ["libandroidicu"],
},
host: {
shared_libs: [
"libicui18n",
"libicuuc",
],
},
},
}
cc_binary {
name: "test-platform",
defaults: ["pfw_defaults"],
cflags: ["-Wno-implicit-fallthrough"],
local_include_dirs: [
"upstream/test/test-platform",
"upstream/asio/stub",
],
srcs: [
"upstream/test/test-platform/main.cpp",
"upstream/test/test-platform/TestPlatform.cpp",
],
static_libs: ["libpfw_utility"],
shared_libs: [
"libparameter",
"libremote-processor",
],
}
cc_binary_host {
name: "domainGeneratorConnector",
defaults: ["pfw_defaults"],
owner: "intel",
static_libs: ["libpfw_utility"],
shared_libs: ["libparameter"],
srcs: ["upstream/tools/xmlGenerator/domainGeneratorConnector.cpp"],
}
// Resources are not compiled so the prebuild mechanism is used to export them.
// Schemas are only used by host, in order to validate xml files
//////////////////////////////////////////////////
prebuilt_etc_host {
name: "ParameterFrameworkConfiguration.xsd",
owner: "intel",
src: "upstream/schemas/ParameterFrameworkConfiguration.xsd",
sub_dir: "parameter-framework/Schemas",
}
prebuilt_etc_host {
name: "ConfigurableDomain.xsd",
owner: "intel",
src: "upstream/schemas/ConfigurableDomain.xsd",
sub_dir: "parameter-framework/Schemas",
required: ["ParameterSettings.xsd"],
}
prebuilt_etc_host {
name: "ConfigurableDomains.xsd",
owner: "intel",
src: "upstream/schemas/ConfigurableDomains.xsd",
sub_dir: "parameter-framework/Schemas",
required: ["ConfigurableDomain.xsd"],
}
prebuilt_etc_host {
name: "SystemClass.xsd",
owner: "intel",
src: "upstream/schemas/SystemClass.xsd",
sub_dir: "parameter-framework/Schemas",
required: [
"FileIncluder.xsd",
"Subsystem.xsd",
],
}
prebuilt_etc_host {
name: "ParameterSettings.xsd",
owner: "intel",
src: "upstream/schemas/ParameterSettings.xsd",
sub_dir: "parameter-framework/Schemas",
}
prebuilt_etc_host {
name: "FileIncluder.xsd",
owner: "intel",
src: "upstream/schemas/FileIncluder.xsd",
sub_dir: "parameter-framework/Schemas",
}
prebuilt_etc_host {
name: "Subsystem.xsd",
owner: "intel",
src: "upstream/schemas/Subsystem.xsd",
sub_dir: "parameter-framework/Schemas",
required: ["ComponentLibrary.xsd"],
}
prebuilt_etc_host {
name: "ComponentLibrary.xsd",
owner: "intel",
src: "upstream/schemas/ComponentLibrary.xsd",
sub_dir: "parameter-framework/Schemas",
required: [
"ComponentTypeSet.xsd",
"W3cXmlAttributes.xsd",
],
}
prebuilt_etc_host {
name: "ComponentTypeSet.xsd",
owner: "intel",
src: "upstream/schemas/ComponentTypeSet.xsd",
sub_dir: "parameter-framework/Schemas",
required: [
"Parameter.xsd",
"W3cXmlAttributes.xsd",
],
}
prebuilt_etc_host {
name: "W3cXmlAttributes.xsd",
owner: "intel",
src: "upstream/schemas/W3cXmlAttributes.xsd",
sub_dir: "parameter-framework/Schemas",
}
prebuilt_etc_host {
name: "Parameter.xsd",
owner: "intel",
src: "upstream/schemas/Parameter.xsd",
sub_dir: "parameter-framework/Schemas",
}
filegroup {
name: "EddParser.py-srcs",
srcs: ["upstream/tools/xmlGenerator/EddParser.py"],
path: "upstream/tools/xmlGenerator/",
}
python_library_host {
name: "EddParser.py",
defaults: ["pfw_defaults"],
owner: "intel",
srcs: [":EddParser.py-srcs"],
version: {
py2: {
enabled: true,
},
py3: {
enabled: false,
},
},
}
filegroup {
name: "PfwBaseTranslator.py-srcs",
srcs: ["upstream/tools/xmlGenerator/PfwBaseTranslator.py"],
path: "upstream/tools/xmlGenerator/",
}
python_library_host {
name: "PfwBaseTranslator.py",
defaults: ["pfw_defaults"],
owner: "intel",
srcs: [":PfwBaseTranslator.py-srcs"],
version: {
py2: {
enabled: true,
},
py3: {
enabled: false,
},
},
}
filegroup {
name: "PFWScriptGenerator.py-srcs",
srcs: ["upstream/tools/xmlGenerator/PFWScriptGenerator.py"],
path: "upstream/tools/xmlGenerator/",
}
python_library_host {
name: "PFWScriptGenerator.py",
defaults: ["pfw_defaults"],
owner: "intel",
srcs: [":PFWScriptGenerator.py-srcs"],
libs: [
"PfwBaseTranslator.py",
"EddParser.py",
],
version: {
py2: {
enabled: true,
},
py3: {
enabled: false,
},
},
}
cc_prebuilt_binary {
name: "updateRoutageDomains.sh",
defaults: ["pfw_defaults"],
owner: "intel",
host_supported: true,
srcs: ["upstream/tools/xmlGenerator/updateRoutageDomains.sh"],
}
filegroup {
name: "hostConfig.py-srcs",
srcs: ["upstream/tools/xmlGenerator/hostConfig.py"],
path: "upstream/tools/xmlGenerator/",
}
python_library_host {
name: "hostConfig.py",
defaults: ["pfw_defaults"],
owner: "intel",
srcs: [":hostConfig.py-srcs"],
version: {
py2: {
enabled: true,
},
py3: {
enabled: false,
},
},
}
python_binary_host {
name: "domainGenerator.py",
defaults: ["pfw_defaults"],
owner: "intel",
main: "upstream/tools/xmlGenerator/domainGenerator.py",
srcs: ["upstream/tools/xmlGenerator/domainGenerator.py"],
libs: [
"EddParser.py",
"hostConfig.py",
"PFWScriptGenerator.py",
],
version: {
py2: {
enabled: true,
},
py3: {
enabled: false,
},
},
required: [
"domainGeneratorConnector",
],
}
cc_prebuilt_binary {
name: "domainGenerator.sh",
defaults: ["pfw_defaults"],
owner: "intel",
host_supported: true,
srcs: ["upstream/tools/xmlGenerator/domainGenerator.sh"],
}
cc_prebuilt_binary {
name: "lightRoutingUpdate.sh",
defaults: ["pfw_defaults"],
owner: "intel",
host_supported: true,
srcs: ["upstream/tools/xmlGenerator/lightRoutingUpdate.sh"],
}
//////////////////////////////////////////////////