Compare commits
3 Commits
5ca16a4f76
...
cmake_rewo
| Author | SHA1 | Date | |
|---|---|---|---|
| d41accd111 | |||
| 957ccc9946 | |||
| 7d42cbd111 |
120
CMakeLists.txt
120
CMakeLists.txt
@@ -2,6 +2,8 @@ cmake_minimum_required(VERSION 3.10)
|
|||||||
|
|
||||||
project(checks-parser VERSION 0.1 LANGUAGES CXX)
|
project(checks-parser VERSION 0.1 LANGUAGES CXX)
|
||||||
|
|
||||||
|
option(BUILD_TRANSLATIONS "Build translations?" ON)
|
||||||
|
|
||||||
set(CMAKE_AUTOUIC ON)
|
set(CMAKE_AUTOUIC ON)
|
||||||
set(CMAKE_AUTOMOC ON)
|
set(CMAKE_AUTOMOC ON)
|
||||||
set(CMAKE_AUTORCC OFF)
|
set(CMAKE_AUTORCC OFF)
|
||||||
@@ -17,84 +19,76 @@ find_package(Qt5Gui REQUIRED)
|
|||||||
find_package(Qt5Widgets REQUIRED)
|
find_package(Qt5Widgets REQUIRED)
|
||||||
|
|
||||||
set(PROJECT_SOURCES
|
set(PROJECT_SOURCES
|
||||||
main.cpp
|
main.cpp
|
||||||
mainwindow.cpp
|
mainwindow.cpp
|
||||||
mainwindow.h
|
mainwindow.h
|
||||||
mainwindow.ui
|
mainwindow.ui
|
||||||
|
|
||||||
goods/goods.h goods/goods.cpp
|
goods/goods.h goods/goods.cpp
|
||||||
check/check.h check/check.cpp
|
check/check.h check/check.cpp
|
||||||
parser/parser.h parser/parser.cpp
|
parser/parser.h parser/parser.cpp
|
||||||
parser/module.h parser/module.cpp
|
parser/module.h parser/module.cpp
|
||||||
|
|
||||||
outputdialog.h outputdialog.cpp outputdialog.ui
|
outputdialog.h outputdialog.cpp outputdialog.ui
|
||||||
output/output_options.h output/output_options.cpp
|
output/output_options.h output/output_options.cpp
|
||||||
|
|
||||||
utils/utils.h utils/utils.cpp
|
utils/utils.h utils/utils.cpp
|
||||||
image/checkimage.h image/checkimage.cpp
|
image/checkimage.h image/checkimage.cpp
|
||||||
net/net.h net/net.cpp
|
net/net.h net/net.cpp
|
||||||
settings/settings.h settings/settings.cpp
|
settings/settings.h settings/settings.cpp
|
||||||
settingsdialog.h settingsdialog.cpp settingsdialog.ui
|
settingsdialog.h settingsdialog.cpp settingsdialog.ui
|
||||||
adjustpicturedialog.h adjustpicturedialog.cpp adjustpicturedialog.ui
|
adjustpicturedialog.h adjustpicturedialog.cpp adjustpicturedialog.ui
|
||||||
image_redactor/imageredactor.h image_redactor/imageredactor.cpp
|
image_redactor/imageredactor.h image_redactor/imageredactor.cpp
|
||||||
solvecaptchadialog.h solvecaptchadialog.cpp solvecaptchadialog.ui
|
solvecaptchadialog.h solvecaptchadialog.cpp solvecaptchadialog.ui
|
||||||
exceptions/ofdrequestexception.h exceptions/ofdrequestexception.cpp
|
exceptions/ofdrequestexception.h exceptions/ofdrequestexception.cpp
|
||||||
)
|
)
|
||||||
|
|
||||||
# Specify the UI files and source files for translation
|
|
||||||
set(TRANSLATION_SOURCES
|
set(TRANSLATION_SOURCES
|
||||||
main.cpp
|
main.cpp
|
||||||
mainwindow.cpp mainwindow.h mainwindow.ui
|
mainwindow.cpp mainwindow.h mainwindow.ui
|
||||||
outputdialog.cpp outputdialog.h outputdialog.ui
|
outputdialog.cpp outputdialog.h outputdialog.ui
|
||||||
settingsdialog.cpp settingsdialog.h settingsdialog.ui
|
settingsdialog.cpp settingsdialog.h settingsdialog.ui
|
||||||
solvecaptchadialog.cpp solvecaptchadialog.h solvecaptchadialog.ui
|
solvecaptchadialog.cpp solvecaptchadialog.h solvecaptchadialog.ui
|
||||||
adjustpicturedialog.cpp adjustpicturedialog.h adjustpicturedialog.ui
|
adjustpicturedialog.cpp adjustpicturedialog.h adjustpicturedialog.ui
|
||||||
)
|
)
|
||||||
|
|
||||||
# qt_add_resources(RESOURCES
|
set(TS_FILES
|
||||||
# ${CMAKE_CURRENT_SOURCE_DIR}/translations.qrc
|
translations/en_US.ts
|
||||||
# )
|
translations/ru_RU.ts
|
||||||
|
|
||||||
qt5_add_translation(QM_FILES translations/en_US.ts translations/ru_RU.ts)
|
|
||||||
# qt5_add_resources(TRANSLATIONQRC translations.qrc OPTIONS --root ${CMAKE_CURRENT_BINARY_DIR})
|
|
||||||
# qt5_add_resources(TRANSLATIONQRC translations.qrc)
|
|
||||||
|
|
||||||
add_custom_target(translations
|
|
||||||
DEPENDS ${QM_FILES}
|
|
||||||
# DEPENDS ${RESOURCES}
|
|
||||||
VERBATIM
|
|
||||||
)
|
|
||||||
file(GLOB QM_FILES ${CMAKE_CURRENT_SOURCE_DIR}/translations/*.qm)
|
|
||||||
|
|
||||||
qt_add_resources(translation_resources
|
|
||||||
${CMAKE_CURRENT_SOURCE_DIR}/translations.qrc
|
|
||||||
)
|
)
|
||||||
|
|
||||||
foreach(QM_FILE ${QM_FILES})
|
if (BUILD_TRANSLATIONS)
|
||||||
file(APPEND ${CMAKE_CURRENT_SOURCE_DIR}/translations.qrc
|
qt5_create_translation(QM_FILES "${TRANSLATION_SOURCES}" ${TS_FILES})
|
||||||
" <file>${QM_FILE}</file>\n"
|
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/translations.qrc ${CMAKE_CURRENT_BINARY_DIR}/translations.qrc COPYONLY)
|
||||||
)
|
qt5_add_resources(TRANSLATIONQRC ${CMAKE_CURRENT_BINARY_DIR}/translations.qrc)
|
||||||
endforeach()
|
add_custom_target(translations ALL DEPENDS ${QM_FILES})
|
||||||
|
add_custom_target(resources ALL DEPENDS ${TRANSLATIONQRC})
|
||||||
|
add_dependencies(resources translations)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
set(SOURCES "")
|
||||||
|
if (BUILD_TRANSLATIONS)
|
||||||
|
list(APPEND SOURCES ${TRANSLATIONQRC})
|
||||||
|
endif()
|
||||||
|
|
||||||
if(ANDROID)
|
if(ANDROID)
|
||||||
add_library(checks-parser SHARED
|
add_library(checks-parser SHARED
|
||||||
${PROJECT_SOURCES}
|
${PROJECT_SOURCES}
|
||||||
|
${SOURCES}
|
||||||
)
|
)
|
||||||
else()
|
else()
|
||||||
add_executable(checks-parser
|
add_executable(checks-parser
|
||||||
${PROJECT_SOURCES}
|
${PROJECT_SOURCES}
|
||||||
${RESOURCES}
|
${SOURCES}
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
target_link_libraries(checks-parser PRIVATE Qt${QT_VERSION_MAJOR}::Widgets)
|
target_link_libraries(checks-parser PRIVATE Qt5::Widgets)
|
||||||
|
|
||||||
target_include_directories(checks-parser PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/image_redactor)
|
target_include_directories(checks-parser PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/image_redactor)
|
||||||
|
|
||||||
# Qt for iOS sets MACOSX_BUNDLE_GUI_IDENTIFIER automatically since Qt 6.1.
|
set(BUNDLE_ID_OPTION MACOSX_BUNDLE_GUI_IDENTIFIER org.foxarmy.checks-parser)
|
||||||
# If you are developing for iOS or macOS you should consider setting an
|
|
||||||
# explicit, fixed bundle identifier manually though.
|
|
||||||
set(BUNDLE_ID_OPTION MACOSX_BUNDLE_GUI_IDENTIFIER com.example.checks-parser)
|
|
||||||
set_target_properties(checks-parser PROPERTIES
|
set_target_properties(checks-parser PROPERTIES
|
||||||
${BUNDLE_ID_OPTION}
|
${BUNDLE_ID_OPTION}
|
||||||
MACOSX_BUNDLE_BUNDLE_VERSION ${PROJECT_VERSION}
|
MACOSX_BUNDLE_BUNDLE_VERSION ${PROJECT_VERSION}
|
||||||
@@ -110,16 +104,20 @@ install(TARGETS checks-parser
|
|||||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WIN32)
|
|
||||||
set(OpenCV_DIR /usr/local/lib/cmake/opencv4)
|
|
||||||
endif()
|
|
||||||
find_package(OpenCV 4 REQUIRED COMPONENTS core imgproc imgcodecs)
|
|
||||||
|
|
||||||
include_directories(${OpenCV_INCLUDE_DIRS})
|
if(WIN32)
|
||||||
|
#????
|
||||||
|
set(OpenCV_DIR /usr/local/lib/cmake/opencv4)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
find_package(OpenCV REQUIRED COMPONENTS core imgproc imgcodecs)
|
||||||
|
|
||||||
|
include_directories( ${OpenCV_INCLUDE_DIRS} )
|
||||||
|
|
||||||
target_link_libraries(checks-parser PRIVATE -lzbar)
|
target_link_libraries(checks-parser PRIVATE -lzbar)
|
||||||
target_link_libraries(checks-parser PRIVATE -ltesseract)
|
target_link_libraries(checks-parser PRIVATE -ltesseract)
|
||||||
target_link_libraries(checks-parser PRIVATE -lcurl)
|
target_link_libraries(checks-parser PRIVATE -lcurl)
|
||||||
target_link_libraries(checks-parser PRIVATE ${OpenCV_LIBS})
|
target_link_libraries(checks-parser PRIVATE ${OpenCV_LIBS} )
|
||||||
if (CMAKE_CXX_COMPILER_VERSION VERSION_LESS 8)
|
if (CMAKE_CXX_COMPILER_VERSION VERSION_LESS 8)
|
||||||
target_link_libraries(checks-parser PRIVATE -lstdc++fs)
|
target_link_libraries(checks-parser PRIVATE -lstdc++fs)
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -29,7 +29,6 @@ In general, you need to install following dependencies in order to build that ap
|
|||||||
* curl
|
* curl
|
||||||
* nlohmann-json
|
* nlohmann-json
|
||||||
* qt5
|
* qt5
|
||||||
* vtk
|
|
||||||
|
|
||||||
Please, do not hesitate to open an issue if you cannot build that. I will help and if you are building on a distro that is not listed there, we can append that list as soon as we will solve your problem!
|
Please, do not hesitate to open an issue if you cannot build that. I will help and if you are building on a distro that is not listed there, we can append that list as soon as we will solve your problem!
|
||||||
### Linux
|
### Linux
|
||||||
|
|||||||
@@ -29,7 +29,6 @@
|
|||||||
* curl
|
* curl
|
||||||
* nlohmann-json
|
* nlohmann-json
|
||||||
* qt5
|
* qt5
|
||||||
* vtk
|
|
||||||
|
|
||||||
Пожалуйста, не стесняйтесь и открывайте issue, если вы не можете собрать приложение. Я помогу вам, и если вы собираете приложение на дистрибутиве, который здесь не перечислен, как только мы решим вашу проблему, я добавлю новый дистрибутив в этот список!
|
Пожалуйста, не стесняйтесь и открывайте issue, если вы не можете собрать приложение. Я помогу вам, и если вы собираете приложение на дистрибутиве, который здесь не перечислен, как только мы решим вашу проблему, я добавлю новый дистрибутив в этот список!
|
||||||
|
|
||||||
|
|||||||
3
main.cpp
3
main.cpp
@@ -54,6 +54,9 @@ int main(int argc, char *argv[]) {
|
|||||||
} else {
|
} else {
|
||||||
lang = QString::fromStdString("en_US");
|
lang = QString::fromStdString("en_US");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
std::cout << "Using locale: " << lang.toStdString() << std::endl;
|
||||||
|
|
||||||
translator.load(":/translation/" + lang + ".qm");
|
translator.load(":/translation/" + lang + ".qm");
|
||||||
|
|
||||||
a.installTranslator(&translator);
|
a.installTranslator(&translator);
|
||||||
|
|||||||
@@ -3,5 +3,4 @@
|
|||||||
<file>en_US.qm</file>
|
<file>en_US.qm</file>
|
||||||
<file>ru_RU.qm</file>
|
<file>ru_RU.qm</file>
|
||||||
</qresource>
|
</qresource>
|
||||||
<qresource prefix="/translations"/>
|
|
||||||
</RCC>
|
</RCC>
|
||||||
|
|||||||
Reference in New Issue
Block a user