refs #482 Rationalized the copying of files from source tree to build tree.

This commit is contained in:
Mathew Sutcliffe
2015-10-06 18:09:23 +01:00
parent a5d8db2354
commit e4adad45d0
9 changed files with 54 additions and 55 deletions

View File

@@ -1,3 +1,9 @@
################################
# Copy data files to build dir
################################
include(copyfiles.pri)
################################ ################################
# Externals # Externals
################################ ################################

View File

@@ -0,0 +1,26 @@
copy_files.name = COPY
copy_files.input = COPY_FILES
copy_files.CONFIG = no_link
copy_files.output_function = fileCopyDestination
defineReplace(fileCopyDestination) {
return($$DestRoot/$$relative_path($$1))
}
win32:isEmpty(MINGW_IN_SHELL) {
copy_files.commands = copy /y ${QMAKE_FILE_IN} ${QMAKE_FILE_OUT}
}
else {
copy_files.commands = mkdir -p `dirname ${QMAKE_FILE_OUT}` && \
cp ${QMAKE_FILE_IN} ${QMAKE_FILE_OUT}
}
QMAKE_EXTRA_COMPILERS += copy_files
# This CONFIG should be all that is needed to add a dependency to "make all"
# but some snafu with absolute vs. relative paths necessitates this workaround
# with PRE_TARGETDEPS instead.
#copy_files.CONFIG += target_predeps
PRE_TARGETDEPS += compiler_copy_files_make_all

View File

