Am Montag, 3. Februar 2014 um 22:32:46, schrieb Kornel Benko <kor...@lyx.org>
> Am Montag, 3. Februar 2014 um 22:26:49, schrieb Vincent van Ravesteijn 
> <v...@lyx.org>
> > Kornel Benko schreef op 3-2-2014 22:24:
...
> > >
> > > > How do you trigger this ? In other words, what exactly do you do to
> > >
> > > > reconfigure ?
> > >
> > > >
> > >
> > > > I can't reproduce this (although I have seen this once in the very
> > >
> > > > beginning).
> > >
> > > Reconfiguration means
> > >
> > > # cd build-dir
> > >
> > > # cmake source-dir ......
> > >
> > > This removed all gmo files (in source!) here.
> > >
> > > Kornel
> > >
> > It doesn't here (Ubuntu).
> > 
> > Have you tried deleting the build-dir completely, and reconfigure from 
> > there ?
> 
> Probably depends on cmake version. (Ubuntu 12.10 here)
>       #cmake --version
>       cmake version 2.8.12.20140130-g078e9
> 
>       CMake suite maintained by Kitware, Inc. (kitware.com).
> 
> > Vincent

Last (hopefully) two remarks:
1.) If a user does not have git-program, then he is unlikely supposed
        to commit gmo-file. Therefore
                ADD_CUSTOM_TARGET(update-gmo DEPENDS ${LYX_UPDATED_GMO_FILES})
        belongs into if(LYX_GITVERSION)
2.) Same is valid for update-po target

I propose following change:

        Kornel
diff --git a/po/CMakeLists.txt b/po/CMakeLists.txt
index a8e60a6..a587c82 100755
--- a/po/CMakeLists.txt
+++ b/po/CMakeLists.txt
@@ -166,61 +166,57 @@ foreach(_pofile ${LYX_BASE_PO_FILES})
 endforeach(_pofile)
 
 FIND_PROGRAM(LYX_GITVERSION git)
-set(LYX_UPDATED_GMO_FILES)
-foreach(_gmo_base ${INSTALLED_LANGUAGES})
-  set(_gmo ${_gmo_base}.gmo)
-  list(APPEND LYX_UPDATED_GMO_FILES "${LYX_DEST_PO}/${_gmo}")
-  if(LYX_GITVERSION)
+if(LYX_GITVERSION)
+  set(LYX_UPDATED_GMO_FILES)
+  foreach(_gmo_base ${INSTALLED_LANGUAGES})
+    set(_gmo ${_gmo_base}.gmo)
+    list(APPEND LYX_UPDATED_GMO_FILES "${LYX_DEST_PO}/${_gmo}")
+    list(APPEND LYX_UPDATED_GMO_FILES "${CMAKE_CURRENT_BINARY_DIR}/${_gmo}.tobeupdated")
     add_custom_command(
-      OUTPUT "${LYX_DEST_PO}/${_gmo}"
+      OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/${_gmo}.tobeupdated"
 	  COMMAND "${LYX_GITVERSION}" "status" "--porcelain" "${_gmo_base}.po" ">" "${CMAKE_CURRENT_BINARY_DIR}/${_gmo}.tobeupdated"
 	  COMMAND ${LYX_PYTHON_EXECUTABLE} "${TOP_CMAKE_PATH}/po/update-gmo.py" 
 		"${CMAKE_CURRENT_BINARY_DIR}/${_gmo}.tobeupdated"
 		"${CMAKE_CURRENT_BINARY_DIR}/${_gmo}"
 		"${LYX_DEST_PO}/${_gmo}"
 	  WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}"
-      DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/${_gmo}"
+      DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/${_gmo}" "${LYX_DEST_PO}/${_gmo_base}.po"
       )
-  else()
-    add_custom_command(
-      OUTPUT "${LYX_DEST_PO}/${_gmo}"
-      COMMAND ${CMAKE_COMMAND} -E copy_if_different "${CMAKE_CURRENT_BINARY_DIR}/${_gmo}" "${LYX_DEST_PO}/${_gmo}"
-      DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/${_gmo}"
-    )
-  endif()
-endforeach()
+  endforeach()
 
