Здравствуйте. Есть в .pro такой кусок:
macx {
appresources.files += resources/translations
appresources.files += resources/data
appresources.path = Contents/Resources
QMAKE_BUNDLE_DATA += appresources
}
Если папки translations и data отсутствуют в .app Contents/Resources, то всё копируется нормально. Но если они есть, то повторно копия не выполняется, хотя в makefile написано, что они должны удаляться перед копированием:
COPY_DIR = cp -f -R
DEL_FILE = rm -f
MedianXLOfflineTools.app/Contents/Resources/translations: /Users/svp/mxl_offline_tools/resources/translations
@$(CHK_DIR_EXISTS) MedianXLOfflineTools.app/Contents/Resources || $(MKDIR) MedianXLOfflineTools.app/Contents/Resources
@$(DEL_FILE) -r MedianXLOfflineTools.app/Contents/Resources/translations
@$(COPY_DIR) /Users/svp/mxl_offline_tools/resources/translations MedianXLOfflineTools.app/Contents/Resources/translations
MedianXLOfflineTools.app/Contents/Resources/data: /Users/svp/mxl_offline_tools/resources/data
@$(CHK_DIR_EXISTS) MedianXLOfflineTools.app/Contents/Resources || $(MKDIR) MedianXLOfflineTools.app/Contents/Resources
@$(DEL_FILE) -r MedianXLOfflineTools.app/Contents/Resources/data
@$(COPY_DIR) /Users/svp/mxl_offline_tools/resources/data MedianXLOfflineTools.app/Contents/Resources/data
Можно ли это как-то побороть? Копирование папок происходит до начала сборки, поэтому QMAKE_PRE_LINK и QMAKE_EXTRA_TARGETS не прокатят:
all: Makefile MedianXLOfflineTools.app/Contents/PkgInfo MedianXLOfflineTools.app/Contents/Resources/empty.lproj MedianXLOfflineTools.app/Contents/Info.plist MedianXLOfflineTools.app/Contents/Resources/icon.icns MedianXLOfflineTools.app/Contents/Resources/translations MedianXLOfflineTools.app/Contents/Resources/data MedianXLOfflineTools.app/Contents/Resources/locversion.plist $(TARGET)
Т.е. можно ли как-то вклиниться в этот 'all' в самом начале? Или как-то узнать папку сборки до вызова qmake (чтобы собирать проект скриптом)?