Merge remote-tracking branch 'origin/5.4.0' into 5.4

Change-Id: I5b2910fc4e8fece8fad42eb200ed6dffdd24f751
This commit is contained in:
Oswald Buddenhagen
2014-11-25 18:00:25 +01:00
2 changed files with 67 additions and 7 deletions

36
.gitmodules vendored
View File

@@ -1,139 +1,175 @@
[submodule "qtbase"]
path = qtbase
url = ../qtbase.git
branch = 5.4.0
initrepo = true
[submodule "qtsvg"]
path = qtsvg
url = ../qtsvg.git
branch = 5.4.0
initrepo = true
[submodule "qtdeclarative"]
path = qtdeclarative
url = ../qtdeclarative.git
branch = 5.4.0
initrepo = true
[submodule "qtactiveqt"]
path = qtactiveqt
url = ../qtactiveqt.git
branch = 5.4.0
initrepo = true
[submodule "qtscript"]
path = qtscript
url = ../qtscript.git
branch = 5.4.0
initrepo = true
[submodule "qtmultimedia"]
path = qtmultimedia
url = ../qtmultimedia.git
branch = 5.4.0
initrepo = true
[submodule "qttools"]
path = qttools
url = ../qttools.git
branch = 5.4.0
initrepo = true
[submodule "qtxmlpatterns"]
path = qtxmlpatterns
url = ../qtxmlpatterns.git
branch = 5.4.0
initrepo = true
[submodule "qttranslations"]
path = qttranslations
url = ../qttranslations.git
branch = 5.4.0
initrepo = true
[submodule "qtdoc"]
path = qtdoc
url = ../qtdoc.git
branch = 5.4.0
initrepo = true
[submodule "qtrepotools"]
path = qtrepotools
url = ../qtrepotools.git
branch = master
initrepo = true
[submodule "qtwebkit"]
path = qtwebkit
url = ../qtwebkit.git
branch = 5.4.0
initrepo = true
[submodule "qtwebkit-examples"]
path = qtwebkit-examples
url = ../qtwebkit-examples.git
branch = 5.4.0
initrepo = true
[submodule "qtqa"]
path = qtqa
url = ../qtqa.git
branch = master
initrepo = true
[submodule "qtlocation"]
path = qtlocation
url = ../qtlocation.git
branch = 5.4.0
initrepo = true
[submodule "qtsensors"]
path = qtsensors
url = ../qtsensors.git
branch = 5.4.0
initrepo = true
[submodule "qtsystems"]
path = qtsystems
url = ../qtsystems.git
branch = dev
[submodule "qtfeedback"]
path = qtfeedback
url = ../qtfeedback.git
branch = master
[submodule "qtdocgallery"]
path = qtdocgallery
url = ../qtdocgallery.git
branch = master
[submodule "qtpim"]
path = qtpim
url = ../qtpim.git
branch = dev
[submodule "qtconnectivity"]
path = qtconnectivity
url = ../qtconnectivity.git
branch = 5.4.0
initrepo = true
[submodule "qtwayland"]
path = qtwayland
url = ../qtwayland.git
branch = 5.4.0
initrepo = true
[submodule "qt3d"]
path = qt3d
url = ../qt3d.git
branch = dev
[submodule "qtimageformats"]
path = qtimageformats
url = ../qtimageformats.git
branch = 5.4.0
initrepo = true
[submodule "qtquick1"]
path = qtquick1
url = ../qtquick1.git
branch = 5.4.0
initrepo = true
[submodule "qtgraphicaleffects"]
path = qtgraphicaleffects
url = ../qtgraphicaleffects.git
branch = 5.4.0
initrepo = true
[submodule "qtquickcontrols"]
path = qtquickcontrols
url = ../qtquickcontrols.git
branch = 5.4.0
initrepo = true
[submodule "qtserialport"]
path = qtserialport
url = ../qtserialport.git
branch = 5.4.0
initrepo = true
[submodule "qtx11extras"]
path = qtx11extras
url = ../qtx11extras.git
branch = 5.4.0
initrepo = true
[submodule "qtmacextras"]
path = qtmacextras
url = ../qtmacextras.git
branch = 5.4.0
initrepo = true
[submodule "qtwinextras"]
path = qtwinextras
url = ../qtwinextras.git
branch = 5.4.0
initrepo = true
[submodule "qtandroidextras"]
path = qtandroidextras
url = ../qtandroidextras.git
branch = 5.4.0
initrepo = true
[submodule "qtenginio"]
path = qtenginio
url = ../qtenginio.git
branch = 1.1.0
initrepo = true
[submodule "qtwebsockets"]
path = qtwebsockets
url = ../qtwebsockets.git
branch = 5.4.0
initrepo = true
[submodule "qtwebchannel"]
path = qtwebchannel
url = ../qtwebchannel.git
branch = 5.4.0
initrepo = true
[submodule "qtwebengine"]
path = qtwebengine
url = ../qtwebengine.git
branch = 5.4.0
initrepo = true

