X-Git-Url: http://git.draconx.ca/gitweb/dxcommon.git/blobdiff_plain/7e65772a8de842e9bea15144bd1b8bc48b9240a3..ac1292661f52ce20168bb942ad207f5b935669ef:/m4/linguas.m4 diff --git a/m4/linguas.m4 b/m4/linguas.m4 new file mode 100644 index 0000000..2ae8a9d --- /dev/null +++ b/m4/linguas.m4 @@ -0,0 +1,53 @@ +dnl Copyright © 2011 Nick Bowler +dnl +dnl Computes the set of .po and .mo files based on the LINGUAS environment +dnl variable. The variable POFILES is set to the complete list of .po files, +dnl according to the LINGUAS file in the po directory. The variable MOFILES +dnl is set to the list of .mo files that the user has requested be installed. +dnl Both POFILES and MOFILES are AC_SUBSTed. +dnl +dnl License WTFPL2: Do What The Fuck You Want To Public License, version 2. +dnl This is free software: you are free to do what the fuck you want to. +dnl There is NO WARRANTY, to the extent permitted by law. + +AC_DEFUN([DX_LINGUAS], [dnl +AC_REQUIRE([AM_GNU_GETTEXT]) + +POFILES= +MOFILES= + +if test -f "$srcdir/po/LINGUAS"; then + ALL_LINGUAS=`sed 's/#.*$//' "$srcdir/po/LINGUAS"` + + : ${LINGUAS=all} + if test x"$LINGUAS" != x"all"; then + # Replicate la_CC-style codes as la. + LINGUAS=`printf '%s\n' "$LINGUAS" \ + | [sed 's/\([^_[:space:]]*\)_[^[:space:]]*/& \1/g']` + + printf '%s\n' $ALL_LINGUAS | sort > conftest.LINGUAS + LINGUAS=`printf '%s\n' $LINGUAS | sort \ + | join - conftest.LINGUAS` + else + LINGUAS=$ALL_LINGUAS + fi + + # Note: $srcdir is not used here because these variables are for make. + set x $ALL_LINGUAS; shift + case ${#} in + 0) ;; + *) POFILES=`printf "po/%s.po\n" "${@}"` ;; + esac + + if test x"$USE_NLS" = x"yes"; then + set x $LINGUAS; shift + case ${#} in + 0) ;; + *) MOFILES=`printf "po/%s.mo\n" "${@}"` ;; + esac + fi +fi + +AC_SUBST([POFILES]) +AC_SUBST([MOFILES]) +])