summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSimo FΓ€lt <simo.falt@digia.com>2013-04-16 08:56:08 +0300
committerThe Qt Project <gerrit-noreply@qt-project.org>2013-04-16 12:39:02 +0200
commit914e1c6769b1c1448b8086dc226a3d2bd2c4fe40 (patch)
tree66a6e578df27b10feaf08e57be9f6d4940d084e0
parentdef0973d45122e3ec34ef2975c306cc008b6f479 (diff)
Adding MinGW 4.8.0 to be installed to ci nodes.
We can't replace the 4.7 with 4.8 yet, so keeping those in parallel for now. Change-Id: Ia29f81a140d0ad3ef925814e14fd2425f4e1e96e Reviewed-by: Tony SarajΓ€rvi <tony.sarajarvi@digia.com>
-rw-r--r--puppet/modules/ci_tester/manifests/windows.pp1
-rw-r--r--puppet/modules/mingw48/manifests/init.pp5
-rw-r--r--puppet/modules/mingw48/manifests/windows.pp34
-rw-r--r--puppet/modules/mingw48/tests/mingw48.pp3
4 files changed, 43 insertions, 0 deletions
diff --git a/puppet/modules/ci_tester/manifests/windows.pp b/puppet/modules/ci_tester/manifests/windows.pp
index 08dd4f6..76ebfd3 100644
--- a/puppet/modules/ci_tester/manifests/windows.pp
+++ b/puppet/modules/ci_tester/manifests/windows.pp
@@ -2,6 +2,7 @@ class ci_tester::windows inherits ci_tester::base {
include mesa3d
include activepython
include mingw
+ include mingw48
include openssl
include strawberryperl
include strawberryperl_portable
diff --git a/puppet/modules/mingw48/manifests/init.pp b/puppet/modules/mingw48/manifests/init.pp
new file mode 100644
index 0000000..6e94226
--- /dev/null
+++ b/puppet/modules/mingw48/manifests/init.pp
@@ -0,0 +1,5 @@
+class mingw48 {
+ case $::kernel {
+ windows: { include mingw48::windows }
+ }
+}
diff --git a/puppet/modules/mingw48/manifests/windows.pp b/puppet/modules/mingw48/manifests/windows.pp
new file mode 100644
index 0000000..05872e4
--- /dev/null
+++ b/puppet/modules/mingw48/manifests/windows.pp
@@ -0,0 +1,34 @@
+# Downloads the 4.8.0 version of mingw from sourceforge.net and installs to the specified $path.
+
+class mingw48::windows(
+ $version = '4.8.0',
+ $path = 'C:\mingw48',
+
+ # Additional options for installed MinGW version, See also: http://qt-project.org/wiki/MinGW-64-bit
+ # Note: Changing any of these won't trigger MinGW re-installation.
+ #
+ # either 'posix' or 'win32', we use 'posix' since it is more popular
+ $threading = 'posix',
+
+ # either 'sjlj' or 'dwarf', we use 'dwarf' while requested on releasing ML
+ $exceptions = 'dwarf',
+
+ # installed revision
+ $revision = 'rev1'
+){
+ # Match revision, match with both 'r8' and 'rev8' style patterns.
+ # Just for checking if correct revision is already installed.
+ $match_revision = regsubst($revision, 'rev', 'r(ev)?')
+
+ # installer file URL
+ $url = "http://sourceforge.net/projects/mingwbuilds/files/host-windows/releases/${version}/32-bit/threads-${threading}/${exceptions}/x32-${version}-release-${threading}-${exceptions}-${revision}.7z"
+
+ windows::zip_package { "mingw48":
+ url => $url,
+ version => $version,
+ version_flags => "-print-search-dirs",
+ version_expression => "x32-${version}(-release)?-${threading}-${exceptions}-${match_revision}",
+ path => $path,
+ binary => "$path\\mingw\\bin\\g++.exe"
+ }
+}
diff --git a/puppet/modules/mingw48/tests/mingw48.pp b/puppet/modules/mingw48/tests/mingw48.pp
new file mode 100644
index 0000000..c211b3d
--- /dev/null
+++ b/puppet/modules/mingw48/tests/mingw48.pp
@@ -0,0 +1,3 @@
+include mingw48
+
+selftest::expect_no_warnings { "no warnings from mingw48": }