-set(LYX_UPDATED_PO_FILES)
-foreach(_pofile ${LYX_BASE_PO_FILES})
-  if(WIN32)
-    add_custom_command(
-      OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${_pofile}.copied
-      COMMAND ${LYX_PYTHON_EXECUTABLE}
-        ARGS   "${TOP_CMAKE_PATH}/po/unix2dos.py" "${CMAKE_CURRENT_BINARY_DIR}/${_pofile}"
-      COMMAND ${CMAKE_COMMAND} -E copy_if_different ${CMAKE_CURRENT_BINARY_DIR}/${_pofile} ${LYX_DEST_PO}/${_pofile}
-      COMMAND ${CMAKE_COMMAND} -E touch ${_pofile}.copied
-      DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${_pofile}
-      )
-  else()
-    add_custom_command(
-      OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${_pofile}.copied
-      COMMAND ${CMAKE_COMMAND} -E copy_if_different ${CMAKE_CURRENT_BINARY_DIR}/${_pofile} ${LYX_DEST_PO}/${_pofile}
-      COMMAND ${CMAKE_COMMAND} -E touch ${_pofile}.copied
-      DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${_pofile}
-      )
-  endif()
-  list(APPEND LYX_UPDATED_PO_FILES ${CMAKE_CURRENT_BINARY_DIR}/${_pofile}.copied)
-endforeach(_pofile)
+  set(LYX_UPDATED_PO_FILES)
+  foreach(_pofile ${LYX_BASE_PO_FILES})
+    if(WIN32)
+      add_custom_command(
+        OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${_pofile}.copied
+        COMMAND ${LYX_PYTHON_EXECUTABLE}
+          ARGS   "${TOP_CMAKE_PATH}/po/unix2dos.py" "${CMAKE_CURRENT_BINARY_DIR}/${_pofile}"
+        COMMAND ${CMAKE_COMMAND} -E copy_if_different ${CMAKE_CURRENT_BINARY_DIR}/${_pofile} ${LYX_DEST_PO}/${_pofile}
+        COMMAND ${CMAKE_COMMAND} -E touch ${_pofile}.copied
+        DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${_pofile}
+        )
+    else()
+      add_custom_command(
+        OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${_pofile}.copied
+        COMMAND ${CMAKE_COMMAND} -E copy_if_different ${CMAKE_CURRENT_BINARY_DIR}/${_pofile} ${LYX_DEST_PO}/${_pofile}
+        COMMAND ${CMAKE_COMMAND} -E touch ${_pofile}.copied
+        DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${_pofile}
+        )
+    endif()
+    list(APPEND LYX_UPDATED_PO_FILES ${CMAKE_CURRENT_BINARY_DIR}/${_pofile}.copied)
+  endforeach(_pofile)
+
+  # Create a new target to remerge po files
+  # ALL omitted here, to prevent from automatic creation
+  ADD_CUSTOM_TARGET(update-gmo DEPENDS ${LYX_UPDATED_GMO_FILES})
+  ADD_CUSTOM_TARGET(update-po DEPENDS ${LYX_UPDATED_PO_FILES} ${LYX_UPDATED_GMO_FILES})
+  set_target_properties(update-po update-gmo PROPERTIES FOLDER "i18n")
+  add_dependencies(update-po translations)
+
+endif(LYX_GITVERSION)
 
 if(LYX_CPACK OR LYX_INSTALL)
   set(_addALLOption ALL)
 endif()
 GETTEXT_CREATE_TRANSLATIONS(${CMAKE_CURRENT_BINARY_DIR}/${_lyxname}.pot ${_addALLOption} ${LYX_PO_FILES})
 
-# Create a new target to remerge po files
-# ALL omitted here, to prevent from automatic creation
-ADD_CUSTOM_TARGET(update-gmo DEPENDS ${LYX_UPDATED_GMO_FILES})
-ADD_CUSTOM_TARGET(update-po DEPENDS ${LYX_UPDATED_PO_FILES} ${LYX_UPDATED_GMO_FILES})
-set_target_properties(update-po update-gmo PROPERTIES FOLDER "i18n")
-add_dependencies(update-po translations)
-

Attachment: signature.asc
Description: This is a digitally signed message part.

Reply via email to