diff options
author | Thomas Zander <t.zander@nokia.com> | 2010-05-19 13:52:54 (GMT) |
---|---|---|
committer | Thomas Zander <t.zander@nokia.com> | 2010-05-19 13:52:54 (GMT) |
commit | 14ddb8172cce8c90f01436ab8215cc8ed594e251 (patch) | |
tree | 04e860f80d7f3e9773996b62d4c56ad92497a096 /qmake/generators | |
parent | 6bdba9c7909d8f53e28823b16e82f89650eea16d (diff) | |
parent | de0858687898f6e0e54cce3f986779c7aa1a350e (diff) | |
download | Qt-14ddb8172cce8c90f01436ab8215cc8ed594e251.zip Qt-14ddb8172cce8c90f01436ab8215cc8ed594e251.tar.gz Qt-14ddb8172cce8c90f01436ab8215cc8ed594e251.tar.bz2 |
Merge commit 'remotes/origin/4.7' into symbian47
Conflicts:
src/gui/kernel/qapplication_s60.cpp
Diffstat (limited to 'qmake/generators')
-rw-r--r-- | qmake/generators/makefile.cpp | 21 |
1 files changed, 17 insertions, 4 deletions
diff --git a/qmake/generators/makefile.cpp b/qmake/generators/makefile.cpp index 29a2422..4c4f5bc 100644 --- a/qmake/generators/makefile.cpp +++ b/qmake/generators/makefile.cpp @@ -1236,7 +1236,7 @@ MakefileGenerator::writeInstalls(QTextStream &t, const QString &installs, bool n target += "\n"; do_default = false; for(QStringList::Iterator wild_it = tmp.begin(); wild_it != tmp.end(); ++wild_it) { - QString wild = Option::fixPathToLocalOS((*wild_it), false, false); + QString wild = Option::fixPathToTargetOS((*wild_it), false, false); QString dirstr = qmake_getpwd(), filestr = wild; int slsh = filestr.lastIndexOf(Option::dir_sep); if(slsh != -1) { @@ -1277,13 +1277,26 @@ MakefileGenerator::writeInstalls(QTextStream &t, const QString &installs, bool n } QString local_dirstr = Option::fixPathToLocalOS(dirstr, true); QStringList files = QDir(local_dirstr).entryList(QStringList(filestr)); - if(project->values((*it) + ".CONFIG").indexOf("no_check_exist") != -1 && files.isEmpty()) { + const QStringList &installConfigValues = project->values((*it) + ".CONFIG"); + if (installConfigValues.contains("no_check_exist") && files.isEmpty()) { if(!target.isEmpty()) target += "\t"; QString dst_file = filePrefixRoot(root, dst); QFileInfo fi(fileInfo(wild)); - QString cmd = QString(fi.isExecutable() ? "-$(INSTALL_PROGRAM)" : "-$(INSTALL_FILE)") + " " + - wild + " " + dst_file + "\n"; + QString cmd; + if (installConfigValues.contains("directory")) { + cmd = QLatin1String("-$(INSTALL_DIR)"); + if (!dst_file.endsWith(Option::dir_sep)) + dst_file += Option::dir_sep; + dst_file += fi.fileName(); + } else if (installConfigValues.contains("executable")) { + cmd = QLatin1String("-$(INSTALL_PROGRAM)"); + } else if (installConfigValues.contains("data")) { + cmd = QLatin1String("-$(INSTALL_FILE)"); + } else { + cmd = QString(fi.isExecutable() ? "-$(INSTALL_PROGRAM)" : "-$(INSTALL_FILE)"); + } + cmd += " " + wild + " " + dst_file + "\n"; target += cmd; if(!uninst.isEmpty()) uninst.append("\n\t"); |