]> Pileus Git - ~andy/gtk/blobdiff - gtk/Makefile.am
2.9.0
[~andy/gtk] / gtk / Makefile.am
index 7151d703184640f6aa65190eb1b7946533b3002e..dba3259272969f2a5f832a8e9161d220534c5c97 100644 (file)
@@ -667,7 +667,8 @@ gtk_built_sources =                         \
 stamp_files =                                  \
        stamp-gtkmarshalers.h                   \
        stamp-gtkmarshal.h                      \
-       stamp-gtktypebuiltins.h
+       stamp-gtktypebuiltins.h                 \
+       stamp-icons
 
 # non-header sources (headers should be specified in the above variables)
 # that don't serve as direct make target sources, i.e. they don't have
@@ -1057,35 +1058,31 @@ GENERATED_ICONS = \
        stock-icons/24/gtk-media-rewind-rtl.png         \
        stock-icons/24/gtk-save.png
 
+# need to copy the icons so that we can replace the generated ones with
+# symlinks, even in the readonly srcdir case
 stamp-icons: $(STOCK_ICONS)
+       if [ ! -d stock-icons ]; then                                           \
+          cp -R $(srcdir)/stock-icons .;                                       \
+         chmod -R u+w stock-icons;                                             \
+        fi &&                                                                  \
        for i in 16 24; do                                                      \
-          (cd $(srcdir)/stock-icons/$$i                                        \
-          && rm -f gtk-go-back-rtl.png                                         \
-          && $(LN_S) gtk-go-forward-ltr.png gtk-go-back-rtl.png                \
-          && rm -f gtk-go-forward-rtl.png                                      \
-          && $(LN_S) gtk-go-back-ltr.png gtk-go-forward-rtl.png                \
-          && rm -f gtk-goto-first-rtl.png                                      \
-          && $(LN_S) gtk-goto-last-ltr.png gtk-goto-first-rtl.png              \
-          && rm -f gtk-goto-last-rtl.png                                       \
-          && $(LN_S) gtk-goto-first-ltr.png gtk-goto-last-rtl.png              \
-          && rm -f gtk-media-forward-rtl.png                                   \
-          && $(LN_S) gtk-media-rewind-ltr.png gtk-media-forward-rtl.png        \
-          && rm -f gtk-media-next-rtl.png                                      \
-          && $(LN_S) gtk-media-previous-ltr.png gtk-media-next-rtl.png         \
-          && rm -f gtk-media-previous-rtl.png                                  \
-          && $(LN_S) gtk-media-next-ltr.png gtk-media-previous-rtl.png         \
-          && rm -f gtk-media-rewind-rtl.png                                    \
-          && $(LN_S) gtk-media-forward-ltr.png gtk-media-rewind-rtl.png        \
-          && rm -f gtk-save.png                                                \
-          && $(LN_S) gtk-floppy.png gtk-save.png)                              \
+          (cd stock-icons/$$i                                                  \
+          && $(LN_S) -f gtk-go-forward-ltr.png gtk-go-back-rtl.png             \
+          && $(LN_S) -f gtk-go-back-ltr.png gtk-go-forward-rtl.png             \
+          && $(LN_S) -f gtk-goto-last-ltr.png gtk-goto-first-rtl.png           \
+          && $(LN_S) -f gtk-goto-first-ltr.png gtk-goto-last-rtl.png           \
+          && $(LN_S) -f gtk-media-rewind-ltr.png gtk-media-forward-rtl.png     \
+          && $(LN_S) -f gtk-media-previous-ltr.png gtk-media-next-rtl.png      \
+          && $(LN_S) -f gtk-media-next-ltr.png gtk-media-previous-rtl.png      \
+          && $(LN_S) -f gtk-media-forward-ltr.png gtk-media-rewind-rtl.png     \
+          && $(LN_S) -f gtk-floppy.png gtk-save.png)                           \
        done                                                                    \
        && touch stamp-icons
 
-gtkbuiltincache.h: @REBUILD@ gtk-update-icon-cache$(EXEEXT) stamp-icons
+gtkbuiltincache.h: @REBUILD@ stamp-icons
+       $(MAKE) $(AM_MAKEFLAGS) gtk-update-icon-cache
        ./gtk-update-icon-cache --force --ignore-theme-index    \
-          --source builtin_icons $(srcdir)/stock-icons > gtkbuiltincache.h
-
-MAINTAINERCLEANFILES += stamp-icons
+          --source builtin_icons stock-icons > gtkbuiltincache.h
 
 EXTRA_DIST +=                   \
        $(STOCK_ICONS)          \