qt5base-lts/mkspecs/features/permissions.prf
Tor Arne Vestbø 14649404bc permissions: Handle relative paths to Info.plist file
Pick-to: 6.5
Change-Id: I5fb6bd7da37392bb4a44309b4545fe158a60b3e3
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2023-02-07 13:33:03 +01:00

40 lines
1.0 KiB
Plaintext

isEmpty(QMAKE_INFO_PLIST): \
return()
plist_path = $$relative_path($$absolute_path($$QMAKE_INFO_PLIST, $$_PRO_FILE_PWD_), $$OUT_PWD))
!exists($$plist_path): \
return()
for(plugin, QT_PLUGINS) {
!equals(QT_PLUGIN.$${plugin}.TYPE, permissions): \
next()
usage_descriptions = $$eval(QT_PLUGIN.$${plugin}.usage_descriptions)
found_usage_description = false
for(usage_description_key, usage_descriptions) {
usage_description = $$system("/usr/libexec/PlistBuddy" \
"-c 'print $$usage_description_key' $$QMAKE_INFO_PLIST 2>/dev/null", \
singleLine, exit_code)
!equals(exit_code, 0): \
next()
!isEmpty(usage_description) {
found_usage_description = true
break()
}
}
!$$found_usage_description: \
next()
request_flag = $$eval(QT_PLUGIN.$${plugin}.request_flag)
QTPLUGIN += $$plugin
QMAKE_LFLAGS += $$request_flag
QMAKE_INTERNAL_INCLUDED_FILES *= $$QMAKE_INFO_PLIST
}