diff options
author | Alexandru Croitor <alexandru.croitor@qt.io> | 2017-11-16 16:59:00 +0100 |
---|---|---|
committer | Lars Knoll <lars.knoll@qt.io> | 2017-11-22 07:39:45 +0000 |
commit | 0dc025bf9f0ba3760ae8a02356900f5f63e75047 (patch) | |
tree | ffc1628402023b6338e5b0caff12f7306a0da260 /bin | |
parent | 7e360ccd4e4a9afe58bd2ded5d8f602bcbce07aa (diff) |
Fix macOS shadow prefix builds using pre-synced source packages
For source packages that don't have a .git subdirectory, syncqt is
executed before configure, with outdir set to srcdir, and this
caused path misalignments for injected headers in qt_module.prf
when generating makefile rules.
The fix is to change syncqt to always output injected header
paths relative to the source dir.
Task-number: QTBUG-64539
Change-Id: Ia2296e44494093dbf124729062f430ad6fca7262
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
Diffstat (limited to 'bin')
-rwxr-xr-x | bin/syncqt.pl | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/bin/syncqt.pl b/bin/syncqt.pl index e741f22f65..02e55d847e 100755 --- a/bin/syncqt.pl +++ b/bin/syncqt.pl @@ -1037,7 +1037,8 @@ foreach my $lib (@modules_to_sync) { my $clean_header; my $requires; - my $iheader = $subdir . "/" . $header; + my $iheader_src = $subdir . "/" . $header; + my $iheader = $iheader_src; $iheader =~ s/^\Q$basedir\E/$out_basedir/ if ($shadow); if ($check_includes) { # We need both $public_header and $private_header because QPA headers count as neither @@ -1079,7 +1080,7 @@ foreach my $lib (@modules_to_sync) { } $header_copies++ if (!$shadow && syncHeader($lib, $oheader, $iheader, $copy_headers, $ts)); - my $pri_install_iheader = fixPaths($iheader, $dir); + my $pri_install_iheader = fixPaths($iheader_src, $dir); my $injection = ""; if ($public_header) { foreach my $class (@classes) { |