Makefile 3.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. # This Source Code Form is subject to the terms of the Mozilla Public
  2. # License, v. 2.0. If a copy of the MPL was not distributed with this
  3. # file, You can obtain one at http://mozilla.org/MPL/2.0/.
  4. rsvg_command = rsvg-convert
  5. composite_command = composite
  6. convert_command = convert
  7. xsltproc_command = xsltproc
  8. INSTALL = install
  9. srcdir = ./src
  10. objdir = ./xpi-build
  11. basedir = .
  12. all: addon
  13. $(srcdir)/iceweasel_logo.png: $(srcdir)/iceweasel/iceweasel_logo.svg
  14. $(rsvg_command) -w 256 -o $@ $<
  15. GENERATED = $(srcdir)/iceweasel_logo.png
  16. $(srcdir)/about-wordmark.svg: $(srcdir)/iceweasel/wordmark.xsl $(srcdir)/iceweasel/iceweasel_logo.svg
  17. $(xsltproc_command) -o $@ $^
  18. GENERATED += $(srcdir)/about-wordmark.svg
  19. # Make it reproducible
  20. $(srcdir)/about.png: $(srcdir)/iceweasel_logo.png $(srcdir)/iceweasel/about-base.png
  21. $(composite_command) -compose src-over -gravity center -geometry +0-26 $^ - | \
  22. $(convert_command) - -define png:exclude-chunk=time +set date:create +set date:modify $@
  23. GENERATED += $(srcdir)/about.png
  24. # 2x resolution
  25. $(srcdir)/addon_icon.png: SIZE=96
  26. $(srcdir)/addon_icon64.png: SIZE=128
  27. $(srcdir)/addon_icon.png: $(srcdir)/addon_icon.svg
  28. $(rsvg_command) -w $(SIZE) -o $@ $<
  29. $(srcdir)/addon_icon64.png: $(srcdir)/addon_icon.svg
  30. $(rsvg_command) -w $(SIZE) -o $@ $<
  31. GENERATED += $(srcdir)/addon_icon.png $(srcdir)/addon_icon64.png
  32. $(srcdir)/icon16.png: SIZE=16
  33. $(srcdir)/icon32.png: SIZE=32
  34. $(srcdir)/icon48.png: SIZE=48
  35. $(srcdir)/icon64.png: SIZE=64
  36. $(srcdir)/icon128.png: SIZE=128
  37. $(srcdir)/icon16.png $(srcdir)/icon32.png $(srcdir)/icon48.png $(srcdir)/icon64.png $(srcdir)/icon128.png: $(srcdir)/iceweasel/iceweasel_icon.svg
  38. $(rsvg_command) -w $(SIZE) -h $(SIZE) -o $@ $<
  39. GENERATED += $(srcdir)/icon16.png $(srcdir)/icon32.png $(srcdir)/icon48.png $(srcdir)/icon64.png $(srcdir)/icon128.png
  40. $(srcdir)/about-wordmark.png: $(srcdir)/about-wordmark.svg
  41. $(rsvg_command) -o $@ $<
  42. $(srcdir)/about-logo.png: $(srcdir)/iceweasel/iceweasel_icon.svg
  43. $(rsvg_command) -w 210 -h 210 -o $@ $<
  44. $(srcdir)/about-logo@2x.png: $(srcdir)/iceweasel/iceweasel_icon.svg
  45. $(rsvg_command) -w 420 -h 420 -o $@ $<
  46. GENERATED += $(srcdir)/about-wordmark.png $(srcdir)/about-logo.png $(srcdir)/about-logo@2x.png
  47. addon: $(GENERATED)
  48. mkdir -p $(objdir)/chrome
  49. cp $(srcdir)/xpi/* $(objdir)
  50. cp $(srcdir)/addon_icon.png $(objdir)/icon.png
  51. cp $(srcdir)/addon_icon64.png $(objdir)/icon64.png
  52. cp -r $(srcdir)/iceweasel/locale $(srcdir)/iceweasel/content $(objdir)/chrome
  53. cp $(srcdir)/icon16.png $(srcdir)/icon32.png $(srcdir)/icon48.png $(srcdir)/icon64.png $(srcdir)/icon128.png $(srcdir)/about.png $(srcdir)/about-wordmark.png $(srcdir)/about-wordmark.svg $(srcdir)/about-logo.png $(srcdir)/about-logo@2x.png $(objdir)/chrome/content
  54. # Only for Debian packaging
  55. install: install-debian
  56. install-debian:
  57. @echo "The 'install' target is only for Debian packaging!"
  58. xpi-pack $(objdir) $(basedir)/build.xpi
  59. install-xpi $(basedir)/build.xpi
  60. $(INSTALL) -Dm 0644 $(srcdir)/icon16.png $(DESTDIR)/usr/share/icons/hicolor/16x16/apps/iceweasel.png
  61. $(INSTALL) -Dm 0644 $(srcdir)/icon32.png $(DESTDIR)/usr/share/icons/hicolor/32x32/apps/iceweasel.png
  62. $(INSTALL) -Dm 0644 $(srcdir)/icon48.png $(DESTDIR)/usr/share/icons/hicolor/48x48/apps/iceweasel.png
  63. $(INSTALL) -Dm 0644 $(srcdir)/icon64.png $(DESTDIR)/usr/share/icons/hicolor/64x64/apps/iceweasel.png
  64. $(INSTALL) -Dm 0644 $(srcdir)/icon128.png $(DESTDIR)/usr/share/icons/hicolor/128x128/apps/iceweasel.png
  65. $(INSTALL) -Dm 0644 $(srcdir)/iceweasel/iceweasel_icon.svg $(DESTDIR)/usr/share/icons/hicolor/scalable/apps/iceweasel.svg
  66. GENERATED += $(basedir)/build.xpi
  67. # Clean everything
  68. clean:
  69. rm -f $(GENERATED) ./*.xpi
  70. rm -fr $(objdir)