Add qtquick3d module. master_201107181619
authorSarah Smith <sarah.j.smith@nokia.com>
Thu, 14 Jul 2011 09:13:54 +0000 (19:13 +1000)
committerQt by Nokia <qt-info@nokia.com>
Mon, 18 Jul 2011 06:15:15 +0000 (08:15 +0200)
Change-Id: Ib3219c64e0100a4f79023d0a23972590fe3bd9f4
Reviewed-on: http://codereview.qt.nokia.com/1723
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Sarah Jane Smith <sarah.j.smith@nokia.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
.gitmodules
init-repository
qt.pro
qtquick3d [new submodule]

index b171ac1..b594fad 100644 (file)
@@ -61,3 +61,6 @@
 [submodule "qtfeedback"]
        path = qtfeedback
        url = git://gitorious.org/qt/qtfeedback.git
+[submodule "qtquick3d"]
+       path = qtquick3d
+       url = git://gitorious.org/qt-quick3d/qt-quick3d.git
index 3620c77..65275f9 100755 (executable)
@@ -241,6 +241,16 @@ my %GERRIT_REPOS = map { $_ => "qt/$_" } qw(
     qtwebkit-examples-and-demos
     qtxmlpatterns
 );
+$GERRIT_REPOS{qtquick3d} = "qt/quick3d";
+
+# Protocol-specific repo overrides, if they differ from the values set in the git submodule config
+# (e.g. because public vs private names differ for whatever reason)
+my %PROTOCOL_REPOS = (
+    qtquick3d   =>  {
+        internal    =>  "qt/quick3d",   # instead of qt-quick3d/qt-quick3d on gitorious
+        ssh         =>  "qt/quick3d",
+    },
+);
 
 my $GERRIT_SSH_BASE
     = 'ssh://codereview.qt.nokia.com:29418/';
@@ -249,7 +259,7 @@ my $GERRIT_HTTP_BASE
     = 'http://codereview.qt.nokia.com/p/';
 
 my $BNE_MIRROR_URL_BASE
-    = 'git://bq-git.apac.nokia.com/qtsoftware/qt/';
+    = 'git://bq-git.apac.nokia.com/qtsoftware/';
 
 my $BNE_MIRROR_WEBKIT_URL
     = 'git://bq-git.apac.nokia.com/qtsoftware/research/gitorious-org-webkit-qtwebkit-mirror.git';
@@ -258,7 +268,7 @@ my $BNE_MIRROR_V8_URL
     = 'git://bq-git.apac.nokia.com/github/v8.git';
 
 my $BER_MIRROR_URL_BASE
-    = 'git://ber-git.europe.nokia.com/qt/';
+    = 'git://ber-git.europe.nokia.com/';
 
 my $BER_MIRROR_WEBKIT_URL
     = 'git://ber-git.europe.nokia.com/qtwebkit/qtwebkit.git';
@@ -447,27 +457,37 @@ sub git_set_submodule_config
 
     foreach my $line (@configresult) {
         # Example line: submodule.qtqa.url=git://gitorious.org/qt/qtqa.git
-        next if ($line !~ /(submodule\.[^.=]+\.url)=(.*)/);
+        next if ($line !~ /submodule\.([^.=]+)\.url=(.*)/);
 
         my $key   = $1;
         my $value = $2;
 
         if ($protocol) {
             # WebKit is special, and has only external link.
-            if ($key ne 'submodule.qtwebkit.url') {
+            if ($key ne 'qtwebkit') {
                 # qt-labs projects are still hosted under qt internally.
                 if ($protocol ne 'http') {
                     $value =~ s,^git://gitorious\.org/qt-labs/,${url_base_for_protocol}qt/,;
                 }
-                $value =~ s,^git://gitorious\.org/,$url_base_for_protocol,;
+
+                if ($PROTOCOL_REPOS{$key}->{$protocol}) {
+                    # If this repo has an explicitly set basename for this protocol, use it...
+                    # e.g.   'git@example.com:'     . 'qt/quick3d'
+                    $value = $url_base_for_protocol . $PROTOCOL_REPOS{$key}->{$protocol};
+                }
+                else {
+                    # ...otherwise, assume the selected protocol uses same naming structure
+                    # as gitorious.org
+                    # e.g. git://gitorious.org/qt/qt5 => git@example.com:qt/qt5
+                    $value =~ s,^git://gitorious\.org/,$url_base_for_protocol,;
+                }
             }
         }
 
-        $self->exe('git', 'config', $key, $value);
+        $self->exe('git', 'config', "submodule.$key.url", $value);
 
         if ($self->{'ignore-submodules'}) {
-            $key =~ s,\.url,.ignore,;
-            $self->exe('git', 'config', $key, 'all');
+            $self->exe('git', 'config', "submodule.$key.ignore", 'all');
         }
     }
 
@@ -561,7 +581,7 @@ sub git_clone_one_submodule
 
     my $mirror;
     if ($mirror_url && ($submodule ne 'qtwebkit')) {
-        $mirror = $mirror_url.$submodule;
+        $mirror = $mirror_url.( $PROTOCOL_REPOS{$submodule}->{internal} // "qt/$submodule" );
         $mirror .= ".git" unless (-d $mirror); # Support local disk mirror
     }
     elsif ($mirror_webkit_url && ($submodule eq 'qtwebkit')) {
diff --git a/qt.pro b/qt.pro
index 47a2b30..3ccaaf0 100644 (file)
--- a/qt.pro
+++ b/qt.pro
@@ -89,6 +89,12 @@ module_qtfeedback.depends = module_qtbase module_qtdeclarative
 # not yet enabled by default
 module_qtfeedback.CONFIG = no_default_target no_default_install
 
+module_qtquick3d.subdir = $$IN_PWD/qtquick3d
+module_qtquick3d.target = module-qtquick3d
+module_qtquick3d.depends = module_qtbase module_qtdeclarative
+# not yet enabled by default
+module_qtquick3d.CONFIG = no_default_target no_default_install
+
 # only qtbase is required to exist. The others may not - but it is the
 # users responsibility to ensure that all needed dependencies exist, or
 # it may not build.
@@ -112,6 +118,7 @@ exists(qtsensors/qtsensors.pro): SUBDIRS += module_qtsensors
 exists(qtsystems/qtsystems.pro): SUBDIRS += module_qtsystems
 exists(qtmultimediakit/qtmultimediakit.pro): SUBDIRS += module_qtmultimediakit
 exists(qtfeedback/qtfeedback.pro): SUBDIRS += module_qtfeedback
+exists(qtquick3d/qtquick3d.pro): SUBDIRS += module_qtquick3d
 
 exists(qtwebkit/Tools/Scripts/build-webkit) {
     SUBDIRS +=  module_qtwebkit \
diff --git a/qtquick3d b/qtquick3d
new file mode 160000 (submodule)
index 0000000..961cd63
--- /dev/null
+++ b/qtquick3d
@@ -0,0 +1 @@
+Subproject commit 961cd63cc13af80f3370a62e5f6b90264b1668fa