]> git.lyx.org Git - lyx.git/blobdiff - po/Makefile.in.in
fix bibenvironment handling in layout2layout
[lyx.git] / po / Makefile.in.in
index 142cee86b63e5ad3878091ad00385ab9a6af39b9..b32e83ad3b1c12436ab4017768ac2d23d8ea1593 100644 (file)
@@ -31,6 +31,8 @@ INSTALL_DATA = @INSTALL_DATA@
 MKINSTALLDIRS = @MKINSTALLDIRS@
 mkinstalldirs = $(SHELL) $(MKINSTALLDIRS)
 
+AWK = @AWK@
+
 GMSGFMT = @GMSGFMT@
 MSGFMT = @MSGFMT@
 XGETTEXT = @XGETTEXT@
@@ -101,7 +103,8 @@ stamp-po: $(srcdir)/$(DOMAIN).pot
 
 # This target rebuilds $(DOMAIN).pot; it is an expensive operation.
 # Note that $(DOMAIN).pot is not touched if it doesn't need to be changed.
-$(DOMAIN).pot-update: $(POTFILES) $(srcdir)/POTFILES.in l10n_pots remove-potcdate.sed
+$(DOMAIN).pot-update: $(POTFILES) $(srcdir)/POTFILES.in remove-potcdate.sed
+       $(MAKE) l10n_pots
        $(XGETTEXT) --default-domain=$(DOMAIN) --directory=$(top_srcdir) \
          --add-comments=TRANSLATORS: $(XGETTEXT_OPTIONS) \
          --files-from=$(srcdir)/POTFILES.in \
@@ -365,19 +368,22 @@ ${srcdir}/POTFILES.in: $(POTFILE_IN_DEPS)
        LC_ALL=C ; export LC_ALL ; \
        rm -f $@-t \
        && ( cd $(top_srcdir); \
-            grep -l "_(\".*\")" `find src -regex ".*\\.\\(C\\|c\\|h\\|C\\.in\\)" -print` |\
-            sed -e '/xforms.forms/d' |\
+            grep -l "_(\".*\")" `find src \( -name '*.[Cch]' -o -name '*.C.in' \) -print` |\
+            sed -e '/xforms.forms/d'| grep -v -e "src/support/package.C$$" |\
             sort | uniq ) > $@-t \
        && mv $@-t $@
 
-l10n_pots: $(srcdir)/xforms_l10n.pot $(srcdir)/qt_l10n.pot $(srcdir)/layouts_l10n.pot $(srcdir)/languages_l10n.pot $(srcdir)/ui_l10n.pot
-       cat $(srcdir)/xforms_l10n.pot $(srcdir)/qt_l10n.pot $(srcdir)/layouts_l10n.pot $(srcdir)/languages_l10n.pot $(srcdir)/ui_l10n.pot | \
-       msguniq -o $(PACKAGE).po
+l10n_pots: xforms_l10n.pot qt_l10n.pot layouts_l10n.pot languages_l10n.pot ui_l10n.pot
+       cat $^ | \
+       msguniq -o $(DOMAIN).po && rm -f  $^
 
