diff options
author | Johan Dahlin <johan@src.gnome.org> | 2005-08-03 01:44:59 +0000 |
---|---|---|
committer | Johan Dahlin <johan@src.gnome.org> | 2005-08-03 01:44:59 +0000 |
commit | bca2848019561834423650e583befcba0742d2e0 (patch) | |
tree | 1d75a8c14c941cbd72964a6309a16c3563640113 | |
parent | 2aea74af6e0b3ec0643ad9de621ce4a2d681dceb (diff) | |
download | pygtk-bca2848019561834423650e583befcba0742d2e0.tar.gz |
gtk/Makefile.am Big makefile cleanup. Fix a couple of bugs meanwhile, most
* gtk/Makefile.am
* Makefile.am: Big makefile cleanup. Fix a couple of bugs
meanwhile, most noticable, always install include *.defs in
EXTRA_DIST and only install them when their target is built.
-rw-r--r-- | ChangeLog | 7 | ||||
-rw-r--r-- | Makefile.am | 147 | ||||
-rw-r--r-- | gtk/Makefile.am | 140 |
3 files changed, 144 insertions, 150 deletions
@@ -1,5 +1,12 @@ 2005-08-02 Johan Dahlin <jdahlin@async.com.br> + * gtk/Makefile.am + * Makefile.am: Big makefile cleanup. Fix a couple of bugs + meanwhile, most noticable, always install include *.defs in + EXTRA_DIST and only install them when their target is built. + +2005-08-02 Johan Dahlin <jdahlin@async.com.br> + * configure.in: Post release version bump === PyGTK 2.7.2 === diff --git a/Makefile.am b/Makefile.am index 119f1673..a05e2b12 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1,4 +1,3 @@ -# require automake-1.7 AUTOMAKE_OPTIONS = 1.7 if BUILD_GTK @@ -9,124 +8,120 @@ SUBDIRS = codegen gobject . $(GTK_SUBDIR) docs examples tests PLATFORM_VERSION = 2.0 -CLEANFILES = -EXTRA_DIST = $(defs_DATA) -pyexec_LTLIBRARIES = - -defsdir = $(pkgdatadir)/$(PLATFORM_VERSION)/defs -defs_DATA = +CLEANFILES = +EXTRA_DIST = \ + ChangeLog.pre-2-0 \ + ChangeLog.pre-2-6 \ + config.h.win32 \ + dsextras.py \ + makefile.msc \ + MANIFEST.in \ + MAPPING \ + pygtk.spec \ + pygtk.spec.in \ + pygtk-$(PLATFORM_VERSION).pc.in \ + pygtk_postinstall.py \ + PKG-INFO \ + PKG-INFO.in \ + setup.py \ + THREADS +INCLUDES = $(PYTHON_INCLUDES) $(GLIB_CFLAGS) -I$(top_srcdir)/gobject +# pkg-config files pkgconfigdir = $(libdir)/pkgconfig -pkgconfig_DATA = \ - pygobject-$(PLATFORM_VERSION).pc - +pkgconfig_DATA = pygobject-$(PLATFORM_VERSION).pc if BUILD_GTK pkgconfig_DATA += pygtk-$(PLATFORM_VERSION).pc endif -INCLUDES = \ - $(PYTHON_INCLUDES) \ - $(GLIB_CFLAGS) \ - $(PANGO_CFLAGS) \ - $(ATK_CFLAGS) \ - -I$(top_srcdir)/gobject - -pkgpythondir = $(pyexecdir)/gtk-2.0 -pkgpyexecdir = $(pyexecdir)/gtk-2.0 -pkgpyexec_LTLIBRARIES = +# defs files +defsdir = $(pkgdatadir)/$(PLATFORM_VERSION)/defs +defs_DATA = -# this file is common to all pygtk versions. +# python pyexec_PYTHON = pygtk.py +pyexec_LTLIBRARIES = +noinst_PYTHON = ltihooks.py -# install pth file. -install-data-local: - $(mkinstalldirs) $(DESTDIR)$(pythondir) - echo "gtk-$(PLATFORM_VERSION)" > $(DESTDIR)$(pyexecdir)/pygtk.pth -install-exec-local: - $(mkinstalldirs) $(DESTDIR)$(pyexecdir) - echo "gtk-$(PLATFORM_VERSION)" > $(DESTDIR)$(pyexecdir)/pygtk.pth -uninstall-local: - rm -f $(DESTDIR)$(pythondir)/pygtk.pth $(DESTDIR)$(pyexecdir)/pygtk.pth - - +# pygtk scripts +pkgpythondir = $(pyexecdir)/gtk-2.0 pkgpython_PYTHON = dsextras.py -if BUILD_ATK -pkgpyexec_LTLIBRARIES += atk.la -defs_DATA += atk.defs atk-types.defs -endif -if BUILD_PANGO -pkgpyexec_LTLIBRARIES += pango.la -defs_DATA += pango.defs pango-types.defs -endif -if BUILD_PANGOCAIRO -pkgpyexec_LTLIBRARIES += pangocairo.la -defs_DATA += pangocairo.defs -endif +# pygtk extension modules +pkgpyexecdir = $(pyexecdir)/gtk-2.0 +pkgpyexec_LTLIBRARIES = +# linker flags common_ldflags = -module -avoid-version if PLATFORM_WIN32 common_ldflags += -no-undefined endif # atk module -atk_la_LDFLAGS = $(common_ldflags) -export-symbols-regex initatk +ATK_DEFS = atk.defs atk-types.defs +CLEANFILES += atk.c +EXTRA_DIST += $(ATK_DEFS) atk.override +atk.c: $(ATK_DEFS) atk.override +atk_la_CFLAGS = $(ATK_CFLAGS) atk_la_LIBADD = $(ATK_LIBS) +atk_la_LDFLAGS = $(common_ldflags) -export-symbols-regex initatk atk_la_SOURCES = atkmodule.c nodist_atk_la_SOURCES = atk.c -atk.c: atk.defs atk-types.defs atk.override -CLEANFILES += atk.c -EXTRA_DIST += atk.override +if BUILD_ATK +pkgpyexec_LTLIBRARIES += atk.la +defs_DATA += $(ATK_DEFS) +endif # pango module -pango_la_LDFLAGS = $(common_ldflags) -export-symbols-regex initpango +PANGO_DEFS = pango.defs pango-types.defs +CLEANFILES += pango.c +EXTRA_DIST += $(PANGO_DEFS) pango.override +pango.c: $(PANGO_DEFS) pango.override +pango_la_CFLAGS = $(PANGO_CFLAGS) pango_la_LIBADD = $(PANGO_LIBS) +pango_la_LDFLAGS = $(common_ldflags) -export-symbols-regex initpango pango_la_SOURCES = pangomodule.c nodist_pango_la_SOURCES = pango.c -pango.c: pango.defs pango-types.defs pango.override -CLEANFILES += pango.c -EXTRA_DIST += pango.override +if BUILD_PANGO +pkgpyexec_LTLIBRARIES += pango.la +defs_DATA += $(PANGO_DEFS) +endif # pangocairo module +PANGOCAIRO_DEFS = pangocairo.defs pangocairo.override +CLEANFILES += pangocairo.c +EXTRA_DIST += $(PANGOCAIRO_DEFS) pangocairo.override +pangocairo.c: $(PANGOCAIRO_DEFS) pangocairo.override +pangocairo_la_CFLAGS = $(PANGOCAIRO_CFLAGS) pangocairo_la_LDFLAGS = $(common_ldflags) -export-symbols-regex initpangocairo pangocairo_la_LIBADD = $(PANGOCAIRO_LIBS) -pangocairo_la_CFLAGS = $(PANGOCAIRO_CFLAGS) pangocairo_la_SOURCES = pangocairomodule.c nodist_pangocairo_la_SOURCES = pangocairo.c -pangocairo.c: pangocairo.defs pangocairo.override -CLEANFILES += pangocairo.c -EXTRA_DIST += pangocairo.override +if BUILD_PANGOCAIRO +pkgpyexec_LTLIBRARIES += pangocairo.la +defs_DATA += $(PANGOCAIRO_DEFS) +endif +# code generator .defs.c: (cd $(srcdir)\ && $(PYTHON) codegen/codegen.py \ --register pango-types.defs \ --register atk-types.defs \ - --register gtk/gdk-types.defs \ - --register gtk/gtk-types.defs \ --override $*.override \ --prefix py$* $*.defs) > gen-$*.c \ && cp gen-$*.c $*.c \ && rm -f gen-$*.c -noinst_PYTHON = ltihooks.py - -EXTRA_DIST += \ - ChangeLog.pre-2-0 \ - ChangeLog.pre-2-6 \ - config.h.win32 \ - dsextras.py \ - makefile.msc \ - MANIFEST.in \ - MAPPING \ - pygtk.spec \ - pygtk.spec.in \ - pygtk-$(PLATFORM_VERSION).pc.in \ - pygtk_postinstall.py \ - PKG-INFO \ - PKG-INFO.in \ - setup.py \ - THREADS +# install pth file. +install-data-local: + $(mkinstalldirs) $(DESTDIR)$(pythondir) + echo "gtk-$(PLATFORM_VERSION)" > $(DESTDIR)$(pyexecdir)/pygtk.pth +install-exec-local: + $(mkinstalldirs) $(DESTDIR)$(pyexecdir) + echo "gtk-$(PLATFORM_VERSION)" > $(DESTDIR)$(pyexecdir)/pygtk.pth +uninstall-local: + rm -f $(DESTDIR)$(pythondir)/pygtk.pth $(DESTDIR)$(pyexecdir)/pygtk.pth snap: $(MAKE) dist distdir=$(PACKAGE)-SNAP-`date +"%Y%m%d"` diff --git a/gtk/Makefile.am b/gtk/Makefile.am index 15bdea10..a34868c1 100644 --- a/gtk/Makefile.am +++ b/gtk/Makefile.am @@ -1,107 +1,92 @@ -PLATFORM_VERSION = 2.0 - -pkgpythondir = $(pyexecdir)/gtk-2.0 -pkgpyexecdir = $(pyexecdir)/gtk-2.0 +AUTOMAKE_OPTIONS = 1.7 -pygtkdir = $(pkgpythondir)/gtk -pygtk_PYTHON = __init__.py keysyms.py compat.py +PLATFORM_VERSION = 2.0 -pygtkexecdir = $(pkgpyexecdir)/gtk +CLEANFILES = +EXTRA_DIST = makefile.msc +INCLUDES = $(PYTHON_INCLUDES) -I$(top_srcdir)/gobject +# defs files defsdir = $(pkgdatadir)/$(PLATFORM_VERSION)/defs defs_DATA = -EXTRA_DIST = -CLEANFILES = +# python scripts & extension modules +pkgpythondir = $(pyexecdir)/gtk-2.0 +pkgpyexecdir = $(pyexecdir)/gtk-2.0 -EXTRA_DIST += makefile.msc +# gtk python extension modules +pygtkexecdir = $(pkgpyexecdir)/gtk +pygtkexec_LTLIBRARIES = +# gtk python scripts +pygtkdir = $(pkgpythondir)/gtk +pygtk_PYTHON = __init__.py keysyms.py compat.py + +# gtk headers pkgincludedir = $(includedir)/pygtk-$(PLATFORM_VERSION)/pygtk pkginclude_HEADERS = pygtk.h -INCLUDES = -I$(top_srcdir)/gobject $(PYTHON_INCLUDES) -COMMONDEFS = \ - $(top_srcdir)/atk-types.defs \ - $(top_srcdir)/pango-types.defs \ - $(srcdir)/gdk-types.defs \ - $(srcdir)/gtk-types.defs - +# linker flags common_ldflags = -module -avoid-version if PLATFORM_WIN32 common_ldflags += -no-undefined endif -pygtkexec_LTLIBRARIES = - # gtk module -if BUILD_GTK -pygtkexec_LTLIBRARIES += _gtk.la -defs_DATA += \ - gdk.defs \ - gdk-types.defs \ - gtk.defs \ - gtk-types.defs \ - gtk-extrafuncs.defs -endif - +GDK_DEFS = gdk.defs gdk-types.defs +GTK_DEFS = gtk.defs gtk-types.defs gtk-extrafuncs.defs +GDK_OVERRIDES = gdk.override gdkcairo.override +GTK_OVERRIDES = \ + gtk.override \ + gtkclist.override \ + gtkcontainer.override \ + gtkctree.override \ + gtkiconview.override \ + gtkstyle.override \ + gtktextview.override \ + gtktreeview.override \ + gtkwidget.override \ + gtkwindow.override +CLEANFILES += gtk.c gdk.c +EXTRA_DIST += $(GDK_DEFS) $(GDK_OVERRIDES) $(GTK_DEFS) $(GTK_OVERRIDES) +gdk.c: $(GDK_DEFS) $(GDK_OVERRIDES) +gtk.c: $(GTK_DEFS) $(GTK_OVERRIDES) _gtk_la_CFLAGS = $(GTK_CFLAGS) _gtk_la_LDFLAGS = $(common_ldflags) -export-symbols-regex init_gtk _gtk_la_LIBADD = $(GTK_LIBS) -_gtk_la_SOURCES = \ - pygtk.h \ - pygtk-private.h \ - gtkmodule.c \ - gtkobject-support.c \ - gtk-types.c \ - pygtktreemodel.h \ - pygtktreemodel.c \ - pygtkcellrenderer.h \ - pygtkcellrenderer.c +_gtk_la_SOURCES = \ + gtk-types.c \ + gtkmodule.c \ + gtkobject-support.c \ + pygtk.h \ + pygtk-private.h \ + pygtkcellrenderer.h \ + pygtkcellrenderer.c \ + pygtktreemodel.h \ + pygtktreemodel.c nodist__gtk_la_SOURCES = gtk.c gdk.c - +if BUILD_GTK +pygtkexec_LTLIBRARIES += _gtk.la +defs_DATA += $(GTK_DEFS) $(GDK_DEFS) +endif if PLATFORM_WIN32 _gtk_la_CFLAGS += -DPLATFORM_WIN32 endif -# prevent the .defs.c rule from trying to generate gtk-types.c because -# there is gtk-types.defs. This is basically a hack and I really wish I -# could use pattern rules. Perhaps we should rename gtk-types.c. -gtk-types.c: - @: - -gtk_overrides = \ - gtk.override \ - gtkclist.override \ - gtkcontainer.override \ - gtkctree.override \ - gtkiconview.override \ - gtkstyle.override \ - gtktextview.override \ - gtktreeview.override \ - gtkwidget.override \ - gtkwindow.override - -gdk.c: $(srcdir)/gdk.defs $(COMMONDEFS) $(srcdir)/gdk.override $(srcdir)/gdkcairo.override -gtk.c: $(srcdir)/gtk.defs $(COMMONDEFS) $(gtk_overrides) $(srcdir)/gtk-extrafuncs.defs -CLEANFILES += gtk.c gdk.c - -EXTRA_DIST += gdk.override gdkcairo.override $(gtk_overrides) - # libglade module -if BUILD_LIBGLADE -pygtkexec_LTLIBRARIES += glade.la -defs_DATA += libglade.defs -endif +LIBGLADE_DEFS = libglade.defs +CLEANFILES += libglade.c +EXTRA_DIST += $(LIBGLADE_DEFS) libglade.override +libglade.c: $(LIBGLADE_DEFS) libglade.override glade_la_CFLAGS = $(LIBGLADE_CFLAGS) -glade_la_LDFLAGS = $(common_ldflags) -export-symbols-regex initglade glade_la_LIBADD = $(LIBGLADE_LIBS) +glade_la_LDFLAGS = $(common_ldflags) -export-symbols-regex initglade glade_la_SOURCES = libglademodule.c nodist_glade_la_SOURCES = libglade.c -libglade.c: $(COMMONDEFS) libglade.override -CLEANFILES += libglade.c -EXTRA_DIST += libglade.override - -EXTRA_DIST += $(defs_DATA) +if BUILD_LIBGLADE +pygtkexec_LTLIBRARIES += glade.la +defs_DATA += $(LIBGLADE_DEFS) +endif .defs.c: (cd $(srcdir) \ @@ -115,3 +100,10 @@ EXTRA_DIST += $(defs_DATA) --prefix py$* $*.defs) > gen-$*.c \ && cp gen-$*.c $*.c \ && rm -f gen-$*.c + +# prevent the .defs.c rule from trying to generate gtk-types.c because +# there is gtk-types.defs. This is basically a hack and I really wish I +# could use pattern rules. Perhaps we should rename gtk-types.c. +gtk-types.c: + @: + |