Tizen 2.1 base
[platform/upstream/pygobject2.git] / Makefile.am
1 ACLOCAL_AMFLAGS = -I m4
2 AUTOMAKE_OPTIONS = 1.7
3
4 SUBDIRS = docs codegen glib gobject gio examples tests
5
6 PLATFORM_VERSION = 2.0
7
8 CLEANFILES =
9 EXTRA_DIST =                            \
10         MANIFEST.in                     \
11         README.win32                    \
12         pygobject-$(PLATFORM_VERSION).pc.in \
13         PKG-INFO                        \
14         PKG-INFO.in                     \
15         setup.py                        \
16         pygobject_postinstall.py        \
17         pygtk.py                        \
18         dsextras.py                     \
19         ChangeLog.pre-2.18              \
20         m4/as-ac-expand.m4              \
21         m4/jhflags.m4                   \
22         m4/python.m4
23
24 BUILT_EXTRA_DIST =              \
25         ChangeLog
26
27 INCLUDES = -I$(top_srcdir)/gobject $(PYTHON_INCLUDES) $(GLIB_CFLAGS)
28
29 # pkg-config files
30 pkgconfigdir = $(libdir)/pkgconfig
31 pkgconfig_DATA = pygobject-$(PLATFORM_VERSION).pc
32
33 # python modules
34 pkgpyexecdir = $(pyexecdir)/gtk-2.0
35 pkgpyexec_PYTHON = dsextras.py
36 pkgpyexec_LTLIBRARIES =
37
38 # python
39 pyexec_PYTHON = pygtk.py
40 pyexec_LTLIBRARIES =
41
42 # linker flags
43 common_ldflags = -module -avoid-version
44 if PLATFORM_WIN32
45 common_ldflags += -no-undefined
46 endif
47
48 # install pth file.
49 install-data-local:
50         $(mkinstalldirs) $(DESTDIR)$(pythondir)
51         echo "gtk-$(PLATFORM_VERSION)" > $(DESTDIR)$(pyexecdir)/pygtk.pth
52 install-exec-local:
53         $(mkinstalldirs) $(DESTDIR)$(pyexecdir)
54         echo "gtk-$(PLATFORM_VERSION)" > $(DESTDIR)$(pyexecdir)/pygtk.pth
55 uninstall-local:
56         rm -f $(DESTDIR)$(pythondir)/pygtk.pth $(DESTDIR)$(pyexecdir)/pygtk.pth
57
58 EGG_NAME = $(PACKAGE)-$(PACKAGE_VERSION)-py$(PYTHON_VERSION)-$(PLATFORM).egg
59
60 egg: EGG_TMPDIR:=$(TMPDIR)/$(PACKAGE)-$(PACKAGE_VERSION)
61 egg: $(top_srcdir)/gobject/gobject.la PKG-INFO
62         rm -fr $(EGG_TMPDIR)
63         echo $(EGG_NAME)
64         $(MKDIR_P) $(EGG_TMPDIR)
65         $(MKDIR_P) $(EGG_TMPDIR)/EGG-INFO
66         $(MAKE) -C gobject install-pkgpyexecLTLIBRARIES pkgpyexecdir=$(EGG_TMPDIR)
67         $(INSTALL) dsextras.py $(EGG_TMPDIR)
68         rm -fr $(EGG_TMPDIR)/gobject.la
69         $(INSTALL) PKG-INFO $(EGG_TMPDIR)/EGG-INFO
70         echo "gobject.so" >> $(EGG_TMPDIR)/EGG-INFO/native_libs.txt
71         ( echo "gobject" ; echo "dsextras.py" ) >> $(EGG_TMPDIR)/EGG-INFO/top_level.txt
72         cd $(EGG_TMPDIR) && zip -rq $(EGG_NAME) .
73         mv $(EGG_TMPDIR)/$(EGG_NAME) .
74         rm -fr $(EGG_TMPDIR)
75
76 doc-dist:
77         mkdir pygobject
78         cp -r docs/html/*.html pygobject
79         cp -r docs/html/*.sgml pygobject
80         cp -r docs/html/*.devhelp pygobject
81         cp -r docs/style.css pygobject
82         tar cfz $(PACKAGE)-docs.tar.gz pygobject
83         rm -fr pygobject
84
85 release-tag:
86         @ROOT=`svn info --xml|egrep ^"<url>"|cut -d\> -f2|cut -d\< -f1`; \
87         SVNVERSION=`echo $(VERSION)|sed s/\\\./_/g`;\
88           echo "* Tagging $(VERSION)"; \
89           svn cp -m "Tag $(VERSION)" \
90               $$ROOT \
91               svn+ssh://johan@svn.gnome.org/svn/pygobject/tags/PYGOBJECT_$$SVNVERSION
92
93
94 .PHONY: ChangeLog
95
96 ChangeLog:
97         @echo Creating $@
98         @if test -d "$(srcdir)/.git"; then \
99           (GIT_DIR=$(top_srcdir)/.git ./missing --run git log PYGOBJECT_2_17_0^^.. --stat) | fmt --split-only > $@.tmp \
100           && mv -f $@.tmp $@ \
101           || ($(RM) $@.tmp; \
102               echo Failed to generate ChangeLog, your ChangeLog may be outdated >&2; \
103               (test -f $@ || echo git-log is required to generate this file >> $@)); \
104         else \
105           test -f $@ || \
106           (echo A git checkout and git-log is required to generate ChangeLog >&2 && \
107           echo A git checkout and git-log is required to generate this file >> $@); \
108         fi
109
110
111 distclean-local:
112         if test $(srcdir) = .; then :; else \
113             rm -f $(BUILT_EXTRA_DIST); \
114         fi
115
116 dist-hook: $(BUILT_EXTRA_DIST)
117         files='$(BUILT_EXTRA_DIST)'; \
118         for f in $$files; do \
119           if test -f $$f; then d=.; else d=$(srcdir); fi; \
120           rm -f $(distdir)/$$f && cp $$d/$$f $(distdir) || exit 1; done