docs: make gtkdoc-mkdb ignore cmph doxygen comment blocks.
[platform/upstream/gobject-introspection.git] / Makefile.am
1 man_MANS =
2 EXTRA_DIST =
3 lib_LTLIBRARIES =
4 noinst_LTLIBRARIES =
5 BUILT_SOURCES =
6 CLEANFILES = $(BUILT_SOURCES)
7 INTROSPECTION_GIRS =
8 check_LTLIBRARIES =
9 check_PROGRAMS =
10 bin_PROGRAMS =
11 bin_SCRIPTS =
12 GTESTER_PROGS =
13 noinst_PROGRAMS = $(GTESTER_PROGS)
14
15 include common.mk
16 include Makefile.introspection
17
18 include Makefile-cmph.am
19 include Makefile-girepository.am
20 include Makefile-giscanner.am
21 include Makefile-examples.am
22 include Makefile-gir.am
23 include Makefile-tools.am
24 include Makefile-msvcproj.am
25
26 ## Process this file with automake to produce Makefile.in
27 ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS}
28
29 SUBDIRS = . docs tests build
30
31 DIST_SUBDIRS = m4 $(SUBDIRS)
32 DISTCHECK_CONFIGURE_FLAGS = --enable-gtk-doc
33
34 man_MANS +=                     \
35         docs/g-ir-compiler.1    \
36         docs/g-ir-generate.1    \
37         docs/g-ir-scanner.1
38
39 pkgconfigdir = $(libdir)/pkgconfig
40 pkgconfig_DATA = gobject-introspection-1.0.pc gobject-introspection-no-export-1.0.pc
41
42 m4dir = $(datadir)/aclocal
43 m4_DATA = m4/introspection.m4
44
45 makedir = $(datadir)/gobject-introspection-1.0
46 dist_make_DATA = Makefile.introspection
47
48 EXTRA_DIST +=                   \
49         COPYING.LGPL            \
50         COPYING.GPL             \
51         CONTRIBUTORS            \
52         $(pkgconfig_DATA)       \
53         $(man_MANS)             \
54         $(m4_DATA)              \
55         misc/pep8.py            \
56         misc/pre-commit         \
57         misc/pyflakes.py
58
59 check-local:
60         gtester --verbose $(GTESTER_PROGS)
61         @test ! -d $(top_srcdir)/.git || (test -f $(top_srcdir)/.git/hooks/pre-commit || (echo -e "ERROR: missing \
62         pre-commit hook.\n\ncopy misc/pre-commit to .git/hooks"; false))
63         @test ! -d $(top_srcdir)/.git || (test -x $(top_srcdir)/.git/hooks/pre-commit || (echo -e "ERROR: pre-commit \
64         is not executable\n\nrun chmod +x .git/hooks/pre-commit"; false))
65         @echo "TEST: PEP-8 INQUISITION"
66         @find $(top_srcdir)/giscanner -name \*.py | sort | uniq | xargs $(PYTHON) $(top_srcdir)/misc/pep8.py --repeat --exclude=config.py
67         @echo "TEST: Annotation pattern programs"
68         $(PYTHON) $(top_srcdir)/giscanner/annotationpatterns.py
69         @touch $(top_builddir)/.make-check-passed
70
71 check-pyflakes:
72         @echo "  CHECK Pyflakes"
73         @find $(top_srcdir)/giscanner -name \*.py | sort | uniq | xargs $(PYTHON) $(top_srcdir)/misc/pyflakes.py
74
75
76 # Colin's handy Makefile bits for:
77 # 1) stuffing tarballs with pre-generated scripts from your workstation
78 # 2) bumping configure.ac version post-release
79 # 3) tagging correctly in git
80 # 4) uploading to gnome.org
81 # To use:
82 #  $ make check
83 #  $ make dist
84 #  $ make prepare-minor-release
85
86 # Customize to taste
87 TAG_PREFIX=GOBJECT_INTROSPECTION_
88 COMPRESSION=.xz
89
90
91 PACKAGE=@PACKAGE@
92 VERSION=@VERSION@
93 DISTNAME=$(PACKAGE)-$(VERSION).tar$(COMPRESSION)
94 TAG_VERSION=$(shell echo $(VERSION) |sed s/\\\./_/g)
95
96 prepare-release-tag: Makefile
97         git tag -m "Tag $(TAG_VERSION)" -a $(TAG_PREFIX)$(TAG_VERSION)
98
99 prepare-minor-release: $(DISTNAME) prepare-release-tag Makefile
100         env top_srcdir=$(top_srcdir) python $(top_srcdir)/tools/verbump.py
101
102 upload-release: $(DISTNAME) Makefile
103         git log origin/master..master
104         @echo -n "Ok to push? [y/N] "; read ans; test x$$ans == xy || exit 1
105         git push --tags origin master:master
106         scp $(DISTNAME) master.gnome.org:
107         ssh master.gnome.org install-module $(DISTNAME)
108