mirror of
https://github.com/d47081/qBittorrent.git
synced 2025-01-10 23:07:59 +00:00
Merge pull request #16745 from sledgehammer999/drop_qt_translations_folder
Drop qt translations folder
This commit is contained in:
commit
95f3073e6f
25
cmake/Modules/FindQtTranslations.cmake
Normal file
25
cmake/Modules/FindQtTranslations.cmake
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
# Return Qt translations files as list of paths
|
||||||
|
# It will return .qm files of qt/qtbase that aren't stub files.
|
||||||
|
# Requires that Qt has been found first because it depends on qmake being available
|
||||||
|
|
||||||
|
function(qbt_get_qt_translations qt_translations)
|
||||||
|
get_target_property(QT_QMAKE_EXECUTABLE Qt::qmake IMPORTED_LOCATION)
|
||||||
|
execute_process(COMMAND "${QT_QMAKE_EXECUTABLE}" -query QT_INSTALL_TRANSLATIONS
|
||||||
|
OUTPUT_VARIABLE QT_TRANSLATIONS_DIR OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
|
|
||||||
|
FILE(GLOB QT_TEMP_TRANSLATIONS CONFIGURE_DEPENDS
|
||||||
|
"${QT_TRANSLATIONS_DIR}/qt_??.qm"
|
||||||
|
"${QT_TRANSLATIONS_DIR}/qt_??_??.qm"
|
||||||
|
"${QT_TRANSLATIONS_DIR}/qtbase_??.qm"
|
||||||
|
"${QT_TRANSLATIONS_DIR}/qtbase_??_??.qm")
|
||||||
|
|
||||||
|
foreach(TRANSLATION ${QT_TEMP_TRANSLATIONS})
|
||||||
|
FILE(SIZE "${TRANSLATION}" translation_size)
|
||||||
|
# Consider files less than 10KB as stub translations
|
||||||
|
if (translation_size GREATER_EQUAL 10240)
|
||||||
|
list(APPEND QT_FINAL_TRANSLATIONS "${TRANSLATION}")
|
||||||
|
endif()
|
||||||
|
endforeach()
|
||||||
|
|
||||||
|
SET(${qt_translations} ${QT_FINAL_TRANSLATIONS} PARENT_SCOPE)
|
||||||
|
endfunction()
|
BIN
dist/qt-translations/qt_fa.qm
vendored
BIN
dist/qt-translations/qt_fa.qm
vendored
Binary file not shown.
BIN
dist/qt-translations/qt_gl.qm
vendored
BIN
dist/qt-translations/qt_gl.qm
vendored
Binary file not shown.
BIN
dist/qt-translations/qt_lt.qm
vendored
BIN
dist/qt-translations/qt_lt.qm
vendored
Binary file not shown.
BIN
dist/qt-translations/qt_pt.qm
vendored
BIN
dist/qt-translations/qt_pt.qm
vendored
Binary file not shown.
BIN
dist/qt-translations/qt_sl.qm
vendored
BIN
dist/qt-translations/qt_sl.qm
vendored
Binary file not shown.
BIN
dist/qt-translations/qt_sv.qm
vendored
BIN
dist/qt-translations/qt_sv.qm
vendored
Binary file not shown.
BIN
dist/qt-translations/qt_zh_CN.qm
vendored
BIN
dist/qt-translations/qt_zh_CN.qm
vendored
Binary file not shown.
BIN
dist/qt-translations/qtbase_ar.qm
vendored
BIN
dist/qt-translations/qtbase_ar.qm
vendored
Binary file not shown.
BIN
dist/qt-translations/qtbase_bg.qm
vendored
BIN
dist/qt-translations/qtbase_bg.qm
vendored
Binary file not shown.
BIN
dist/qt-translations/qtbase_ca.qm
vendored
BIN
dist/qt-translations/qtbase_ca.qm
vendored
Binary file not shown.
BIN
dist/qt-translations/qtbase_cs.qm
vendored
BIN
dist/qt-translations/qtbase_cs.qm
vendored
Binary file not shown.
BIN
dist/qt-translations/qtbase_da.qm
vendored
BIN
dist/qt-translations/qtbase_da.qm
vendored
Binary file not shown.
BIN
dist/qt-translations/qtbase_de.qm
vendored
BIN
dist/qt-translations/qtbase_de.qm
vendored
Binary file not shown.
BIN
dist/qt-translations/qtbase_es.qm
vendored
BIN
dist/qt-translations/qtbase_es.qm
vendored
Binary file not shown.
BIN
dist/qt-translations/qtbase_fi.qm
vendored
BIN
dist/qt-translations/qtbase_fi.qm
vendored
Binary file not shown.
BIN
dist/qt-translations/qtbase_fr.qm
vendored
BIN
dist/qt-translations/qtbase_fr.qm
vendored
Binary file not shown.
BIN
dist/qt-translations/qtbase_gd.qm
vendored
BIN
dist/qt-translations/qtbase_gd.qm
vendored
Binary file not shown.
BIN
dist/qt-translations/qtbase_he.qm
vendored
BIN
dist/qt-translations/qtbase_he.qm
vendored
Binary file not shown.
BIN
dist/qt-translations/qtbase_hu.qm
vendored
BIN
dist/qt-translations/qtbase_hu.qm
vendored
Binary file not shown.
BIN
dist/qt-translations/qtbase_it.qm
vendored
BIN
dist/qt-translations/qtbase_it.qm
vendored
Binary file not shown.
BIN
dist/qt-translations/qtbase_ja.qm
vendored
BIN
dist/qt-translations/qtbase_ja.qm
vendored
Binary file not shown.
BIN
dist/qt-translations/qtbase_ko.qm
vendored
BIN
dist/qt-translations/qtbase_ko.qm
vendored
Binary file not shown.
BIN
dist/qt-translations/qtbase_lv.qm
vendored
BIN
dist/qt-translations/qtbase_lv.qm
vendored
Binary file not shown.
BIN
dist/qt-translations/qtbase_pl.qm
vendored
BIN
dist/qt-translations/qtbase_pl.qm
vendored
Binary file not shown.
BIN
dist/qt-translations/qtbase_ru.qm
vendored
BIN
dist/qt-translations/qtbase_ru.qm
vendored
Binary file not shown.
BIN
dist/qt-translations/qtbase_sk.qm
vendored
BIN
dist/qt-translations/qtbase_sk.qm
vendored
Binary file not shown.
BIN
dist/qt-translations/qtbase_tr.qm
vendored
BIN
dist/qt-translations/qtbase_tr.qm
vendored
Binary file not shown.
BIN
dist/qt-translations/qtbase_uk.qm
vendored
BIN
dist/qt-translations/qtbase_uk.qm
vendored
Binary file not shown.
BIN
dist/qt-translations/qtbase_zh_TW.qm
vendored
BIN
dist/qt-translations/qtbase_zh_TW.qm
vendored
Binary file not shown.
10
dist/windows/README.txt
vendored
10
dist/windows/README.txt
vendored
@ -38,10 +38,12 @@ installer-translations
|
|||||||
translations
|
translations
|
||||||
qt_ar.qm
|
qt_ar.qm
|
||||||
...
|
...
|
||||||
(all the .qm files found in the 'translations' folder of your Qt install. Those files differ between Qt4 and Qt5.
|
(All the .qm files found in the 'translations' folder of your Qt install. Those files differ between Qt5 and Qt6.
|
||||||
If you want to distribute Qt4 translations it is better to use the ones found in this repo under the path "dist/qt-translations".
|
You will need the files that conform to this globbing expression 'qt_??.qm qt_??_??.qm qtbase_??.qm qtbase_??_??.qm'.
|
||||||
They contain extra languages not distributed via the official qt4 sources.
|
Some of those files will be stubs. Filter any file that is smaller than 10KB in size.
|
||||||
Don't forget to edit the filelist in installer.nsi + uninstaller.nsi to include all your .qm files.)
|
Alternatively you can use the 'gather_qt_translations.py' script found in the same folder as this file.
|
||||||
|
Run it with '--help' to see its usage.
|
||||||
|
**YOU MUST** edit the list of .qm files in the 'installer.nsi' to match whatever files are in the 'translations' subfolder.)
|
||||||
qt_zh_TW.qm
|
qt_zh_TW.qm
|
||||||
installer.nsi
|
installer.nsi
|
||||||
license.txt
|
license.txt
|
||||||
|
31
dist/windows/gather_qt_translations.py
vendored
Normal file
31
dist/windows/gather_qt_translations.py
vendored
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
#!/usr/bin/env python3
|
||||||
|
|
||||||
|
import argparse
|
||||||
|
import glob
|
||||||
|
import os
|
||||||
|
import shutil
|
||||||
|
import sys
|
||||||
|
from typing import List
|
||||||
|
|
||||||
|
def isNotStub(path: str) -> bool:
|
||||||
|
return (os.path.getsize(path) >= (10 * 1024))
|
||||||
|
|
||||||
|
def main() -> int:
|
||||||
|
parser = argparse.ArgumentParser(description='Gather valid Qt translations for NSIS packaging.')
|
||||||
|
parser.add_argument("qt_translations_folder", help="Qt's translations folder")
|
||||||
|
parser.add_argument("nsis_packaging_folder", help="NSIS packaging translations folder")
|
||||||
|
args = parser.parse_args()
|
||||||
|
|
||||||
|
tmp_translations: List[str] = glob.glob(f'{args.qt_translations_folder}/qt_??.qm')
|
||||||
|
tmp_translations += glob.glob(f'{args.qt_translations_folder}/qt_??_??.qm')
|
||||||
|
tmp_translations += glob.glob(f'{args.qt_translations_folder}/qtbase_??.qm')
|
||||||
|
tmp_translations += glob.glob(f'{args.qt_translations_folder}qtbase_??_??.qm')
|
||||||
|
|
||||||
|
filtered = filter(isNotStub, tmp_translations)
|
||||||
|
for file in filtered:
|
||||||
|
shutil.copy2(file, args.nsis_packaging_folder)
|
||||||
|
|
||||||
|
return 0
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
sys.exit(main())
|
32
macxconf.pri
32
macxconf.pri
@ -7,13 +7,31 @@ else {
|
|||||||
include(conf.pri)
|
include(conf.pri)
|
||||||
}
|
}
|
||||||
|
|
||||||
QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.14
|
# Custom function
|
||||||
|
# Return Qt translations files as list of paths
|
||||||
|
# It will return .qm files of qt/qtbase that aren't stub files.
|
||||||
|
defineReplace(qbt_get_qt_translations) {
|
||||||
|
# The $$[] syntax queries qmake properties
|
||||||
|
TMP_TRANSLATIONS = $$files($$[QT_INSTALL_TRANSLATIONS]/qt_??.qm)
|
||||||
|
TMP_TRANSLATIONS += $$files($$[QT_INSTALL_TRANSLATIONS]/qt_??_??.qm)
|
||||||
|
TMP_TRANSLATIONS += $$files($$[QT_INSTALL_TRANSLATIONS]/qtbase_??.qm)
|
||||||
|
TMP_TRANSLATIONS += $$files($$[QT_INSTALL_TRANSLATIONS]/qtbase_??_??.qm)
|
||||||
|
|
||||||
|
# Consider files less than 10KB as stub translations
|
||||||
|
for (TRANSLATION, TMP_TRANSLATIONS) {
|
||||||
|
TRANSLATION_SIZE = $$system("stat -f%z $${TRANSLATION}", true, EXIT_STATUS)
|
||||||
|
equals(EXIT_STATUS, 0):!lessThan(TRANSLATION_SIZE, 10240): FINAL_TRANSLATIONS += $${TRANSLATION}
|
||||||
|
}
|
||||||
|
|
||||||
|
return($$FINAL_TRANSLATIONS)
|
||||||
|
}
|
||||||
|
|
||||||
|
QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.15
|
||||||
|
|
||||||
DEFINES += _DARWIN_FEATURE_64_BIT_INODE
|
DEFINES += _DARWIN_FEATURE_64_BIT_INODE
|
||||||
|
|
||||||
LIBS += -framework Carbon -framework IOKit -framework AppKit
|
LIBS += -framework Carbon -framework IOKit -framework AppKit
|
||||||
|
|
||||||
QT_LANG_PATH = ../dist/qt-translations
|
|
||||||
DIST_PATH = ../dist/mac
|
DIST_PATH = ../dist/mac
|
||||||
|
|
||||||
document_icon.path = Contents/Resources
|
document_icon.path = Contents/Resources
|
||||||
@ -25,15 +43,7 @@ qt_conf.files = $$DIST_PATH/qt.conf
|
|||||||
QMAKE_BUNDLE_DATA += qt_conf
|
QMAKE_BUNDLE_DATA += qt_conf
|
||||||
|
|
||||||
qt_translations.path = Contents/translations
|
qt_translations.path = Contents/translations
|
||||||
qt_translations.files = $$files($$QT_LANG_PATH/qtbase_*.qm)
|
qt_translations.files = $$qbt_get_qt_translations()
|
||||||
qt_translations.files += \
|
|
||||||
$$QT_LANG_PATH/qt_fa.qm \
|
|
||||||
$$QT_LANG_PATH/qt_gl.qm \
|
|
||||||
$$QT_LANG_PATH/qt_lt.qm \
|
|
||||||
$$QT_LANG_PATH/qt_pt.qm \
|
|
||||||
$$QT_LANG_PATH/qt_sl.qm \
|
|
||||||
$$QT_LANG_PATH/qt_sv.qm \
|
|
||||||
$$QT_LANG_PATH/qt_zh_CN.qm
|
|
||||||
QMAKE_BUNDLE_DATA += qt_translations
|
QMAKE_BUNDLE_DATA += qt_translations
|
||||||
|
|
||||||
ICON = $$DIST_PATH/qbittorrent_mac.icns
|
ICON = $$DIST_PATH/qbittorrent_mac.icns
|
||||||
|
@ -16,11 +16,6 @@ if (WEBUI)
|
|||||||
"${qBittorrent_BINARY_DIR}/src/webui/www/translations/webui_translations.qrc" COPYONLY)
|
"${qBittorrent_BINARY_DIR}/src/webui/www/translations/webui_translations.qrc" COPYONLY)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
FILE(GLOB QT_TRANSLATIONS "${qBittorrent_SOURCE_DIR}/dist/qt-translations/qtbase_*.qm")
|
|
||||||
foreach(EXTRA_TRANSLATION IN ITEMS "fa" "gl" "lt" "pt" "sl" "sv" "zh_CN")
|
|
||||||
list(APPEND QT_TRANSLATIONS "${qBittorrent_SOURCE_DIR}/dist/qt-translations/qt_${EXTRA_TRANSLATION}.qm")
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
# Executable target configuration
|
# Executable target configuration
|
||||||
# -----------------------------------------------------------------------------
|
# -----------------------------------------------------------------------------
|
||||||
# -----------------------------------------------------------------------------
|
# -----------------------------------------------------------------------------
|
||||||
@ -65,16 +60,17 @@ endif()
|
|||||||
# Additional platform specific configuration
|
# Additional platform specific configuration
|
||||||
# -----------------------------------------------------------------------------
|
# -----------------------------------------------------------------------------
|
||||||
# -----------------------------------------------------------------------------
|
# -----------------------------------------------------------------------------
|
||||||
set_source_files_properties(${QT_TRANSLATIONS} PROPERTIES MACOSX_PACKAGE_LOCATION translations)
|
|
||||||
set_source_files_properties(
|
|
||||||
"${qBittorrent_SOURCE_DIR}/dist/mac/qt.conf"
|
|
||||||
"${qBittorrent_SOURCE_DIR}/dist/mac/qBitTorrentDocument.icns"
|
|
||||||
"${qBittorrent_SOURCE_DIR}/dist/mac/qbittorrent_mac.icns"
|
|
||||||
PROPERTIES
|
|
||||||
MACOSX_PACKAGE_LOCATION Resources
|
|
||||||
)
|
|
||||||
|
|
||||||
if (CMAKE_SYSTEM_NAME STREQUAL "Darwin")
|
if (CMAKE_SYSTEM_NAME STREQUAL "Darwin")
|
||||||
|
include(FindQtTranslations)
|
||||||
|
qbt_get_qt_translations(QT_TRANSLATIONS)
|
||||||
|
set_source_files_properties(${QT_TRANSLATIONS} PROPERTIES MACOSX_PACKAGE_LOCATION translations)
|
||||||
|
set_source_files_properties(
|
||||||
|
"${qBittorrent_SOURCE_DIR}/dist/mac/qt.conf"
|
||||||
|
"${qBittorrent_SOURCE_DIR}/dist/mac/qBitTorrentDocument.icns"
|
||||||
|
"${qBittorrent_SOURCE_DIR}/dist/mac/qbittorrent_mac.icns"
|
||||||
|
PROPERTIES
|
||||||
|
MACOSX_PACKAGE_LOCATION Resources
|
||||||
|
)
|
||||||
# provide variables for substitution in dist/mac/Info.plist
|
# provide variables for substitution in dist/mac/Info.plist
|
||||||
get_target_property(EXECUTABLE_NAME qbt_app OUTPUT_NAME)
|
get_target_property(EXECUTABLE_NAME qbt_app OUTPUT_NAME)
|
||||||
# This variable name should be changed once qmake is no longer used. Refer to the discussion in PR #14813
|
# This variable name should be changed once qmake is no longer used. Refer to the discussion in PR #14813
|
||||||
|
Loading…
Reference in New Issue
Block a user