summaryrefslogtreecommitdiffstats
path: root/examples/dependencies
diff options
context:
space:
mode:
Diffstat (limited to 'examples/dependencies')
-rw-r--r--examples/dependencies/README5
-rw-r--r--examples/dependencies/config/config.xml10
-rw-r--r--examples/dependencies/dependencies.pro13
-rw-r--r--examples/dependencies/packages/componentA/data/installcontent.txt2
-rw-r--r--examples/dependencies/packages/componentA/meta/package.xml8
-rw-r--r--examples/dependencies/packages/componentB/meta/package.xml8
-rw-r--r--examples/dependencies/packages/componentC/meta/package.xml9
-rw-r--r--examples/dependencies/packages/componentD/meta/package.xml9
-rw-r--r--examples/dependencies/packages/componentE/meta/package.xml9
-rw-r--r--examples/dependencies/packages/componentF.subcomponent1.subsubcomponent1/meta/package.xml8
-rw-r--r--examples/dependencies/packages/componentF.subcomponent1.subsubcomponent2/meta/package.xml8
-rw-r--r--examples/dependencies/packages/componentF.subcomponent1/meta/package.xml8
-rw-r--r--examples/dependencies/packages/componentF.subcomponent2.subsubcomponent1/meta/package.xml8
-rw-r--r--examples/dependencies/packages/componentF.subcomponent2.subsubcomponent2/meta/package.xml8
-rw-r--r--examples/dependencies/packages/componentF.subcomponent2/meta/package.xml8
-rw-r--r--examples/dependencies/packages/componentF/meta/package.xml8
-rw-r--r--examples/dependencies/packages/componentG/meta/package.xml10
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>