File: i18n-fix-multiple-languages-desktop-files.patch

package info (click to toggle)
colobot 0.2.2-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 415,532 kB
  • sloc: cpp: 129,246; ansic: 8,872; python: 2,158; sh: 672; awk: 91; xml: 35; makefile: 31
file content (50 lines) | stat: -rw-r--r-- 2,918 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
Description: Fix building with partial translations for some languages
Author: Didier 'OdyX' Raboud
Last-Update: 2024-04-21
Forwarded: https://github.com/colobot/colobot/pull/1654
--- a/desktop/CMakeLists.txt
+++ b/desktop/CMakeLists.txt
@@ -98,6 +98,7 @@ if(PLATFORM_GNU)
                 set(SLASHLOCALE /${PM_LOCALE})
             endif()
             file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}${SLASHLOCALE})
+            # Depending on coverage, colobot.pod (PM_PODFILE) might not exist, bear with its inexistance
             add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}${SLASHLOCALE}/colobot.${COLOBOT_MANPAGE_SECTION}
                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${PM_PODFILE}
                        COMMAND ${POD2MAN} ARGS --section=${COLOBOT_MANPAGE_SECTION}
@@ -105,13 +106,16 @@ if(PLATFORM_GNU)
                                           --release="${COLOBOT_VERSION_FULL}"
                                           ${CMAKE_CURRENT_SOURCE_DIR}/${PM_PODFILE}
                                           ${CMAKE_CURRENT_BINARY_DIR}${SLASHLOCALE}/colobot.${COLOBOT_MANPAGE_SECTION}
-               COMMENT "Create ${SLASHLOCALE}/colobot.${COLOBOT_MANPAGE_SECTION} manpage"
+                                          || rm -f ${CMAKE_CURRENT_BINARY_DIR}${SLASHLOCALE}/colobot.${COLOBOT_MANPAGE_SECTION}
+                        COMMENT "Create ${SLASHLOCALE}/colobot.${COLOBOT_MANPAGE_SECTION} manpage"
                       )
             add_custom_target(man${PM_LOCALE} ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}${SLASHLOCALE}/colobot.${COLOBOT_MANPAGE_SECTION})
 
             install(
                 FILES ${CMAKE_CURRENT_BINARY_DIR}${SLASHLOCALE}/colobot.${COLOBOT_MANPAGE_SECTION}
-                    DESTINATION ${CMAKE_INSTALL_PREFIX}/share/man${SLASHLOCALE}/man${COLOBOT_MANPAGE_SECTION}/ )
+                DESTINATION ${CMAKE_INSTALL_PREFIX}/share/man${SLASHLOCALE}/man${COLOBOT_MANPAGE_SECTION}/
+                OPTIONAL
+            )
 
             add_dependencies(man man${PM_LOCALE})
         endmacro()
@@ -128,11 +132,14 @@ if(PLATFORM_GNU)
         if(PO4A)
             # Translate the manpage to other languages
             file(GLOB LINGUAS_PO RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}/po/ ${CMAKE_CURRENT_SOURCE_DIR}/po/*.po)
-            string(REGEX REPLACE ".po$" "" LINGUAS ${LINGUAS_PO})
+            string(REGEX REPLACE ".po" ";" LINGUAS ${LINGUAS_PO})
 
             set(PO4A_OUTPUTS)
             foreach(LOCALE ${LINGUAS})
-                list(APPEND PO4A_OUTPUTS ${CMAKE_CURRENT_SOURCE_DIR}/lang/${LOCALE}/colobot.pod)
+                list(APPEND PO4A_OUTPUTS
+                        ${CMAKE_CURRENT_SOURCE_DIR}/lang/${LOCALE}/colobot.pod
+                        ${CMAKE_CURRENT_SOURCE_DIR}/lang/${LOCALE}/colobot.ini
+                    )
             endforeach()
             add_custom_command(
                 OUTPUT ${PO4A_OUTPUTS}