intltool-update doesn't call intltool-extract correctly on MS Windows

Bug #406810 reported by Sam Thursfield
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
intltool
Fix Released
High
Данило Шеган

Bug Description

Hello!

A hack exists in intltool-update.in to call intltool-extract explicitly through perl on Windows. It didn't work for me, I got build failures in shared-mime-info:

make[1]: Entering directory '/c/build/src/shared-mime-info/po'
INTLTOOL_EXTRACT=/c/build/bin/intltool-extract srcdir=. /c/build/bin/intltool-update --gettext-package shared-mime-info --pot
The filename, directory name, or volume label sytax is incorrect.
xgettext: error while opening "../freedesktop.org.xml.in.h" for reading: No such file or directory
ERROR: xgettext failed to generate PO template file.
       Please consult error message above if there is any.

The attached patch is sufficient to make intltool-update run successfully.

Sam

Tags: windows

Related branches

Revision history for this message
Sam Thursfield (sam.thursfield) wrote :
Revision history for this message
Данило Шеган (danilo) wrote :

Sam, thanks for the patch. Is the change to check only for existence instead of executability of a file really necessary? If it is, I'd probably make it specific to Windows.

Changed in intltool:
importance: Undecided → High
status: New → Triaged
assignee: nobody → Данило Шеган (danilo)
Changed in intltool:
status: Triaged → In Progress
Revision history for this message
Данило Шеган (danilo) wrote :

Until question is answered above, let's make it incomplete. If someone has opportunity to answer/test for the above question, please update the status back to 'New'.

Changed in intltool:
status: In Progress → Incomplete
assignee: Данило Шеган (danilo) → nobody
Revision history for this message
Sam Thursfield (sam.thursfield) wrote :

sorry, not sure why i never responded to this
the check to test for -e instead of -x is needed, because on Windows perl scripts will never be executable directly. I'm not entirely sure what executability means on win32 (presumably a .exe, .bat or .com extension) but it doesn't work in this case

Making the change Windows-only seems sensible.

Changed in intltool:
assignee: nobody → Данило Шеган (danilo)
status: Incomplete → In Progress
Revision history for this message
Данило Шеган (danilo) wrote :

Btw, it's interesting that system("perl intltool-extract --version >NUL") did not return 0 as expected in that code. Anyway, fixed in lp:intltool r707, so please test and confirm it's all working fine.

Changed in intltool:
status: In Progress → Fix Committed
Changed in intltool:
milestone: none → 0.41.1
Changed in intltool:
status: Fix Committed → Fix Released
Revision history for this message
Sam Thursfield (sam.thursfield) wrote :

sorry for delay in testing. it definitely works!

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.