po/Makefile: Avoid race over LINGUAS file The creation of the LINGUAS file is duplicated for each desktop file which can lead the commands to race against each other. One target might remove it before another has been able to use it. Rework the makefile to avoid this as the expense of leaving the file on disk. Signed-off-by: Richard Purdie richard.purdie@linuxfoundation.org Upstream-Status: Submitted [https://github.com/vim/vim/pull/10776] Index: git/src/po/Makefile =================================================================== --- git.orig/src/po/Makefile +++ git/src/po/Makefile @@ -207,17 +207,16 @@ $(PACKAGE).pot: $(PO_INPUTLIST) $(PO_VIM # Delete the temporary files rm *.js -vim.desktop: vim.desktop.in $(POFILES) +LINGUAS: echo $(LANGUAGES) | tr " " "\n" |sed -e '/\./d' | sort > LINGUAS + +vim.desktop: vim.desktop.in $(POFILES) LINGUAS $(MSGFMT) --desktop -d . --template vim.desktop.in -o tmp_vim.desktop - rm -f LINGUAS if command -v desktop-file-validate; then desktop-file-validate tmp_vim.desktop; fi mv tmp_vim.desktop vim.desktop -gvim.desktop: gvim.desktop.in $(POFILES) - echo $(LANGUAGES) | tr " " "\n" |sed -e '/\./d' | sort > LINGUAS +gvim.desktop: gvim.desktop.in $(POFILES) LINGUAS $(MSGFMT) --desktop -d . --template gvim.desktop.in -o tmp_gvim.desktop - rm -f LINGUAS if command -v desktop-file-validate; then desktop-file-validate tmp_gvim.desktop; fi mv tmp_gvim.desktop gvim.desktop