1.1 --- a/Makefile.am Thu Jul 16 19:54:45 2020 +0100
1.2 +++ b/Makefile.am Thu Jul 16 23:02:10 2020 +0100
1.3 @@ -7,3 +7,5 @@
1.4 check-valgrind:
1.5 -(cd tests && $(MAKE) $(AM_MAKEFLAGS) check-valgrind)
1.6 @echo 'Results in tests/test-suite-*.log)'
1.7 +
1.8 +EXTRA_DIST=config/rsvg_convert
2.1 --- a/app-manager/Makefile.am Thu Jul 16 19:54:45 2020 +0100
2.2 +++ b/app-manager/Makefile.am Thu Jul 16 23:02:10 2020 +0100
2.3 @@ -34,22 +34,22 @@
2.4 resources.$(OBJEXT): app-manager.ico app-manager.exe.manifest
2.5
2.6 plover-applications%.pnm: plover-applications.svg
2.7 - $(PLOVER_V_SKIP)$(RSVG) -w $* -h $* -f png $< temp.png
2.8 - $(AM_V_GEN)pngtopnm temp.png | pnmquant -quiet 256 > $@
2.9 - $(PLOVER_V_SKIP)$(RM) temp.png
2.10 + $(AM_V_GEN)$(RSVG_CONVERT) -w $* -h $* -f png -o temp.png $< && \
2.11 + pngtopnm temp.png | pnmquant -quiet 256 > $@ && \
2.12 + $(RM) temp.png
2.13
2.14 plover-applications%.pgm: plover-applications.svg
2.15 - $(PLOVER_V_SKIP)$(RSVG) -w $* -h $* -f png $< temp.png
2.16 - $(AM_V_GEN)pngtopnm -alpha temp.png > $@
2.17 - $(PLOVER_V_SKIP)$(RM) temp.png
2.18 + $(AM_V_GEN)$(RSVG_CONVERT) -w $* -h $* -f png -o temp.png $< && \
2.19 + pngtopnm -alpha temp.png > $@ && \
2.20 + $(RM) temp.png
2.21
2.22 24x24/plover-applications.png: plover-applications.svg
2.23 - $(PLOVER_V_SKIP)mkdir -p 24x24
2.24 - $(AM_V_GEN)$(RSVG) -w 24 -h 24 -f png $< $@
2.25 + $(AM_V_GEN)mkdir -p 24x24 && \
2.26 + $(RSVG_CONVERT) -w 24 -h 24 -f png -o $@ $<
2.27
2.28 48x48/plover-applications.png: plover-applications.svg
2.29 - $(PLOVER_V_SKIP)mkdir -p 48x48
2.30 - $(AM_V_GEN)$(RSVG) -w 48 -h 48 -f png $< $@
2.31 + $(AM_V_GEN)mkdir -p 48x48 && \
2.32 + $(RSVG_CONVERT) -w 48 -h 48 -f png -o $@ $<
2.33
2.34 app-manager.ico: plover-applications16.pnm plover-applications16.pgm \
2.35 plover-applications22.pnm plover-applications22.pgm \
3.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
3.2 +++ b/config/rsvg_convert Thu Jul 16 23:02:10 2020 +0100
3.3 @@ -0,0 +1,74 @@
3.4 +#!/bin/bash
3.5 +# A compatibility wrapper for rsvg that makes it act like rsvg-convert
3.6 +usage()
3.7 +{
3.8 + echo "Usage: rsvg [OPTIONS...] file.svg"
3.9 + echo " -d, --dpi-x=<float> pixels per inch"
3.10 + echo " -p, --dpi-y=<float> pixels per inch"
3.11 + echo " -x, --x-zoom=<float> x zoom factor"
3.12 + echo " -y, --y-zoom=<float> y zoom factor"
3.13 + echo " -w, --width=<int> width"
3.14 + echo " -h, --height=<int> height"
3.15 +# echo " -q, --quality=<int> JPEG quality"
3.16 +# echo " -f, --format=[png, jpeg] save format"
3.17 + echo " -f, --format=[png] save format"
3.18 + echo " -o, --output=<file> output filename"
3.19 + echo " -v, --version show version information"
3.20 + echo ""
3.21 + echo "Help options:"
3.22 + echo " -?, --help Show this help message"
3.23 + echo " --usage Display brief usage message"
3.24 +}
3.25 +TEMP=`getopt -s bash -o d:p:x:y:w:h:q:f:o:v \
3.26 + --long dpi-x:,dpi-y:,x-zoom:,y-zoom:,width:,height:,quality:,format:,output:,version \
3.27 + -n 'rsvg' -- "$@"`
3.28 +if [ $? != 0 ]; then
3.29 + usage
3.30 + exit 1
3.31 +fi
3.32 +eval set -- "$TEMP"
3.33 +cmd="rsvg"
3.34 +output="/dev/stdout"
3.35 +while true; do
3.36 + case "$1" in
3.37 + -d|--dpi-x|-p|--dpi-y|-x|--x-zoom|-y|--y-zoom|-w|--width|-h|--height)
3.38 + cmd="$cmd $1 $2"
3.39 + shift 2
3.40 + ;;
3.41 + -q|--quality)
3.42 + echo "rsvg-convert wrapper: jpeg format not supported"
3.43 + exit 1
3.44 + ;;
3.45 + -f|--format)
3.46 + if [ "$2" = "png" -o -z "$2" ]; then
3.47 + cmd="$cmd $1 png"
3.48 + else
3.49 + echo "rsvg-convert wrapper: $2 format not supported"
3.50 + exit 1
3.51 + fi
3.52 + shift 2
3.53 + ;;
3.54 + -o|--output)
3.55 + output="$2"
3.56 + shift 2
3.57 + ;;
3.58 + -v|--version)
3.59 + cmd="$cmd $1"
3.60 + shift
3.61 + ;;
3.62 + --)
3.63 + shift
3.64 + break
3.65 + ;;
3.66 + *)
3.67 + echo "Internal error!" >&2
3.68 + exit 1
3.69 + ;;
3.70 + esac
3.71 +done
3.72 +if [ "$#" -ne 1 ]; then
3.73 + usage
3.74 + exit 1
3.75 +fi
3.76 +input="$1"
3.77 +exec $cmd "$input" "$output"
4.1 --- a/configure.ac Thu Jul 16 19:54:45 2020 +0100
4.2 +++ b/configure.ac Thu Jul 16 23:02:10 2020 +0100
4.3 @@ -89,9 +89,12 @@
4.4 PKG_PROG_PKG_CONFIG
4.5 AC_CHECK_TOOL([WINDRES],[windres],[no])
4.6 AM_CONDITIONAL([HAVE_WINDRES],[test x$WINDRES != xno])
4.7 -AC_CHECK_PROGS([RSVG],[rsvg rsvg-convert],[no])
4.8 -if test "$RSVG" = no; then
4.9 - AC_MSG_ERROR([no rsvg program found to convert SVG files to bitmaps])
4.10 +AC_CHECK_PROGS([RSVG_CONVERT],[rsvg rsvg-convert],[no])
4.11 +if test "$RSVG_CONVERT" = no; then
4.12 + AC_MSG_ERROR([no program found to convert SVG files to bitmaps])
4.13 +fi
4.14 +if test "$RSVG_CONVERT" = rsvg; then
4.15 + RSVG_CONVERT="sh \$(top_srcdir)/config/rsvg_convert"
4.16 fi
4.17 AX_VALGRIND_CHECK
4.18 AS_IF([test "$enable_valgrind" != "no"],[[
5.1 --- a/plover-open/Makefile.am Thu Jul 16 19:54:45 2020 +0100
5.2 +++ b/plover-open/Makefile.am Thu Jul 16 23:02:10 2020 +0100
5.3 @@ -31,22 +31,22 @@
5.4 pngtopnm $< | pnmquant 256 > $@
5.5
5.6 mimetypes-application-x-rpm%.pnm: mimetypes-application-x-rpm.svg
5.7 - $(PLOVER_V_SKIP)rsvg -w $* -h $* -f png $< temp.png
5.8 - $(AM_V_GEN)pngtopnm temp.png | pnmquant -quiet 256 > $@
5.9 - $(PLOVER_V_SKIP)$(RM) temp.png
5.10 + $(AM_V_GEN)$(RSVG_CONVERT) -w $* -h $* -f png -o temp.png $< && \
5.11 + pngtopnm temp.png | pnmquant -quiet 256 > $@ && \
5.12 + $(RM) temp.png
5.13
5.14 mimetypes-application-x-rpm%.pgm: mimetypes-application-x-rpm.svg
5.15 - $(PLOVER_V_SKIP)rsvg -w $* -h $* -f png $< temp.png
5.16 - $(AM_V_GEN)pngtopnm -alpha temp.png > $@
5.17 - $(PLOVER_V_SKIP)$(RM) temp.png
5.18 + $(AM_V_GEN)$(RSVG_CONVERT) -w $* -h $* -f png -o temp.png $< && \
5.19 + pngtopnm -alpha temp.png > $@ && \
5.20 + $(RM) temp.png
5.21
5.22 24x24/application-x-redhat-package-manager.png: mimetypes-application-x-rpm.svg
5.23 - $(PLOVER_V_SKIP)mkdir -p 24x24
5.24 - $(AM_V_GEN)rsvg -w 24 -h 24 -f png $< $@
5.25 + $(AM_V_GEN)mkdir -p 24x24 && \
5.26 + $(RSVG_CONVERT) -w 24 -h 24 -f png -o $@ $<
5.27
5.28 48x48/application-x-redhat-package-manager.png: mimetypes-application-x-rpm.svg
5.29 - $(PLOVER_V_SKIP)mkdir -p 48x48
5.30 - $(AM_V_GEN)rsvg -w 48 -h 48 -f png $< $@
5.31 + $(AM_V_GEN)mkdir -p 48x48 && \
5.32 + $(RSVG_CONVERT) -w 48 -h 48 -f png -o $@ $<
5.33
5.34 plover-open.ico: mimetypes-application-x-rpm16.pnm \
5.35 mimetypes-application-x-rpm16.pgm \