diff --git a/Makefile b/Makefile index 2f17cfc69..48cb90043 100644 --- a/Makefile +++ b/Makefile @@ -881,6 +881,7 @@ help: @$(ECHO) " qt_sdk_install - Install the QT development tools" @$(ECHO) " nsis_install - Install the NSIS Unicode (Windows only)" @$(ECHO) " sdl_install - Install the SDL library (Windows only)" + @$(ECHO) " mesawin_install - Install the OpenGL32 DLL (Windows only)" @$(ECHO) " openssl_install - Install the OpenSSL libraries (Windows only)" @$(ECHO) " uncrustify_install - Install the Uncrustify source code beautifier" @$(ECHO) " doxygen_install - Install the Doxygen documentation generator" diff --git a/ground/openpilotgcs/copydata.pro b/ground/openpilotgcs/copydata.pro index a60b7b8a6..a3d35f540 100644 --- a/ground/openpilotgcs/copydata.pro +++ b/ground/openpilotgcs/copydata.pro @@ -45,7 +45,7 @@ GCS_LIBRARY_PATH imageformats \ platforms \ mediaservice \ - sqldrivers + sqldrivers for(dir, QT_PLUGIN_DIRS) { data_copy.commands += -@$(MKDIR) $$targetPath(\"$$GCS_QT_PLUGINS_PATH/$$dir\") $$addNewline() } @@ -158,7 +158,9 @@ GCS_LIBRARY_PATH imageformats \ platforms \ mediaservice \ - sqldrivers + sqldrivers \ + opengl32_32 \ + opengl32_64 for(dir, QT_PLUGIN_DIRS) { data_copy.commands += -@$(MKDIR) $$targetPath(\"$$GCS_APP_PATH/$$dir\") $$addNewline() } @@ -235,6 +237,14 @@ GCS_LIBRARY_PATH data_copy.commands += $(COPY_FILE) $$targetPath(\"$$(OPENSSL_DIR)/$$dll\") $$targetPath(\"$$GCS_APP_PATH/$$dll\") $$addNewline() } + # copy OpenGL DLLs + OPENGL_DLLS = \ + opengl32_32/opengl32.dll \ + opengl32_64/opengl32.dll + for(dll, OPENGL_DLLS) { + data_copy.commands += $(COPY_FILE) $$targetPath(\"$$(MESAWIN_DIR)/$$dll\") $$targetPath(\"$$GCS_APP_PATH/$$dll\") $$addNewline() + } + data_copy.target = FORCE QMAKE_EXTRA_TARGETS += data_copy } diff --git a/make/tools.mk b/make/tools.mk index 5771abf28..98db175df 100644 --- a/make/tools.mk +++ b/make/tools.mk @@ -14,6 +14,7 @@ # nsis_install (Windows only) # sdl_install (Windows only) # openssl_install (Windows only) +# mesawin_install (Windows only) # uncrustify_install # doxygen_install # gtest_install @@ -89,6 +90,7 @@ else ifeq ($(UNAME), Windows) OPENSSL_URL := http://wiki.openpilot.org/download/attachments/18612236/openssl-1.0.1e-win32.tar.bz2 UNCRUSTIFY_URL := http://wiki.openpilot.org/download/attachments/18612236/uncrustify-0.60-windows.tar.bz2 DOXYGEN_URL := http://wiki.openpilot.org/download/attachments/18612236/doxygen-1.8.3.1-windows.tar.bz2 + MESAWIN_URL := http://192.168.1.3/test/mesawin.tar.gz endif GTEST_URL := http://wiki.openpilot.org/download/attachments/18612236/gtest-1.6.0.zip @@ -104,6 +106,7 @@ OPENSSL_DIR := $(TOOLS_DIR)/openssl-1.0.1e-win32 UNCRUSTIFY_DIR := $(TOOLS_DIR)/uncrustify-0.60 DOXYGEN_DIR := $(TOOLS_DIR)/doxygen-1.8.3.1 GTEST_DIR := $(TOOLS_DIR)/gtest-1.6.0 +MESAWIN_DIR := $(TOOLS_DIR)/mesawin QT_SDK_PREFIX := $(QT_SDK_DIR) @@ -115,7 +118,7 @@ QT_SDK_PREFIX := $(QT_SDK_DIR) BUILD_SDK_TARGETS := arm_sdk qt_sdk ifeq ($(UNAME), Windows) - BUILD_SDK_TARGETS += sdl nsis openssl + BUILD_SDK_TARGETS += sdl nsis mesawin openssl endif ALL_SDK_TARGETS := $(BUILD_SDK_TARGETS) gtest uncrustify doxygen @@ -651,6 +654,29 @@ sdl_version: endif +################################## +# +# Mesa OpenGL DLL (Windows only) +# +################################## + +ifeq ($(UNAME), Windows) + +$(eval $(call TOOL_INSTALL_TEMPLATE,mesawin,$(MESAWIN_DIR),$(MESAWIN_URL),,$(notdir $(MESAWIN_URL)))) + +ifeq ($(shell [ -d "$(MESAWIN_DIR)" ] && $(ECHO) "exists"), exists) + export MESAWIN_DIR := $(MESAWIN_DIR) +else + # not installed, hope it's in the path... + #$(info $(EMPTY) WARNING $(call toprel, $(MESA_WIN_DIR)) not found (make mesawin_install), using system PATH) +endif + +.PHONY: mesawin_version +mesawin_version: + -$(V1) $(ECHO) "MesaOpenGL vXX" + +endif + ############################## # # OpenSSL (Windows only) diff --git a/package/winx86/openpilotgcs.nsi b/package/winx86/openpilotgcs.nsi index a101631e0..954e06ef8 100644 --- a/package/winx86/openpilotgcs.nsi +++ b/package/winx86/openpilotgcs.nsi @@ -253,6 +253,15 @@ Section "CDC driver" InSecInstallDrivers ExecWait '"$PLUGINSDIR\dpinst.exe" /lm /path "$INSTDIR\drivers"' SectionEnd +; Copy Opengl32.dll if needed (disabled by default) +Section /o "Mesa OpenGL driver" InSecInstallOpenGL + SetOutPath "$INSTDIR\bin" + ${If} ${RunningX64} + File /r "${GCS_BUILD_TREE}\bin\opengl32_64\opengl32.dll" + ${Else} + File /r "${GCS_BUILD_TREE}\bin\opengl32_32\opengl32.dll" + ${EndIf} +SectionEnd ; AeroSimRC plugin files Section "AeroSimRC plugin" InSecAeroSimRC SetOutPath "$INSTDIR\misc\AeroSIM-RC" @@ -319,6 +328,7 @@ SectionEnd !insertmacro MUI_DESCRIPTION_TEXT ${InSecUtilities} $(DESC_InSecUtilities) !insertmacro MUI_DESCRIPTION_TEXT ${InSecDrivers} $(DESC_InSecDrivers) !insertmacro MUI_DESCRIPTION_TEXT ${InSecInstallDrivers} $(DESC_InSecInstallDrivers) + !insertmacro MUI_DESCRIPTION_TEXT ${InSecInstallOpenGL} $(DESC_InSecInstallOpenGL) !insertmacro MUI_DESCRIPTION_TEXT ${InSecAeroSimRC} $(DESC_InSecAeroSimRC) !insertmacro MUI_DESCRIPTION_TEXT ${InSecShortcuts} $(DESC_InSecShortcuts) !insertmacro MUI_FUNCTION_DESCRIPTION_END diff --git a/package/winx86/translations/strings_de.nsh b/package/winx86/translations/strings_de.nsh index 71ee8c489..718fe8254 100644 --- a/package/winx86/translations/strings_de.nsh +++ b/package/winx86/translations/strings_de.nsh @@ -34,6 +34,7 @@ LangString DESC_InSecUtilities ${LANG_GERMAN} "OpenPilot Dienstprogramme (Matlab Log Parser)." LangString DESC_InSecDrivers ${LANG_GERMAN} "OpenPilot Hardware Treiberdateien (optionaler OpenPilot CDC Treiber)." LangString DESC_InSecInstallDrivers ${LANG_GERMAN} "OpenPilot CDC Treiber (optional)." + LangString DESC_InSecInstallOpenGL ${LANG_GERMAN} "Optional OpenGL32.dll for old video cards." LangString DESC_InSecAeroSimRC ${LANG_GERMAN} "AeroSimRC plugin files with sample configuration." LangString DESC_InSecShortcuts ${LANG_GERMAN} "Installiere Verknüpfungen unter Startmenü->Anwendungen." diff --git a/package/winx86/translations/strings_en.nsh b/package/winx86/translations/strings_en.nsh index efa553d3e..42d497f29 100644 --- a/package/winx86/translations/strings_en.nsh +++ b/package/winx86/translations/strings_en.nsh @@ -34,6 +34,7 @@ LangString DESC_InSecUtilities ${LANG_ENGLISH} "OpenPilot utilities (Matlab log parser)." LangString DESC_InSecDrivers ${LANG_ENGLISH} "OpenPilot hardware driver files (optional OpenPilot CDC driver)." LangString DESC_InSecInstallDrivers ${LANG_ENGLISH} "Optional OpenPilot CDC driver (virtual USB COM port)." + LangString DESC_InSecInstallOpenGL ${LANG_ENGLISH} "Optional OpenGL32.dll for old video cards." LangString DESC_InSecAeroSimRC ${LANG_ENGLISH} "AeroSimRC plugin files with sample configuration." LangString DESC_InSecShortcuts ${LANG_ENGLISH} "Install application start menu shortcuts." diff --git a/package/winx86/translations/strings_es.nsh b/package/winx86/translations/strings_es.nsh index 6ac59f0d8..bc671b372 100644 --- a/package/winx86/translations/strings_es.nsh +++ b/package/winx86/translations/strings_es.nsh @@ -34,6 +34,7 @@ LangString DESC_InSecUtilities ${LANG_SPANISH} "OpenPilot utilities (Matlab log parser)." LangString DESC_InSecDrivers ${LANG_SPANISH} "OpenPilot hardware driver files (optional OpenPilot CDC driver)." LangString DESC_InSecInstallDrivers ${LANG_SPANISH} "Optional OpenPilot CDC driver (virtual USB COM port)." + LangString DESC_InSecInstallOpenGL ${LANG_SPANISH} "Optional OpenGL32.dll for old video cards." LangString DESC_InSecAeroSimRC ${LANG_SPANISH} "AeroSimRC plugin files with sample configuration." LangString DESC_InSecShortcuts ${LANG_SPANISH} "Instalar accesos directos de la aplicación (menú inicio y escritorio)." diff --git a/package/winx86/translations/strings_fr.nsh b/package/winx86/translations/strings_fr.nsh index c0919405e..5f9a9434c 100644 --- a/package/winx86/translations/strings_fr.nsh +++ b/package/winx86/translations/strings_fr.nsh @@ -34,6 +34,7 @@ LangString DESC_InSecUtilities ${LANG_FRENCH} "OpenPilot utilities (Matlab log parser)." LangString DESC_InSecDrivers ${LANG_FRENCH} "OpenPilot hardware driver files (optional OpenPilot CDC driver)." LangString DESC_InSecInstallDrivers ${LANG_FRENCH} "Optional OpenPilot CDC driver (virtual USB COM port)." + LangString DESC_InSecInstallOpenGL ${LANG_FRENCH} "Optional OpenGL32.dll for old video cards." LangString DESC_InSecAeroSimRC ${LANG_FRENCH} "AeroSimRC plugin files with sample configuration." LangString DESC_InSecShortcuts ${LANG_FRENCH} "Installer les raccourcis dans le menu démarrer." diff --git a/package/winx86/translations/strings_ru.nsh b/package/winx86/translations/strings_ru.nsh index 0aa90b31a..d161a67f3 100644 --- a/package/winx86/translations/strings_ru.nsh +++ b/package/winx86/translations/strings_ru.nsh @@ -34,6 +34,7 @@ LangString DESC_InSecUtilities ${LANG_RUSSIAN} "Утилиты (конвертор логов для Matlab)." LangString DESC_InSecDrivers ${LANG_RUSSIAN} "Файлы драйверов (опциональный драйвер CDC порта)." LangString DESC_InSecInstallDrivers ${LANG_RUSSIAN} "Опциональный OpenPilot CDC драйвер (виртуальный USB COM порт)." + LangString DESC_InSecInstallOpenGL ${LANG_RUSSIAN} "Optional OpenGL32.dll for old video cards." LangString DESC_InSecAeroSimRC ${LANG_RUSSIAN} "Файлы плагина для симулятора AeroSimRC с примером конфигурации." LangString DESC_InSecShortcuts ${LANG_RUSSIAN} "Установка ярлыков для приложения." diff --git a/package/winx86/translations/strings_zh_CN.nsh b/package/winx86/translations/strings_zh_CN.nsh index 50d867223..3b012a917 100644 --- a/package/winx86/translations/strings_zh_CN.nsh +++ b/package/winx86/translations/strings_zh_CN.nsh @@ -34,6 +34,7 @@ LangString DESC_InSecUtilities ${LANG_TRADCHINESE} "OpenPilot utilities (Matlab log parser)." LangString DESC_InSecDrivers ${LANG_TRADCHINESE} "OpenPilot hardware driver files (optional OpenPilot CDC driver)." LangString DESC_InSecInstallDrivers ${LANG_TRADCHINESE} "Optional OpenPilot CDC driver (virtual USB COM port)." + LangString DESC_InSecInstallOpenGL ${LANG_TRADCHINESE} "Optional OpenGL32.dll for old video cards." LangString DESC_InSecAeroSimRC ${LANG_TRADCHINESE} "AeroSimRC plugin files with sample configuration." LangString DESC_InSecShortcuts ${LANG_TRADCHINESE} "安装开始菜单的快捷方式."