Generate translations in .desktop file from po files
diff --git a/po/CMakeLists.txt b/po/CMakeLists.txt
index dda813c..ddc43de 100644
--- a/po/CMakeLists.txt
+++ b/po/CMakeLists.txt
@@ -13,6 +13,7 @@
RELATIVE ${PROJECT_SOURCE_DIR}
${PROJECT_SOURCE_DIR}/vncviewer/*.h
${PROJECT_SOURCE_DIR}/vncviewer/*.cxx
+ ${PROJECT_SOURCE_DIR}/vncviewer/*.desktop.in.in
)
add_custom_target(translations_update
diff --git a/po/da.po b/po/da.po
index 2ab3881..1859f44 100644
--- a/po/da.po
+++ b/po/da.po
@@ -656,3 +656,7 @@
#, c-format
msgid "Listening on port %d"
msgstr "Lytter på port %d"
+
+#: vncviewer/vncviewer.desktop.in.in:6
+msgid "Connect to VNC server and display remote desktop"
+msgstr "Opret forbindelse til VNC-server og vis fjern-skrivebord"
diff --git a/po/fr.po b/po/fr.po
index 911406e..dfddbf0 100644
--- a/po/fr.po
+++ b/po/fr.po
@@ -662,3 +662,7 @@
#, c-format
msgid "Listening on port %d"
msgstr "Écoute du port %d"
+
+#: vncviewer/vncviewer.desktop.in.in:6
+msgid "Connect to VNC server and display remote desktop"
+msgstr "Se connecter à un serveur VNC et afficher le bureau distant"
diff --git a/po/tigervnc.pot b/po/tigervnc.pot
index 0643650..70656bc 100644
--- a/po/tigervnc.pot
+++ b/po/tigervnc.pot
@@ -651,3 +651,7 @@
#, c-format
msgid "Listening on port %d"
msgstr ""
+
+#: vncviewer/vncviewer.desktop.in.in:6
+msgid "Connect to VNC server and display remote desktop"
+msgstr ""
diff --git a/vncviewer/CMakeLists.txt b/vncviewer/CMakeLists.txt
index 1833e70..282ed9d 100644
--- a/vncviewer/CMakeLists.txt
+++ b/vncviewer/CMakeLists.txt
@@ -59,7 +59,14 @@
install(TARGETS vncviewer DESTINATION ${BIN_DIR})
if(UNIX)
install(FILES vncviewer.man DESTINATION ${MAN_DIR}/man1 RENAME vncviewer.1)
- configure_file(vncviewer.desktop.in vncviewer.desktop)
+ configure_file(vncviewer.desktop.in.in vncviewer.desktop.in)
+ add_custom_command(OUTPUT vncviewer.desktop
+ COMMAND ${GETTEXT_MSGFMT_EXECUTABLE}
+ --desktop --template vncviewer.desktop.in
+ -d ${CMAKE_SOURCE_DIR}/po -o vncviewer.desktop
+ DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/vncviewer.desktop.in
+ )
+ add_custom_target(desktop ALL DEPENDS vncviewer.desktop)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/vncviewer.desktop DESTINATION ${DATA_DIR}/applications)
foreach(res 16 22 24 32 48)
install(FILES ../media/icons/tigervnc_${res}.png DESTINATION ${DATA_DIR}/icons/hicolor/${res}x${res}/apps RENAME tigervnc.png)
diff --git a/vncviewer/vncviewer.desktop.in b/vncviewer/vncviewer.desktop.in
deleted file mode 100644
index 508e9b7..0000000
--- a/vncviewer/vncviewer.desktop.in
+++ /dev/null
@@ -1,13 +0,0 @@
-[Desktop Entry]
-Name=TigerVNC Viewer
-Name[da]=TigerVNC-fremviser
-Name[fr]=Visionneur TigerVNC
-Comment=Connect to VNC server and display remote desktop
-Comment[da]=Opret forbindelse til VNC-server og vis fjern-skrivebord
-Comment[fr]=Se connecter à un serveur VNC et afficher le bureau distant
-Exec=@BIN_DIR@/vncviewer
-Icon=tigervnc
-Terminal=false
-Type=Application
-StartupWMClass=TigerVNC Viewer: Connection Details
-Categories=Network;RemoteAccess;
diff --git a/vncviewer/vncviewer.desktop.in.in b/vncviewer/vncviewer.desktop.in.in
new file mode 100644
index 0000000..5abe2fc
--- /dev/null
+++ b/vncviewer/vncviewer.desktop.in.in
@@ -0,0 +1,9 @@
+[Desktop Entry]
+Name=TigerVNC Viewer
+Comment=Connect to VNC server and display remote desktop
+Exec=@BIN_DIR@/vncviewer
+Icon=tigervnc
+Terminal=false
+Type=Application
+StartupWMClass=TigerVNC Viewer: Connection Details
+Categories=Network;RemoteAccess;