diff --git a/.travis.yml b/.travis.yml
index e727525..5de2861 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -44,7 +44,7 @@ matrix:
env: CMAKE_CXX_COMPILER=clang++-3.6
os: linux
- compiler: clang
- env: CMAKE_CXX_COMPILER=clang++-3.6
+ env: CMAKE_CXX_COMPILER=/usr/bin/clang++
os: osx
before_install:
diff --git a/openhantek/CMakeLists.txt b/openhantek/CMakeLists.txt
index fd2753e..c82c8ef 100644
--- a/openhantek/CMakeLists.txt
+++ b/openhantek/CMakeLists.txt
@@ -23,7 +23,7 @@ add_subdirectory(translations)
add_subdirectory(res)
# make executable
-add_executable(${PROJECT_NAME} ${SRC} ${HEADERS} ${QRC})
+add_executable(${PROJECT_NAME} ${SRC} ${HEADERS} ${QRC} "${CMAKE_BINARY_DIR}/translations.qrc")
target_link_libraries(${PROJECT_NAME} Qt5::Widgets Qt5::PrintSupport Qt5::OpenGL ${OPENGL_LIBRARIES} )
#target_compile_features(${PROJECT_NAME} PRIVATE cxx_range_for)
diff --git a/openhantek/src/main.cpp b/openhantek/src/main.cpp
index c0b865e..3ccbeb4 100644
--- a/openhantek/src/main.cpp
+++ b/openhantek/src/main.cpp
@@ -38,12 +38,13 @@ int main(int argc, char *argv[]) {
QApplication openHantekApplication(argc, argv);
QTranslator qtTranslator;
- qtTranslator.load("qt_" + QLocale::system().name(), QLibraryInfo::location(QLibraryInfo::TranslationsPath));
- openHantekApplication.installTranslator(&qtTranslator);
+ if (qtTranslator.load("qt_" + QLocale::system().name(), QLibraryInfo::location(QLibraryInfo::TranslationsPath)))
+ openHantekApplication.installTranslator(&qtTranslator);
QTranslator openHantekTranslator;
- openHantekTranslator.load("openhantek_" + QLocale::system().name(), QMAKE_TRANSLATIONS_PATH);
- openHantekApplication.installTranslator(&openHantekTranslator);
+ if (openHantekTranslator.load(QLocale(), QLatin1String("openhantek"), QLatin1String("_"), QLatin1String(":/translations")))
+ openHantekApplication.installTranslator(&openHantekTranslator);
+
OpenHantekMainWindow *openHantekMainWindow = new OpenHantekMainWindow();
openHantekMainWindow->show();
diff --git a/openhantek/translations/CMakeLists.txt b/openhantek/translations/CMakeLists.txt
index 1bb5c66..dcb1fdc 100644
--- a/openhantek/translations/CMakeLists.txt
+++ b/openhantek/translations/CMakeLists.txt
@@ -6,8 +6,6 @@ if (NOT FOUND_Qt5LinguistTools)
return()
endif()
-### translation stuff
-
file(GLOB TRANSLATION_FILES ${CMAKE_CURRENT_LIST_DIR}/*.ts)
qt5_create_translation(TRANSLATION_MESSAGES ${SRC} ${TRANSLATION_FILES})
@@ -15,8 +13,10 @@ qt5_add_translation(TRANSLATION_QM ${TRANSLATION_FILES})
add_custom_target(translations_update DEPENDS ${TRANSLATION_MESSAGES})
add_custom_target(translations DEPENDS ${TRANSLATION_QM})
-if(APPLE AND UNIX) ## OSX
- install(FILES ${TRANSLATION_QM} DESTINATION ${PROJECT_NAME}.app/Contents/Resources/translations)
-else()
- install(FILES ${TRANSLATION_QM} DESTINATION translations)
-endif()
\ No newline at end of file
+# We prepare the translations.qrc file and insert all available compiled translation files now.
+set(QRC_ITEMS "")
+foreach(TRANSLATION_FILE ${TRANSLATION_MESSAGES})
+ get_filename_component(FILENAME "${TRANSLATION_FILE}" NAME)
+ set(QRC_ITEMS "${QRC_ITEMS}\n${TRANSLATION_FILE}")
+endforeach()
+configure_file("${CMAKE_CURRENT_LIST_DIR}/translations.qrc" "${CMAKE_BINARY_DIR}/translations.qrc" @ONLY)
diff --git a/openhantek/translations/translations.qrc b/openhantek/translations/translations.qrc
new file mode 100644
index 0000000..2393e70
--- /dev/null
+++ b/openhantek/translations/translations.qrc
@@ -0,0 +1,5 @@
+
+
+ @QRC_ITEMS@
+
+