sledgehammer999
3 years ago
committed by
GitHub
34 changed files with 93 additions and 29 deletions
@ -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() |
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -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()) |
Loading…
Reference in new issue