From: Amos Jeffries Date: Thu, 10 Sep 2009 03:23:40 +0000 (+1200) Subject: Author: Henrik Nordstrom X-Git-Tag: SQUID_3_1_0_14~31 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=2d7a0f291abcf0b63fe9722ae7166c8713ecf053;p=thirdparty%2Fsquid.git Author: Henrik Nordstrom Cleanup automake-foo a bit in errors/ --- diff --git a/errors/Makefile.am b/errors/Makefile.am index a792ae2aeb..1103a57ce6 100644 --- a/errors/Makefile.am +++ b/errors/Makefile.am @@ -11,43 +11,155 @@ DEFAULT_ERROR_DIR = $(errordir) DEFAULT_STYLESHEET = $(sysconfdir)/errorpage.css ## List of automated translations possible: -TRANSLATIONPO=`ls -1 $(top_srcdir)/errors/*.po | grep -o -E "[a-z\-]+\.po" | sed s/.po//` -TRANSLATIONDIR=`ls -1 $(srcdir) $(builddir) | sed -e 's%$(srcdir)/%%' -e 's%$(builddir)/%%' -e 's%.po%%' ` +ERROR_TEMPLATES = \ + templates/ERR_FTP_PUT_MODIFIED \ + templates/ERR_ESI \ + templates/ERR_SECURE_CONNECT_FAIL \ + templates/ERR_ZERO_SIZE_OBJECT \ + templates/ERR_SHUTTING_DOWN \ + templates/ERR_URN_RESOLVE \ + templates/ERR_CONNECT_FAIL \ + templates/ERR_SOCKET_FAILURE \ + templates/ERR_FTP_NOT_FOUND \ + templates/ERR_FTP_UNAVAILABLE \ + templates/ERR_LIFETIME_EXP \ + templates/ERR_READ_ERROR \ + templates/ERR_ONLY_IF_CACHED_MISS \ + templates/ERR_UNSUP_HTTPVERSION \ + templates/ERR_READ_TIMEOUT \ + templates/ERR_ICAP_FAILURE \ + templates/ERR_FTP_LISTING \ + templates/ERR_FTP_FORBIDDEN \ + templates/ERR_ACCESS_DENIED \ + templates/ERR_FORWARDING_DENIED \ + templates/ERR_CANNOT_FORWARD \ + templates/ERR_CACHE_MGR_ACCESS_DENIED \ + templates/ERR_INVALID_REQ \ + templates/ERR_CACHE_ACCESS_DENIED \ + templates/ERR_FTP_PUT_ERROR \ + templates/ERR_FTP_PUT_CREATED \ + templates/ERR_TOO_BIG \ + templates/ERR_UNSUP_REQ \ + templates/ERR_FTP_FAILURE \ + templates/ERR_DNS_FAIL \ + templates/ERR_FTP_DISABLED \ + templates/ERR_NO_RELAY \ + templates/ERR_INVALID_URL \ + templates/ERR_INVALID_RESP \ + templates/ERR_WRITE_ERROR -## TODO: prevent this loop installing everything twice when srcdir == builddir -install-data-local: - $(mkinstalldirs) $(DESTDIR)$(DEFAULT_ERROR_DIR) ; \ - for l in $(TRANSLATIONDIR) ; do \ - echo "Located $$l for install..."; \ - if test -d $(srcdir)/$$l; then \ - $(mkinstalldirs) $(DESTDIR)$(DEFAULT_ERROR_DIR)/$$l && \ - for f in $(srcdir)/$$l/ERR_*; do \ - echo "$(INSTALL_DATA) $$f $(DESTDIR)$(DEFAULT_ERROR_DIR)/$$l"; \ - $(INSTALL_DATA) $$f $(DESTDIR)$(DEFAULT_ERROR_DIR)/$$l; \ - done; \ - fi ; \ - if test -d $(builddir)/$$l; then \ - $(mkinstalldirs) $(DESTDIR)$(DEFAULT_ERROR_DIR)/$$l && \ - for f in $(builddir)/$$l/ERR_*; do \ - echo "$(INSTALL_DATA) $$f $(DESTDIR)$(DEFAULT_ERROR_DIR)/$$l"; \ - $(INSTALL_DATA) $$f $(DESTDIR)$(DEFAULT_ERROR_DIR)/$$l; \ +TRANSLATE_LANGUAGES = \ + ar.lang \ + az.lang \ + bg.lang \ + ca.lang \ + cs.lang \ + da.lang \ + de.lang \ + el.lang \ + en.lang \ + es.lang \ + et.lang \ + fa.lang \ + fi.lang \ + fr.lang \ + he.lang \ + hu.lang \ + hy.lang \ + id.lang \ + it.lang \ + ja.lang \ + ko.lang \ + lt.lang \ + lv.lang \ + ms.lang \ + nl.lang \ + pl.lang \ + pt-br.lang \ + pt.lang \ + ro.lang \ + ru.lang \ + sk.lang \ + sr.lang \ + sv.lang \ + th.lang \ + tr.lang \ + uk.lang \ + uz.lang \ + zh-cn.lang \ + zh-tw.lang + +CLEANFILES = $(TRANSLATE_LANGUAGES) translate-warn +EXTRA_DIST = \ + $(ERROR_TEMPLATES) \ + aliases alias-link.sh alias-upgrade errorpage.css TRANSLATORS COPYRIGHT + +all: all-am + +translate: translate-warn $(TRANSLATE_LANGUAGES) + +translate-warn: + case "$(PO2HTML)" in \ + off) \ + echo "WARNING: Translation is disabled."; \ + ;; \ + ""|no) \ + echo "WARNING: Translation toolkit was not detected."; \ + ;; \ + esac; \ + touch translate-warn + +$(TRANSLATE_LANGUAGES): $(ERROR_TEMPLATES) + +.po.lang: + if test "$(PO2HTML)" != "" && test "$(PO2HTML)" != "no" && test "$(PO2HTML)" != "off" && test -f $(top_srcdir)/errors/en.po; then \ + lang=`basename $@ .lang`; \ + mkdir -p $(top_builddir)/errors/$$lang; \ + echo -n "Translate '$$lang' ..."; \ + for f in $(ERROR_TEMPLATES); do \ + page=`basename $$f`; \ + $(PO2HTML) --progress=none -i $(top_srcdir)/errors/$$lang.po -t $(top_srcdir)/errors/$$f >$(top_builddir)/errors/$$lang/$$page || exit 1; \ done; \ - fi \ - done; \ - $(INSTALL_DATA) $(srcdir)/TRANSLATORS $(DESTDIR)$(DEFAULT_ERROR_DIR)/TRANSLATORS; \ - $(INSTALL_DATA) $(srcdir)/COPYRIGHT $(DESTDIR)$(DEFAULT_ERROR_DIR)/COPYRIGHT; \ - $(INSTALL_DATA) $(srcdir)/errorpage.css $(DESTDIR)$(DEFAULT_STYLESHEET).default; \ + echo "done."; \ + fi; \ + touch $@ + +install-exec-local: translate if test -f $(DESTDIR)$(DEFAULT_STYLESHEET) ; then \ echo "$@ will not overwrite existing $(DESTDIR)$(DEFAULT_STYLESHEET)" ; \ else \ + $(mkinstalldirs) $(DESTDIR)`dirname $(DEFAULT_STYLESHEET)` ; \ echo "$(INSTALL_DATA) $(srcdir)/errorpage.css $(DESTDIR)$(DEFAULT_STYLESHEET)"; \ $(INSTALL_DATA) $(srcdir)/errorpage.css $(DESTDIR)$(DEFAULT_STYLESHEET); \ - fi ; \ - $(SHELL) $(srcdir)/alias-link.sh "$(LN)" "$(RM)" "$(DESTDIR)$(DEFAULT_ERROR_DIR)" "$(srcdir)/aliases" || exit 1 ; + fi +install-data-local: translate + $(mkinstalldirs) $(DESTDIR)$(DEFAULT_ERROR_DIR) ; \ + for l in $(TRANSLATE_LANGUAGES); do \ + l=`basename $$l .lang`; \ + echo "Located $$l for install..."; \ + if test -d $(srcdir)/$$l || test -d $(builddir)/$$l; then \ + $(mkinstalldirs) $(DESTDIR)$(DEFAULT_ERROR_DIR)/$$l; \ + fi; \ + for f in $(ERROR_TEMPLATES); do \ + page=`basename $$f`; \ + if test -f $(builddir)/$$l/$$f; then \ + echo "$(INSTALL_DATA) $(builddir)/$$l/$$f $(DESTDIR)$(DEFAULT_ERROR_DIR)/$$l"; \ + $(INSTALL_DATA) $(builddir)/$$l/$$f $(DESTDIR)$(DEFAULT_ERROR_DIR)/$$l; \ + elif test -f $(srcdir)/$$l/$$f; then \ + echo "$(INSTALL_DATA) $(srcdir)/$$l/$$f $(DESTDIR)$(DEFAULT_ERROR_DIR)/$$l"; \ + $(INSTALL_DATA) $(srcdir)/$$l/$$f $(DESTDIR)$(DEFAULT_ERROR_DIR)/$$l; \ + fi; \ + done; \ + done; \ + $(INSTALL_DATA) $(srcdir)/TRANSLATORS $(DESTDIR)$(DEFAULT_ERROR_DIR)/TRANSLATORS; \ + $(INSTALL_DATA) $(srcdir)/COPYRIGHT $(DESTDIR)$(DEFAULT_ERROR_DIR)/COPYRIGHT; \ + $(INSTALL_DATA) $(srcdir)/errorpage.css $(DESTDIR)$(DEFAULT_STYLESHEET).default; \ + $(SHELL) $(srcdir)/alias-link.sh "$(LN)" "$(RM)" "$(DESTDIR)$(DEFAULT_ERROR_DIR)" "$(srcdir)/aliases" || exit 1 ; uninstall-local: - for l in $(TRANSLATIONDIR) ; do \ + for l in $(TRANSLATE_LANGUAGES) templates; do \ + l=`basename $$l .lang`; \ echo "Located $$l for uninstall ..."; \ if test -d $(srcdir)/$$l; then \ for f in $(srcdir)/$$l/ERR_*; do \ @@ -99,42 +211,21 @@ addlang: all fi dist-hook: translate - for lang in $(TRANSLATIONPO) templates; do \ + for lang in $(TRANSLATE_LANGUAGES); do \ + lang=`basename $$lang .lang`; \ if test -d $$lang ; then \ - test -d $(distdir)/$$lang \ - || mkdir $(distdir)/$$lang \ - || exit 1; \ + mkdir -p $(distdir)/$$lang; \ cp -p $(top_builddir)/errors/$$lang/ERR_* $(distdir)/$$lang \ || exit 1; \ fi; \ - done; \ - for f in aliases alias-link.sh alias-upgrade errorpage.css TRANSLATORS COPYRIGHT; do \ - cp -p $(srcdir)/$$f $(distdir)/`basename $$f`; \ - done; + done -translate: - @if ! test -f $(top_srcdir)/errors/en.po; then \ - echo "Translation is not currently possible."; \ - exit 0; \ - fi; \ +clean: clean-am if test "$(PO2HTML)" != "" && test "$(PO2HTML)" != "no" && test "$(PO2HTML)" != "off" && test -f $(top_srcdir)/errors/en.po; then \ - for lang in $(TRANSLATIONPO); do \ - test -d $(top_builddir)/errors/$$lang && $(RM) -r $(top_builddir)/errors/$$lang; \ - mkdir $(top_builddir)/errors/$$lang || exit 1; \ - echo -n "Translate '$$lang' ..."; \ - for f in `ls -1 $(top_srcdir)/errors/templates`; do \ - $(PO2HTML) --progress=none -i $(top_srcdir)/errors/$$lang.po -t $(top_srcdir)/errors/templates/$$f >$(top_builddir)/errors/$$lang/$$f || exit 1; \ - done; \ - echo "done."; \ + for lang in $(TRANSLATE_LANGUAGES); do \ + lang=`basename $$lang .lang`; \ + rm -rf $$lang; \ done; \ - else \ - if test "$(PO2HTML)" = "off" ; then \ - echo "WARNING: Translation is disabled."; \ - else \ - echo "WARNING: Translation toolkit was not detected."; \ - fi; \ - echo "A drop-in bundle of pre-translated files is available from"; \ - echo "http://www.squid-cache.org/Versions/langpack/"; \ fi all: translate diff --git a/errors/alias-link.sh b/errors/alias-link.sh index 384a9e1836..70f6b14e90 100755 --- a/errors/alias-link.sh +++ b/errors/alias-link.sh @@ -38,6 +38,6 @@ while read base aliases; do # Remove and replace any pre-existing content/link for alia in ${aliases}; do ${RM} -f -r ${DIR}/${alia} || exit 1 - ${LN} -s ${DIR}/${base} ${DIR}/${alia} || exit 1 + ${LN} -s ${base} ${DIR}/${alia} || exit 1 done done