View File

@@ -105,6 +105,12 @@ Module names may be prefixed with a dash to exclude them from a bigger set.
Skip the `git submodule update' command.
=item --branch
Instead of checking out specific SHA1s, check out the submodule branches that
correspond with the current supermodule commit.
By default, this option will cause local commits in the submodules to be rebased.
With --no-update, the branches will be checked out, but their heads will not move.
=item --ignore-submodules
@@ -172,7 +178,7 @@ Uses <url-base> as the base URL for submodule git mirrors.
For example:
--mirror user@machine:/foo/bar
--mirror user@machine:/foo/bar/
...will use the following as a mirror for qtbase:
@@ -233,6 +239,7 @@ sub parse_arguments
%{$self} = (%{$self},
'alternates' => "",
'branch' => 0,
'codereview-username' => "",
'detach-alternates' => 0 ,
'force' => 0 ,
@@ -246,6 +253,7 @@ sub parse_arguments
GetOptionsFromArray(\@args,
'alternates=s' => \$self->{qw{ alternates }},
'branch' => \$self->{qw{ branch }},
'codereview-username=s' => \$self->{qw{ codereview-username }},
'copy-objects' => \$self->{qw{ detach-alternates }},
'force|f' => \$self->{qw{ force }},
@@ -313,9 +321,10 @@ sub git_submodule_init
sub git_clone_all_submodules
{
my ($self, $my_repo_base, @subset) = @_;
my ($self, $my_repo_base, $co_branch, @subset) = @_;
my %subdirs = ();
my %subbranches = ();
my %subbases = ();
my %subinits = ();
my @submodconfig = qx(git config -l -f .gitmodules);
@@ -324,6 +333,8 @@ sub git_clone_all_submodules
next if ($line !~ /^submodule\.([^.=]+)\.([^.=]+)=(.*)$/);
if ($2 eq "path") {
$subdirs{$1} = $3;
} elsif ($2 eq "branch") {
$subbranches{$1} = $3;
} elsif ($2 eq "url") {
my ($mod, $base) = ($1, $3);
next if ($base !~ /^\.\.\//);
@@ -376,16 +387,30 @@ sub git_clone_all_submodules
}
if ($self->{update}) {
$self->exe('git', 'submodule', 'update');
$self->exe('git', 'submodule', 'update', ($co_branch ? ('--remote', '--rebase') : ()));
foreach my $module (@modules) {
if (-f $module.'/.gitmodules') {
my $orig_cwd = getcwd();
chdir($module) or confess "chdir $module: $OS_ERROR";
$self->git_clone_all_submodules($subbases{$module}, "all");
$self->git_clone_all_submodules($subbases{$module}, 0, "all");
chdir("$orig_cwd") or confess "chdir $orig_cwd: $OS_ERROR";
}
}
} elsif ($co_branch) {
foreach my $module (@modules) {
my $branch = $subbranches{$module};
die("No branch defined for submodule $module.\n") if (!defined($branch));
my $orig_cwd = getcwd();
chdir($module) or confess "chdir $module: $OS_ERROR";
my $br = qx(git rev-parse -q --verify $branch);
if (!$br) {
$self->exe('git', 'checkout', '-b', $branch, "origin/$branch");
} else {
$self->exe('git', 'checkout', $branch);
}
chdir("$orig_cwd") or confess "chdir $orig_cwd: $OS_ERROR";
}
}
return;
@@ -435,7 +460,6 @@ sub git_clone_one_submodule
my $mirror;
if ($mirror_url) {
$mirror = $mirror_url.$repo_basename;
$mirror .= ".git" unless (-d $mirror); # Support local disk mirror
}
if ($mirror) {
@@ -461,7 +485,7 @@ sub git_clone_one_submodule
$self->exe('git', 'config', 'remote.mirror.fetch', '+refs/heads/*:refs/remotes/mirror/*');
}
if (!$do_clone) {
if (!$do_clone && $self->{update}) {
$self->exe('git', 'fetch', ($mirror ? $mirror : $url));
}
@@ -532,7 +556,7 @@ sub run
$url =~ s,qt/qt5$,,;
$self->{'base-url'} = $url;
$self->git_clone_all_submodules('qt/qt5', @{$self->{'module-subset'}});
$self->git_clone_all_submodules('qt/qt5', $self->{branch}, @{$self->{'module-subset'}});
$self->git_add_remotes('qt/qt5');