summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoraxis <qt-info@nokia.com>2011-04-08 14:40:12 +0200
committeraxis <qt-info@nokia.com>2011-04-08 14:41:34 +0200
commit98e9f6612c36f6f944baac59c1e07ff91b615dfd (patch)
tree8e2ce6e580b7dc63b12a93a613857252498c5b0c
parent391cacfea4d434a9f98ab68fb9943a96a5cabe10 (diff)
Created a convenience script to initialize the qt5 repository.
By passing -nokia-developer you modify the links to point to the internal scm server instead of the public gitorious.org server. Configure will automatically call it if the user hasn't already.
-rwxr-xr-xqt5/configure2
-rwxr-xr-xqt5/init-repository119
2 files changed, 121 insertions, 0 deletions
diff --git a/qt5/configure b/qt5/configure
index b805ca3..2160249 100755
--- a/qt5/configure
+++ b/qt5/configure
@@ -44,6 +44,8 @@ $relpath =~ s,\\,/,g;
# the current directory is the "build tree" or "object tree"
my $outpath = getcwd();
+system_v("perl $relpath/init-repository -q") and die("init-repository failed");
+
system_v("perl $relpath/fix-webkit") and die("Applying webkit patches failed");
ensureDir("$outpath/qtbase");
diff --git a/qt5/init-repository b/qt5/init-repository
new file mode 100755
index 0000000..ac3a7a2
--- /dev/null
+++ b/qt5/init-repository
@@ -0,0 +1,119 @@
+#!/usr/bin/perl -w
+#############################################################################
+##
+## Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+## All rights reserved.
+## Contact: Nokia Corporation (qt-info@nokia.com)
+##
+## This file is part of the utilities of the Qt Toolkit.
+##
+## $QT_BEGIN_LICENSE:LGPL$
+## No Commercial Usage
+## This file contains pre-release code and may not be distributed.
+## You may use this file in accordance with the terms and conditions
+## contained in the Technology Preview License Agreement accompanying
+## this package.
+##
+## GNU Lesser General Public License Usage
+## Alternatively, this file may be used under the terms of the GNU Lesser
+## General Public License version 2.1 as published by the Free Software
+## Foundation and appearing in the file LICENSE.LGPL included in the
+## packaging of this file. Please review the following information to
+## ensure the GNU Lesser General Public License version 2.1 requirements
+## will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+##
+## In addition, as a special exception, Nokia gives you certain additional
+## rights. These rights are described in the Nokia Qt LGPL Exception
+## version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+##
+## If you have questions regarding the use of this file, please contact
+## Nokia at qt-info@nokia.com.
+##
+##
+##
+##
+##
+##
+##
+##
+## $QT_END_LICENSE$
+##
+#############################################################################
+
+my $force = 0;
+my $quiet = 0;
+my $nokia_developer = 0;
+
+sub system_v
+{
+ if (!$quiet) {
+ print "+ ";
+ print @_;
+ print "\n";
+ }
+ return system(@_);
+}
+
+sub printUsage
+{
+ print("$0 <options>\n");
+ print("-f\tForce initialization\n");
+ print("-q\tQuiet operation. Will exit cleanly if repository is already\n");
+ print("\tinitialized\n");
+ print("-nokia-developer Switch to internal Nokia URLs.\n");
+}
+
+while (@ARGV) {
+ my $arg = $ARGV[0];
+ if ($arg eq "-f") {
+ $force = 1;
+ } elsif ($arg eq "-q") {
+ $quiet = 1;
+ } elsif ($arg eq "-nokia-developer") {
+ $nokia_developer = 1;
+ } elsif ($arg eq "-h" || $arg eq "--help") {
+ printUsage();
+ exit 0;
+ } else {
+ die("Illegal argument: $arg");
+ }
+ shift;
+}
+
+if (`git config --get submodule.qtbase.url`) {
+ if ($force) {
+ my @configresult = `git config -l`;
+ foreach (@configresult) {
+ if (/(submodule\.[^.=]+\.url)=.*/) {
+ system_v("git config --unset $1");
+ }
+ }
+ } else {
+ exit 0 if ($quiet);
+ print("Will not reinitialize already initialized repository (use -f to force)!\n");
+ exit 1;
+ }
+}
+
+my $init_args = "";
+$init_args = "-q" if ($quiet);
+system_v("git submodule init $init_args");
+
+if ($nokia_developer) {
+ my @configresult = `git config -l`;
+ foreach (@configresult) {
+ if (/(submodule\.[^.=]+\.url)=(.*)/) {
+ my $key = $1;
+ my $value = $2;
+ # WebKit is special, and has only external link.
+ if ($key eq "submodule.qtwebkit.url") {
+ $value =~ s,^git://gitorious\.org/,git\@gitorious.org:,;
+ } else {
+ $value =~ s,^git://gitorious\.org/,git\@scm.dev.nokia.troll.no:,;
+ }
+ system_v("git config \"$key\" \"$value\"");
+ }
+ }
+}
+
+system_v("git submodule update");