diff options
Diffstat (limited to 'examples/dependencies')
17 files changed, 139 insertions, 0 deletions
diff --git a/examples/dependencies/README b/examples/dependencies/README new file mode 100644 index 000000000..e7b510d7e --- /dev/null +++ b/examples/dependencies/README @@ -0,0 +1,5 @@ +Create an installer that shows how the dependency solving works + +Generate installer with: + +binarycreator -c config/config.xml -p packages installer diff --git a/examples/dependencies/config/config.xml b/examples/dependencies/config/config.xml new file mode 100644 index 000000000..4a1b42501 --- /dev/null +++ b/examples/dependencies/config/config.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="UTF-8"?> +<Installer> + <Name>Dependency Solving Example</Name> + <Version>1.0.0</Version> + <Title>Dependency Solving Example</Title> + <Publisher>Qt-Project</Publisher> + <StartMenuDir>Qt IFW Examples</StartMenuDir> + <TargetDir>@HomeDir@/IfwDependencySolvingExample</TargetDir> + <CreateLocalRepository>true</CreateLocalRepository> +</Installer> diff --git a/examples/dependencies/dependencies.pro b/examples/dependencies/dependencies.pro new file mode 100644 index 000000000..415df49d5 --- /dev/null +++ b/examples/dependencies/dependencies.pro @@ -0,0 +1,13 @@ +TEMPLATE = aux + +INSTALLER = installer + +INPUT = $$PWD/config/config.xml $$PWD/packages +example.input = INPUT +example.output = $$INSTALLER +example.commands = ../../bin/binarycreator -c $$PWD/config/config.xml -p $$PWD/packages ${QMAKE_FILE_OUT} +example.CONFIG += target_predeps no_link combine + +QMAKE_EXTRA_COMPILERS += example + +OTHER_FILES = README diff --git a/examples/dependencies/packages/componentA/data/installcontent.txt b/examples/dependencies/packages/componentA/data/installcontent.txt new file mode 100644 index 000000000..f40001983 --- /dev/null +++ b/examples/dependencies/packages/componentA/data/installcontent.txt @@ -0,0 +1,2 @@ +This file will be installed into the target directory.... + diff --git a/examples/dependencies/packages/componentA/meta/package.xml b/examples/dependencies/packages/componentA/meta/package.xml new file mode 100644 index 000000000..095735eb1 --- /dev/null +++ b/examples/dependencies/packages/componentA/meta/package.xml @@ -0,0 +1,8 @@ +<?xml version="1.0"?> +<Package> + <DisplayName>Component A</DisplayName> + <Description>This component does not depend on any other component.</Description> + <Version>1.0.0</Version> + <ReleaseDate>2014-08-25</ReleaseDate> + <SortingPriority>100</SortingPriority> +</Package> diff --git a/examples/dependencies/packages/componentB/meta/package.xml b/examples/dependencies/packages/componentB/meta/package.xml new file mode 100644 index 000000000..2d51fee6e --- /dev/null +++ b/examples/dependencies/packages/componentB/meta/package.xml @@ -0,0 +1,8 @@ +<?xml version="1.0"?> +<Package> + <DisplayName>Component B</DisplayName> + <Description>This component does not depend on any other component.</Description> + <Version>1.0.0</Version> + <ReleaseDate>2014-08-25</ReleaseDate> + <SortingPriority>90</SortingPriority> +</Package> diff --git a/examples/dependencies/packages/componentC/meta/package.xml b/examples/dependencies/packages/componentC/meta/package.xml new file mode 100644 index 000000000..c829970e7 --- /dev/null +++ b/examples/dependencies/packages/componentC/meta/package.xml @@ -0,0 +1,9 @@ +<?xml version="1.0"?> +<Package> + <DisplayName>Component C (depends on A and B)</DisplayName> + <Description>This component depends on Component A and Component B. Selecting this component for installation also marks Component A and Component B for installation, which in turn marks Component D, because it has an automatic dependency on Component A and Component B.</Description> + <Dependencies>componentA, componentB</Dependencies> + <Version>1.0.0</Version> + <ReleaseDate>2014-08-25</ReleaseDate> + <SortingPriority>80</SortingPriority> +</Package> diff --git a/examples/dependencies/packages/componentD/meta/package.xml b/examples/dependencies/packages/componentD/meta/package.xml new file mode 100644 index 000000000..d2af2e64c --- /dev/null +++ b/examples/dependencies/packages/componentD/meta/package.xml @@ -0,0 +1,9 @@ +<?xml version="1.0"?> +<Package> + <DisplayName>Component D (auto depends on A and B)</DisplayName> + <Description>This component has an automatic dependency on Component A and Component B. If both A and B are marked for installation, this component is also installed.</Description> + <AutoDependOn>componentA, componentB</AutoDependOn> + <Version>1.0.0</Version> + <ReleaseDate>2014-08-25</ReleaseDate> + <SortingPriority>70</SortingPriority> +</Package> diff --git a/examples/dependencies/packages/componentE/meta/package.xml b/examples/dependencies/packages/componentE/meta/package.xml new file mode 100644 index 000000000..3f41c095c --- /dev/null +++ b/examples/dependencies/packages/componentE/meta/package.xml @@ -0,0 +1,9 @@ +<?xml version="1.0"?> +<Package> + <DisplayName>Component E (forced)</DisplayName> + <Description>This is a forced component that is always installed.</Description> + <ForcedInstallation>true</ForcedInstallation> + <Version>1.0.0</Version> + <ReleaseDate>2014-08-25</ReleaseDate> + <SortingPriority>60</SortingPriority> +</Package> diff --git a/examples/dependencies/packages/componentF.subcomponent1.subsubcomponent1/meta/package.xml b/examples/dependencies/packages/componentF.subcomponent1.subsubcomponent1/meta/package.xml new file mode 100644 index 000000000..4bb53fca2 --- /dev/null +++ b/examples/dependencies/packages/componentF.subcomponent1.subsubcomponent1/meta/package.xml @@ -0,0 +1,8 @@ +<?xml version="1.0"?> +<Package> + <DisplayName>Subsubcomponent 1</DisplayName> + <Description>This component does not depend on any other component.</Description> + <Version>1.0.0</Version> + <ReleaseDate>2014-08-25</ReleaseDate> + <SortingPriority>100</SortingPriority> +</Package> diff --git a/examples/dependencies/packages/componentF.subcomponent1.subsubcomponent2/meta/package.xml b/examples/dependencies/packages/componentF.subcomponent1.subsubcomponent2/meta/package.xml new file mode 100644 index 000000000..ade4cf15a --- /dev/null +++ b/examples/dependencies/packages/componentF.subcomponent1.subsubcomponent2/meta/package.xml @@ -0,0 +1,8 @@ +<?xml version="1.0"?> +<Package> + <DisplayName>Subsubcomponent 2</DisplayName> + <Description>This component does not depend on any other component.</Description> + <Version>1.0.0</Version> + <ReleaseDate>2014-08-25</ReleaseDate> + <SortingPriority>50</SortingPriority> +</Package> diff --git a/examples/dependencies/packages/componentF.subcomponent1/meta/package.xml b/examples/dependencies/packages/componentF.subcomponent1/meta/package.xml new file mode 100644 index 000000000..5eb6fd46a --- /dev/null +++ b/examples/dependencies/packages/componentF.subcomponent1/meta/package.xml @@ -0,0 +1,8 @@ +<?xml version="1.0"?> +<Package> + <DisplayName>Subcomponent 1</DisplayName> + <Description>This component contains 2 leaf components.</Description> + <Version>1.0.0</Version> + <ReleaseDate>2014-08-25</ReleaseDate> + <SortingPriority>100</SortingPriority> +</Package> diff --git a/examples/dependencies/packages/componentF.subcomponent2.subsubcomponent1/meta/package.xml b/examples/dependencies/packages/componentF.subcomponent2.subsubcomponent1/meta/package.xml new file mode 100644 index 000000000..4bb53fca2 --- /dev/null +++ b/examples/dependencies/packages/componentF.subcomponent2.subsubcomponent1/meta/package.xml @@ -0,0 +1,8 @@ +<?xml version="1.0"?> +<Package> + <DisplayName>Subsubcomponent 1</DisplayName> + <Description>This component does not depend on any other component.</Description> + <Version>1.0.0</Version> + <ReleaseDate>2014-08-25</ReleaseDate> + <SortingPriority>100</SortingPriority> +</Package> diff --git a/examples/dependencies/packages/componentF.subcomponent2.subsubcomponent2/meta/package.xml b/examples/dependencies/packages/componentF.subcomponent2.subsubcomponent2/meta/package.xml new file mode 100644 index 000000000..ade4cf15a --- /dev/null +++ b/examples/dependencies/packages/componentF.subcomponent2.subsubcomponent2/meta/package.xml @@ -0,0 +1,8 @@ +<?xml version="1.0"?> +<Package> + <DisplayName>Subsubcomponent 2</DisplayName> + <Description>This component does not depend on any other component.</Description> + <Version>1.0.0</Version> + <ReleaseDate>2014-08-25</ReleaseDate> + <SortingPriority>50</SortingPriority> +</Package> diff --git a/examples/dependencies/packages/componentF.subcomponent2/meta/package.xml b/examples/dependencies/packages/componentF.subcomponent2/meta/package.xml new file mode 100644 index 000000000..8f2cfdc64 --- /dev/null +++ b/examples/dependencies/packages/componentF.subcomponent2/meta/package.xml @@ -0,0 +1,8 @@ +<?xml version="1.0"?> +<Package> + <DisplayName>Subcomponent 2</DisplayName> + <Description>This component contains 2 leaf components.</Description> + <Version>1.0.0</Version> + <ReleaseDate>2014-08-25</ReleaseDate> + <SortingPriority>50</SortingPriority> +</Package> diff --git a/examples/dependencies/packages/componentF/meta/package.xml b/examples/dependencies/packages/componentF/meta/package.xml new file mode 100644 index 000000000..74756bae6 --- /dev/null +++ b/examples/dependencies/packages/componentF/meta/package.xml @@ -0,0 +1,8 @@ +<?xml version="1.0"?> +<Package> + <DisplayName>Component F</DisplayName> + <Description>This component contains 2 subcomponents.</Description> + <Version>1.0.0</Version> + <ReleaseDate>2014-08-25</ReleaseDate> + <SortingPriority>40</SortingPriority> +</Package> diff --git a/examples/dependencies/packages/componentG/meta/package.xml b/examples/dependencies/packages/componentG/meta/package.xml new file mode 100644 index 000000000..3e14256b4 --- /dev/null +++ b/examples/dependencies/packages/componentG/meta/package.xml @@ -0,0 +1,10 @@ +<?xml version="1.0"?> +<Package> + <DisplayName>Component G (default, depends on A)</DisplayName> + <Description>By default, this component is selected for installation. It depends on component A.</Description> + <Default>true</Default> + <Version>1.0.0</Version> + <ReleaseDate>2014-08-25</ReleaseDate> + <Dependencies>componentA</Dependencies> + <SortingPriority>30</SortingPriority> +</Package> |