-$(srcdir)/xforms_l10n.pot: $(top_srcdir)/src/frontends/xforms/forms/*.fd
-       cd ${srcdir} ; \
+xforms_l10n.pot: $(top_srcdir)/src/frontends/xforms/forms/*.fd
        LC_ALL=C ; export LC_ALL ; \
-       awk ' \
+       $(AWK) -v top_srcdir="$(top_srcdir)" ' \
+               function fixupfilename() \
+               {\
+                       return substr(FILENAME, length(top_srcdir "/") + 1);\
+               }\
                BEGIN { \
                        print "#, fuzzy"; \
                        print "msgid \"\""; \
@@ -394,16 +400,19 @@ $(srcdir)/xforms_l10n.pot: $(top_srcdir)/src/frontends/xforms/forms/*.fd
                        if (NF > 1 && skip == 0) { \
                                line=$$0;\
                                sub(/label: /,"",line);\
-                               printf("#: %s:%d\nmsgid \"%s\"\nmsgstr \"\"\n\n", FILENAME, FNR, line);\
+                               printf("#: %s:%d\nmsgid \"%s\"\nmsgstr \"\"\n\n", fixupfilename(), FNR, line);\
                        }\
                        skip=0; \
                }' \
-       ../src/frontends/xforms/forms/*.fd > xforms_l10n.pot
+       ${top_srcdir}/src/frontends/xforms/forms/*.fd > $@
 
-$(srcdir)/qt_l10n.pot: $(top_srcdir)/src/frontends/qt2/ui/*.ui
-       cd ${srcdir} ; \
+qt_l10n.pot: $(top_srcdir)/src/frontends/qt2/ui/*.ui
        LC_ALL=C ; export LC_ALL ; \
-       awk ' \
+       $(AWK) -v top_srcdir="$(top_srcdir)" ' \
+               function fixupfilename() \
+               {\
+                       return substr(FILENAME, length(top_srcdir "/") + 1);\
+               }\
                /<string>/ { \
                        line=$$0; \
                        sub(/.*<string>/, "", line); \
@@ -411,72 +420,104 @@ $(srcdir)/qt_l10n.pot: $(top_srcdir)/src/frontends/qt2/ui/*.ui
                        gsub(/&amp;/, "\\&", line); \
                        gsub(/&lt;/, "<", line); \
                        gsub(/&gt;/, ">", line); \
-                       gsub(/\"/, "\\\"", line); \
-                       if (length(line) > 0) \
+                       gsub(/"/, "\\\"", line); \
+                       if (length(line) > 0) {\
                                printf("#: %s:%d\nmsgid \"%s\"\nmsgstr \"\"\n\n",\
-                                       FILENAME, FNR, line); \
+                                       fixupfilename(), FNR, line); \
+                       } \
                }' \
-       ../src/frontends/qt2/ui/*.ui > qt_l10n.pot
+       ${top_srcdir}/src/frontends/qt2/ui/*.ui > $@
 
-$(srcdir)/layouts_l10n.pot: $(top_srcdir)/lib/layouts/*.layout $(top_srcdir)/lib/layouts/*.inc
-       cd ${srcdir} ; \
+layouts_l10n.pot: $(top_srcdir)/lib/layouts/*.layout $(top_srcdir)/lib/layouts/*.inc
        LC_ALL=C ; export LC_ALL ; \
-       awk ' \
+       $(AWK) -v top_srcdir="$(top_srcdir)" ' \
+               function fixupfilename() \
+               {\
+                       return substr(FILENAME, length(top_srcdir "/") + 1);\
+               }\
                /^Style / { \
                        line=$$0; \
                        sub(/Style /, "", line); \
+                       gsub(/"/, "", line); \
+                       gsub(/_/, " ", line); \
                        printf("#: %s:%d\nmsgid \"%s\"\nmsgstr \"\"\n\n", \
-                               FILENAME, FNR, line); \
+                               fixupfilename(), FNR, line); \
+               } \
+               /LabelString[A-Za-z]*/ { \
+                       line=$$0; \
+                       sub(/[[:space:]]*LabelString[A-Za-z]*[[:space:]]*/, "", line); \
+                       gsub(/"/, "", line); \
+                       if (line != "") \
+                         printf("#: %s:%d\nmsgid \"%s\"\nmsgstr \"\"\n\n", \
+                                fixupfilename(), FNR, line); \
                } \
                /GuiName/ { \
                        line=$$0; \
                        sub(/[[:space:]]*GuiName[[:space:]]*/, "", line); \
+                       gsub(/"/, "", line); \
+                       printf("#: %s:%d\nmsgid \"%s\"\nmsgstr \"\"\n\n", \
+                               fixupfilename(), FNR, line); \
+               } \
+               /ListName/ { \
+                       line=$$0; \
+                       sub(/[[:space:]]*ListName[[:space:]]*/, "", line); \
+                       gsub(/"/, "", line); \
                        printf("#: %s:%d\nmsgid \"%s\"\nmsgstr \"\"\n\n", \
-                               FILENAME, FNR, line); \
+                               fixupfilename(), FNR, line); \
                }' \
-       ../lib/layouts/*.layout ../lib/layouts/*.inc > layouts_l10n.pot
-
-$(srcdir)/languages_l10n.pot: $(top_srcdir)/lib/languages
-       cd ${srcdir} ; \
-       awk ' \
+       ${top_srcdir}/lib/layouts/*.layout ${top_srcdir}/lib/layouts/*.inc \
+       | sed 's/\\/\\\\/g' > $@
+
+languages_l10n.pot: $(top_srcdir)/lib/languages
+       $(AWK) -v top_srcdir="$(top_srcdir)" ' \
+               function fixupfilename() \
+               {\
+                       return substr(FILENAME, length(top_srcdir "/") + 1);\
+               }\
                /^#/ { \
                        next; \
                } \
                { \
                        match($$0,"\"[^\"]*\""); \
                        lang=substr($$0,RSTART,RLENGTH); \
-                       gsub(/\"/, "", lang); \
+                       gsub(/"/, "", lang); \
                        printf("#: %s:%d\nmsgid \"%s\"\nmsgstr \"\"\n\n", \
-                       FILENAME, FNR, lang); \
+                       fixupfilename(), FNR, lang); \
                }' \
-       ../lib/languages > languages_l10n.pot
+       ${top_srcdir}/lib/languages > $@
 
-$(srcdir)/ui_l10n.pot: $(top_srcdir)/lib/ui/*.ui
-       cd ${srcdir} ; \
+ui_l10n.pot: $(top_srcdir)/lib/ui/*.ui
        LC_ALL=C ; export LC_ALL ; \
-       awk ' \
+       $(AWK) -v top_srcdir="$(top_srcdir)" ' \
+               function fixupfilename() \
+               {\
+                       return substr(FILENAME, length(top_srcdir "/") + 1);\
+               }\
                /^[^#]*Submenu/ { \
                        line=$$0; \
                        sub(/[^"]*"/, "", line); \
                        sub(/".*/, "", line); \
                        printf("#: %s:%d\nmsgid \"%s\"\nmsgstr \"\"\n\n", \
-                               FILENAME, FNR, line); \
+                               fixupfilename(), FNR, line); \
                } \
                /^[^#]*Toolbar/ { \
                        line=$$0; \
                        sub(/[^"]*"/, "", line); \
                        sub(/".*/, "", line); \
                        printf("#: %s:%d\nmsgid \"%s\"\nmsgstr \"\"\n\n", \
-                               FILENAME, FNR, line); \
+                               fixupfilename(), FNR, line); \
                } \
                /^[^#]*Item/ { \
                        line=$$0; \
                        sub(/[^"]*"/, "", line); \
                        sub(/".*/, "", line); \
                        printf("#: %s:%d\nmsgid \"%s\"\nmsgstr \"\"\n\n", \
-                               FILENAME, FNR, line); \
+                               fixupfilename(), FNR, line); \
                }' \
-       ../lib/ui/*.ui > ui_l10n.pot
+       ${top_srcdir}/lib/ui/*.ui > $@
+
+i18n.php: $(POFILES)
+       (cd $(srcdir) ; ./postats.sh $(POFILES)) >$@
 
 force: