Alexandre Julliard : configure: Add rules for rebuilding icons in maintainer mode.

Alexandre Julliard julliard at winehq.org
Fri Mar 21 07:46:47 CDT 2008


Module: wine
Branch: master
Commit: dc4a475fa048652f9bc334a3b89dd56f40c9a76b
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=dc4a475fa048652f9bc334a3b89dd56f40c9a76b

Author: Alexandre Julliard <julliard at winehq.org>
Date:   Thu Mar 20 16:09:18 2008 +0100

configure: Add rules for rebuilding icons in maintainer mode.

---

 Make.rules.in |   11 ++++++-
 configure     |   98 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
 configure.ac  |    8 +++++
 3 files changed, 115 insertions(+), 2 deletions(-)

diff --git a/Make.rules.in b/Make.rules.in
index b224ef1..78105d3 100644
--- a/Make.rules.in
+++ b/Make.rules.in
@@ -53,6 +53,8 @@ MV        = mv
 LINT      = @LINT@
 LINTFLAGS = @LINTFLAGS@
 FONTFORGE = @FONTFORGE@
+RSVG      = @RSVG@
+ICOTOOL   = @ICOTOOL@
 INCLUDES     = -I$(SRCDIR) -I. -I$(TOPSRCDIR)/include -I$(TOPOBJDIR)/include $(EXTRAINCL)
 EXTRACFLAGS  = @EXTRACFLAGS@
 ALLCFLAGS    = $(INCLUDES) $(DEFS) $(DLLFLAGS) $(EXTRACFLAGS) $(CPPFLAGS) $(CFLAGS) $(MODCFLAGS)
@@ -125,7 +127,7 @@ LINTS  = $(C_SRCS:.c=.ln)
 
 # Implicit rules
 
-.SUFFIXES: .mc .rc .mc.rc .res .res.o .spec .spec.o .idl .tlb .h .y .l .tab.c .tab.h .yy.c .ok .sfd .ttf .man.in .man _c.c _i.c _p.c _s.c
+.SUFFIXES: .mc .rc .mc.rc .res .res.o .spec .spec.o .idl .tlb .h .y .l .tab.c .tab.h .yy.c .ok .sfd .ttf .man.in .man _c.c _i.c _p.c _s.c @MAINTAINER_MODE@ .svg .ico
 
 .c.o:
 	$(CC) -c $(ALLCFLAGS) -o $@ $<
@@ -184,6 +186,13 @@ LINTS  = $(C_SRCS:.c=.ln)
 .man.in.man:
 	LC_ALL=C sed -e 's, at bindir\@,$(bindir),g' -e 's, at dlldir\@,$(dlldir),g' -e 's, at PACKAGE_STRING\@, at PACKAGE_STRING@,g' $< >$@ || ($(RM) $@ && false)
 
+.svg.ico:
+	$(RSVG) -w 16 -h 16 -f png $< $*-16.png
+	$(RSVG) -w 32 -h 32 -f png $< $*-32.png
+	$(RSVG) -w 48 -h 48 -f png $< $*-48.png
+	$(ICOTOOL) -c -o $@ $*-16.png $*-32.png $*-48.png
+	$(RM) $*-16.png $*-32.png $*-48.png
+
 # 'all' target first in case the enclosing Makefile didn't define any target
 
 all:
diff --git a/configure b/configure
index 8836c99..37e1061 100755
--- a/configure
+++ b/configure
@@ -704,6 +704,8 @@ LINT
 LINTFLAGS
 FONTFORGE
 PKG_CONFIG
+RSVG
+ICOTOOL
 PRELINK
 LIBPTHREAD
 XLIB
@@ -6352,6 +6354,98 @@ fi
 done
 test -n "$PKG_CONFIG" || PKG_CONFIG="false"
 
+for ac_prog in rsvg
+do
+  # Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+{ echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
+if test "${ac_cv_prog_RSVG+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$RSVG"; then
+  ac_cv_prog_RSVG="$RSVG" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+    ac_cv_prog_RSVG="$ac_prog"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+RSVG=$ac_cv_prog_RSVG
+if test -n "$RSVG"; then
+  { echo "$as_me:$LINENO: result: $RSVG" >&5
+echo "${ECHO_T}$RSVG" >&6; }
+else
+  { echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6; }
+fi
+
+
+  test -n "$RSVG" && break
+done
+test -n "$RSVG" || RSVG="false"
+
+for ac_prog in icotool
+do
+  # Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+{ echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
+if test "${ac_cv_prog_ICOTOOL+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ICOTOOL"; then
+  ac_cv_prog_ICOTOOL="$ICOTOOL" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+    ac_cv_prog_ICOTOOL="$ac_prog"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+ICOTOOL=$ac_cv_prog_ICOTOOL
+if test -n "$ICOTOOL"; then
+  { echo "$as_me:$LINENO: result: $ICOTOOL" >&5
+echo "${ECHO_T}$ICOTOOL" >&6; }
+else
+  { echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6; }
+fi
+
+
+  test -n "$ICOTOOL" && break
+done
+test -n "$ICOTOOL" || ICOTOOL="false"
+
+
+if test "${enable_maintainer_mode+set}" = set
+then
+  if test "$RSVG" = "false"; then wine_warnings="$wine_warnings|rsvg is missing, icons can't be rebuilt."; fi
+  if test "$ICOTOOL" = "false"; then wine_warnings="$wine_warnings|icotool is missing, icons can't be rebuilt."; fi
+fi
 
 case $host_cpu in
   *i[3456789]86*)
@@ -23180,6 +23274,8 @@ LINT!$LINT$ac_delim
 LINTFLAGS!$LINTFLAGS$ac_delim
 FONTFORGE!$FONTFORGE$ac_delim
 PKG_CONFIG!$PKG_CONFIG$ac_delim
+RSVG!$RSVG$ac_delim
+ICOTOOL!$ICOTOOL$ac_delim
 PRELINK!$PRELINK$ac_delim
 LIBPTHREAD!$LIBPTHREAD$ac_delim
 XLIB!$XLIB$ac_delim
@@ -23249,7 +23345,7 @@ LIBOBJS!$LIBOBJS$ac_delim
 LTLIBOBJS!$LTLIBOBJS$ac_delim
 _ACEOF
 
-  if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 74; then
+  if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 76; then
     break
   elif $ac_last_try; then
     { { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5
diff --git a/configure.ac b/configure.ac
index daa7e78..abf8374 100644
--- a/configure.ac
+++ b/configure.ac
@@ -188,6 +188,14 @@ AC_SUBST(LINTFLAGS)
 dnl Check for various programs
 AC_CHECK_PROGS(FONTFORGE, fontforge, false)
 AC_CHECK_PROGS(PKG_CONFIG, pkg-config, false)
+AC_CHECK_PROGS(RSVG, rsvg, false)
+AC_CHECK_PROGS(ICOTOOL, icotool, false)
+
+if test "${enable_maintainer_mode+set}" = set
+then
+  if test "$RSVG" = "false"; then WINE_WARNING([rsvg is missing, icons can't be rebuilt.]); fi
+  if test "$ICOTOOL" = "false"; then WINE_WARNING([icotool is missing, icons can't be rebuilt.]); fi
+fi
 
 case $host_cpu in
   *i[[3456789]]86*)




More information about the wine-cvs mailing list