@@ -1,7 +1,15 @@
TEMPLATE = subdirs load(common_pre)
TEMPLATE = lib
CONFIG += staticlib
CONFIG -= qt
OTHER_FILES += *.pri
OTHER_FILES += data/images/flags/*.png OTHER_FILES += data/images/flags/*.png
OTHER_FILES += data/images/airlines/*.png OTHER_FILES += data/images/airlines/*.png
OTHER_FILES += data/swiftdb/*.* OTHER_FILES += swiftDB/*.*
OTHER_FILES += data/vatsim/*.*
COPY_FILES += $$PWD/data/images/flags/*.png
COPY_FILES += $$PWD/data/images/airlines/*.png
COPY_FILES += $$PWD/swiftDB/*.*
load(common_post)

View File

@@ -54,18 +54,6 @@ DESTDIR = $$DestRoot/lib
DLLDESTDIR = $$DestRoot/bin DLLDESTDIR = $$DestRoot/bin
OTHER_FILES += ./qss/*.qss ./qss/*.css ./qss/*.ini *.ico *.rc OTHER_FILES += ./qss/*.qss ./qss/*.css ./qss/*.ini *.ico *.rc
COPY_FILES += $$PWD/qss/*
win32:isEmpty(MINGW_IN_SHELL): COPY = xcopy /yi
else: COPY = cp -r
win32 {
QMAKE_POST_LINK += $$COPY $$shell_path($$PWD/qss) \
$$shell_path($$DestRoot/bin/qss)
}
else {
QMAKE_POST_LINK += mkdir -p $$shell_path($$DestRoot/bin) && \
$$COPY $$shell_path($$PWD/qss) \
$$shell_path($$DestRoot/bin)
}
load(common_post) load(common_post)

View File

@@ -321,7 +321,7 @@ namespace BlackGui
{ {
QString dirPath = QCoreApplication::applicationDirPath(); QString dirPath = QCoreApplication::applicationDirPath();
if (!dirPath.endsWith('/')) dirPath.append('/'); if (!dirPath.endsWith('/')) dirPath.append('/');
dirPath.append("qss"); dirPath.append("../qss");
return dirPath; return dirPath;
} }

View File

@@ -57,21 +57,4 @@ DLLDESTDIR = $$DestRoot/bin
OTHER_FILES += $$TRANSLATIONS readme.txt OTHER_FILES += $$TRANSLATIONS readme.txt
win32:isEmpty(MINGW_IN_SHELL): COPY = xcopy /yis
else: COPY = cp -r
win32 {
QMAKE_PRE_LINK += $$COPY $$shell_path($$SourceRoot/resources/data) \
$$shell_path($$DestRoot/resources) \
& $$COPY $$shell_path($$SourceRoot/resources/swiftDB) \
$$shell_path($$DestRoot/resources/swiftDB)
}
else {
QMAKE_PRE_LINK += mkdir -p $$shell_path($$DestRoot/resources) \
&& $$COPY $$shell_path($$SourceRoot/resources/data) \
$$shell_path($$DestRoot/resources) \
&& $$COPY $$shell_path($$SourceRoot/resources/swiftDB) \
$$shell_path($$DestRoot/resources/swiftDB)
}
load(common_post) load(common_post)

View File

@@ -233,7 +233,7 @@ namespace BlackMisc
QString CProject::getSwiftResourceDir() QString CProject::getSwiftResourceDir()
{ {
QDir dir(getApplicationDir()); QDir dir(getApplicationDir());
if (dir.cd("resources")) { return dir.absolutePath(); } if (dir.cdUp()) { return dir.absolutePath(); }
return ""; return "";
} }

View File

@@ -27,19 +27,7 @@ DESTDIR = $$DestRoot/lib
DLLDESTDIR = $$DestRoot/bin DLLDESTDIR = $$DestRoot/bin
OTHER_FILES += ./sounds/*.wav sounds/readme.txt OTHER_FILES += ./sounds/*.wav sounds/readme.txt
COPY_FILES += $$PWD/sounds/*
RESOURCES += RESOURCES +=
win32:isEmpty(MINGW_IN_SHELL): COPY = xcopy /yi
else: COPY = cp -r
win32 {
QMAKE_POST_LINK += $$COPY $$shell_path($$PWD/sounds) \
$$shell_path($$DestRoot/bin/sounds)
}
else {
QMAKE_POST_LINK += mkdir -p $$shell_path($$DestRoot/bin) && \
$$COPY $$shell_path($$PWD/sounds) \
$$shell_path($$DestRoot/bin)
}
load(common_post) load(common_post)

View File

@@ -492,12 +492,12 @@ namespace BlackSound
// order here is crucial, needs to be the same as in CSoundGenerator::Notification // order here is crucial, needs to be the same as in CSoundGenerator::Notification
if (!playlist) playlist = new QMediaPlaylist(mediaPlayer); if (!playlist) playlist = new QMediaPlaylist(mediaPlayer);
bool success = true; bool success = true;
success = playlist->addMedia(QUrl::fromLocalFile(QCoreApplication::applicationDirPath().append("/sounds/error.wav"))) && success; success = playlist->addMedia(QUrl::fromLocalFile(QCoreApplication::applicationDirPath().append("/../sounds/error.wav"))) && success;
success = playlist->addMedia(QUrl::fromLocalFile(QCoreApplication::applicationDirPath().append("/sounds/login.wav"))) && success; success = playlist->addMedia(QUrl::fromLocalFile(QCoreApplication::applicationDirPath().append("/../sounds/login.wav"))) && success;
success = playlist->addMedia(QUrl::fromLocalFile(QCoreApplication::applicationDirPath().append("/sounds/logoff.wav"))) && success; success = playlist->addMedia(QUrl::fromLocalFile(QCoreApplication::applicationDirPath().append("/../sounds/logoff.wav"))) && success;
success = playlist->addMedia(QUrl::fromLocalFile(QCoreApplication::applicationDirPath().append("/sounds/privatemessage.wav"))) && success; success = playlist->addMedia(QUrl::fromLocalFile(QCoreApplication::applicationDirPath().append("/../sounds/privatemessage.wav"))) && success;
success = playlist->addMedia(QUrl::fromLocalFile(QCoreApplication::applicationDirPath().append("/sounds/voiceroomjoined.wav"))) && success; success = playlist->addMedia(QUrl::fromLocalFile(QCoreApplication::applicationDirPath().append("/../sounds/voiceroomjoined.wav"))) && success;
success = playlist->addMedia(QUrl::fromLocalFile(QCoreApplication::applicationDirPath().append("/sounds/voiceroomleft.wav"))) && success; success = playlist->addMedia(QUrl::fromLocalFile(QCoreApplication::applicationDirPath().append("/../sounds/voiceroomleft.wav"))) && success;
Q_ASSERT(success); Q_ASSERT(success);
playlist->setPlaybackMode(QMediaPlaylist::CurrentItemOnce); playlist->setPlaybackMode(QMediaPlaylist::CurrentItemOnce);