15 gaim-uninstalled.pc.in \
26 noinst_HEADERS = config.h package_revision.h
28 dist-hook: pidgin.spec
29 cp pidgin.spec $(distdir)
30 rm $(distdir)/config.h
32 distcheck-hook: libpurple/plugins/perl/common/Purple.pm pidgin/plugins/perl/common/Pidgin.pm
33 # cp libpurple/plugins/perl/common/Gaim.pm $(distdir)/libpurple/plugins/perl/common
36 (cd po ; intltool-update -m 2>&1 | grep -v '^mismatched quotes.*\.py$$' | sed "s|current directory|po directory|" | grep . ; if [ $$? = 0 ] ; then exit 1 ; else exit 0 ; fi)
37 LC_ALL=C sort -c -t/ -u po/POTFILES.in
38 LC_ALL=C sort -c -t/ -u po/POTFILES.skip
39 iconv -f utf8 -t utf8 COPYRIGHT | cmp COPYRIGHT -
41 version-check: commit-check
42 # We don't want to release development versions.
43 test x`echo $(PACKAGE_VERSION) | grep dev` = x
45 # Make sure there is a NEWS entry for this version
46 head NEWS | grep "^$(PACKAGE_VERSION) (`date +%m/%d/%Y`):$$" > /dev/null
48 # Ensure NEWS has no spaces at the start of a line.
49 # Using spaces instead of tabs there is a common mistake.
50 test x`grep "^ " NEWS` = x
52 # When doing a new minor (or major) release (X.Y.0), there must be a section in
54 echo $(PACKAGE_VERSION) | grep -v "^[0-9]\+\.[0-9]\+\.0$$" >/dev/null || head ChangeLog.API | grep "^version $(PACKAGE_VERSION) (`date +%m/%d/%Y`):$$" >/dev/null
56 # For all releases, check the ChangeLogs.
57 head ChangeLog | grep "^version $(PACKAGE_VERSION) (`date +%m/%d/%Y`):$$" >/dev/null
58 head ChangeLog.win32 | grep "^version $(PACKAGE_VERSION) (`date +%m/%d/%Y`):$$" >/dev/null
59 head po/ChangeLog | grep "^version $(PACKAGE_VERSION)$$" >/dev/null
61 # Ensure we're working from a tag...
62 test x`mtn automate select t:v$(PACKAGE_VERSION)` = x`mtn automate get_base_revision_id`
63 # ... and have no changes in the working copy.
64 test "x`mtn diff | grep -v '^#'`" = x
66 release: version-check distcheck packages
69 gpg -ab pidgin-$(PACKAGE_VERSION).tar.gz
70 gpg -ab pidgin-$(PACKAGE_VERSION).tar.bz2
71 gpg --verify pidgin-$(PACKAGE_VERSION).tar.gz.asc pidgin-$(PACKAGE_VERSION).tar.gz
72 gpg --verify pidgin-$(PACKAGE_VERSION).tar.bz2.asc pidgin-$(PACKAGE_VERSION).tar.bz2
76 DESKTOP_FILE=pidgin.desktop
79 appsdir = $(datadir)/applications
80 apps_in_files = pidgin.desktop.in
81 apps_DATA = $(apps_in_files:.desktop.in=.desktop)
82 @INTLTOOL_DESKTOP_RULE@
95 # This is phony, so that we always try to rebuild it. If it succeeds
96 # in calculating changes, it produces its target; otherwise, its
97 # target does not exist.
98 .PHONY: package_revision_raw.txt
99 # if both attempts fail, then we need to remove the empty file that >
100 # creates, and also make sure that the shell command exits
101 # successfully; the rm -f ensures both
102 package_revision_raw.txt:
103 $(AM_V_GEN)REAL_BLDDIR=$$PWD/$(top_builddir); \
104 (cd $(srcdir) && $$REAL_BLDDIR/mtn --root=. automate get_base_revision_id) 2>/dev/null >$@ \
105 || (cd $(srcdir) && mtn --root=. automate get_base_revision_id) 2>/dev/null >$@ \
107 package_revision.h: package_revision_raw.txt
108 $(AM_V_GEN)if test -f $<; then \
109 echo "#define REVISION \"`cat $<`\"" > $@; \
111 $(AM_V_at)if test ! -f $@ -a -f $(srcdir)/$@; then \
112 cp $(srcdir)/$@ $@; \
114 $(AM_V_at)test -f $@ || echo "#define REVISION \"unknown\"" > $@
116 # This is a magic directive copy-and-pasted, then modified, from the
117 # automake 1.9 manual, section 13.4, "Checking the distribution".
118 # Normally, 'distcheck' does a clean build, and then afterwards runs
119 # 'distclean', and 'distclean' is supposed to remove everything that
120 # the build created. However, we have some targets (package_revision.txt)
121 # that we distribute, but then always attempt to rebuild optimistically, and
122 # then if that fails fall back on the distributed versions. This
123 # means that 'distclean' should _not_ remove those files, since they
124 # are distributed, yet building the package will generate those files,
125 # thus automake thinks that 'distclean' _should_ remove those files,
126 # and 'distcheck' gets cranky if we don't. So basically what this
127 # line does is tell 'distcheck' to shut up and ignore those two files.
128 distcleancheck_listfiles = find . -type f -a ! -name package_revision.h
130 SUBDIRS = . libpurple doc $(GNT_DIR) $(GTK_DIR) m4macros $(PO_DIR) share/ca-certs share/sounds
134 @echo "Running doxygen..."
137 @echo "Generating devhelp index..."
138 @xsltproc $(top_srcdir)/doxy2devhelp.xsl doc/xml/index.xml > doc/html/pidgin.devhelp
139 @echo "(Symlink $$(pwd)/doc/html to ~/.local/share/gtk-doc/html/pidgin to make devhelp see the documentation)"
141 @echo "Not generating devhelp index: xsltproc was not found by configure"
144 @echo "doxygen was not found during configure. Unable to build documentation."
148 # perl's MakeMaker uninstall foo doesn't work well with DESTDIR set, which
149 # breaks "make distcheck" unless we ignore perl things
151 distuninstallcheck_listfiles = \
152 find . -type f -print | grep -v perl | grep -v Purple.3pm
154 DISTCLEANFILES= $(DESKTOP_FILE) libpurple/gconf/purple.schemas intltool-extract \
155 intltool-merge intltool-update