### Process this file with automake to produce Makefile.in

gtkincludedir = $(includedir)/gtk

lib_LTLIBRARIES = libgtk.la

static_sources = \
	gtkaccelgroup.c		\
	gtkaccellabel.c		\
	gtkadjustment.c		\
	gtkalignment.c		\
	gtkarg.c		\
	gtkarrow.c		\
	gtkaspectframe.c	\
	gtkbin.c		\
	gtkbindings.c		\
	gtkbbox.c		\
	gtkbox.c		\
	gtkbutton.c		\
	gtkcalendar.c		\
	gtkcheckbutton.c	\
	gtkcheckmenuitem.c	\
	gtkclist.c		\
	gtkcolorsel.c		\
	gtkcombo.c		\
	gtkcontainer.c		\
	gtkctree.c		\
	gtkcurve.c		\
	gtkdata.c		\
	gtkdialog.c		\
	gtkdnd.c		\
	gtkdrawingarea.c	\
	gtkeditable.c           \
	gtkentry.c		\
	gtkeventbox.c		\
	gtkfilesel.c		\
	gtkfixed.c		\
	gtkfontsel.c            \
	gtkframe.c		\
	gtkgamma.c		\
	gtkgc.c			\
	gtkhandlebox.c		\
	gtkhbbox.c		\
	gtkhbox.c		\
	gtkhpaned.c		\
	gtkhruler.c		\
	gtkhscale.c		\
	gtkhscrollbar.c		\
	gtkhseparator.c		\
	gtkimage.c		\
	gtkinputdialog.c	\
	gtkinvisible.c		\
	gtkitem.c		\
	gtkitemfactory.c	\
	gtklabel.c		\
	gtklayout.c		\
	gtklist.c		\
	gtklistitem.c		\
	gtkmain.c		\
	gtkmenu.c		\
	gtkmenubar.c		\
	gtkmenufactory.c	\
	gtkmenuitem.c		\
	gtkmenushell.c		\
	gtkmisc.c		\
	gtknotebook.c		\
	gtkobject.c		\
	gtkoptionmenu.c		\
	gtkpacker.c		\
	gtkpaned.c		\
	gtkpixmap.c		\
	gtkplug.c               \
	gtkpreview.c		\
	gtkprogress.c		\
	gtkprogressbar.c	\
	gtkradiobutton.c	\
	gtkradiomenuitem.c	\
	gtkrange.c		\
	gtkrc.c			\
	gtkruler.c		\
	gtkscale.c		\
	gtkscrollbar.c		\
	gtkscrolledwindow.c	\
	gtkselection.c		\
	gtkseparator.c		\
	gtksignal.c		\
	gtksocket.c             \
	gtkspinbutton.c		\
	gtkstyle.c		\
	gtkstatusbar.c		\
	gtktable.c		\
	gtktearoffmenuitem.c    \
	gtktext.c		\
	gtkthemes.c		\
	gtktipsquery.c		\
	gtktogglebutton.c	\
	gtktoolbar.c		\
	gtktooltips.c		\
	gtktree.c		\
	gtktreeitem.c		\
	gtktypeutils.c		\
	gtkvbbox.c		\
	gtkvbox.c		\
	gtkviewport.c		\
	gtkvpaned.c		\
	gtkvruler.c		\
	gtkvscale.c		\
	gtkvscrollbar.c		\
	gtkvseparator.c		\
	gtkwidget.c		\
	gtkwindow.c		\
	fnmatch.c		\
	fnmatch.h

libgtk_la_SOURCES = \
	$(static_sources)	\
	gtkmarshal.c

# Source headers which are non-autogenerated headers
source_headers = \
	gtk.h			\
	gtkaccelgroup.h		\
	gtkaccellabel.h		\
	gtkadjustment.h		\
	gtkalignment.h		\
	gtkarg.h		\
	gtkarrow.h		\
	gtkaspectframe.h	\
	gtkbin.h		\
	gtkbindings.h		\
	gtkbbox.h		\
	gtkbox.h		\
	gtkbutton.h		\
	gtkcalendar.h		\
	gtkcheckbutton.h	\
	gtkcheckmenuitem.h	\
	gtkclist.h		\
	gtkcolorsel.h		\
	gtkcombo.h		\
	gtkcompat.h		\
	gtkcontainer.h		\
	gtkctree.h		\
	gtkcurve.h		\
	gtkdata.h		\
	gtkdebug.h              \
	gtkdialog.h		\
	gtkdnd.h		\
	gtkdrawingarea.h	\
	gtkeditable.h           \
	gtkentry.h		\
	gtkenums.h		\
	gtkeventbox.h		\
	gtkfilesel.h		\
	gtkfixed.h		\
	gtkfontsel.h		\
	gtkframe.h		\
	gtkgamma.h		\
	gtkgc.h			\
	gtkhandlebox.h		\
	gtkhbbox.h		\
	gtkhbox.h		\
	gtkhpaned.h		\
	gtkhruler.h		\
	gtkhscale.h		\
	gtkhscrollbar.h		\
	gtkhseparator.h		\
	gtkimage.h		\
	gtkinputdialog.h	\
	gtkintl.h		\
	gtkinvisible.h		\
	gtkitem.h		\
	gtkitemfactory.h	\
	gtklabel.h		\
	gtklayout.h             \
	gtklist.h		\
	gtklistitem.h		\
	gtkmain.h		\
	gtkmenu.h		\
	gtkmenubar.h		\
	gtkmenufactory.h	\
	gtkmenuitem.h		\
	gtkmenushell.h		\
	gtkmisc.h		\
	gtknotebook.h		\
	gtkobject.h		\
	gtkoptionmenu.h		\
	gtkpacker.h		\
	gtkpaned.h		\
	gtkpixmap.h		\
	gtkplug.h		\
	gtkpreview.h		\
	gtkprivate.h		\
	gtkprogress.h		\
	gtkprogressbar.h	\
	gtkradiobutton.h	\
	gtkradiomenuitem.h	\
	gtkrange.h		\
	gtkrc.h			\
	gtkruler.h		\
	gtkscale.h		\
	gtkscrollbar.h		\
	gtkscrolledwindow.h	\
	gtkselection.h		\
	gtkseparator.h		\
	gtksignal.h		\
	gtksocket.h		\
	gtkspinbutton.h		\
	gtkstyle.h		\
	gtkstatusbar.h		\
	gtktable.h		\
	gtktearoffmenuitem.h    \
	gtktext.h		\
	gtkthemes.h		\
	gtktipsquery.h		\
	gtktogglebutton.h	\
	gtktoolbar.h		\
	gtktooltips.h		\
	gtktree.h		\
	gtktreeitem.h		\
	gtktypeutils.h		\
	gtkvbbox.h		\
	gtkvbox.h		\
	gtkviewport.h		\
	gtkvpaned.h		\
	gtkvruler.h		\
	gtkvscale.h		\
	gtkvscrollbar.h		\
	gtkvseparator.h		\
	gtkwidget.h		\
	gtkwindow.h

gtkinclude_HEADERS = 		\
	$(source_headers) 	\
	gtkfeatures.h		\
	gtkmarshal.h		\
	gtktypebuiltins.h

# note gtk.defs and gtkmarshal.[ch] aren't here, but their stamps are
BUILT_SOURCES = \
	stamp-d				\
	stamp-m				\
	gtktypebuiltins.h		\
	gtktypebuiltins_evals.c		\
	gtktypebuiltins_ids.c		\
        gtktypebuiltins_vars.c

# cause the built sources to be rebuild when possible, even with --include-deps
$(static_sources): $(BUILT_SOURCES)

# More headers to use when autogenerating.
gdk_headers = \
	../gdk/gdktypes.h \
	../gdk/gdkrgb.h

# generate gtk.defs file from gtk-boxed.defs and *.h
gtk.defs: @REBUILD@ stamp-d
	@:
stamp-d: @REBUILD@ makeenums.pl gtk-boxed.defs $(source_headers) $(gdk_headers)
	cd $(srcdir) \
	&& $(PERL) makeenums.pl defs $(source_headers) $(gdk_headers) > s-gd \
	&& cat gtk-boxed.defs >> s-gd \
	&& (cmp -s s-gd gtk.defs || mv s-gd gtk.defs) && rm -f s-gd \
	&& echo timestamp > stamp-d

# generate type identifier header (GTK_TYPE_WIDGET_FLAGS)
gtktypebuiltins.h: @REBUILD@ gtk.defs maketypes.awk
	cd $(srcdir) \
	&& $(AWK) -f maketypes.awk gtk.defs macros > s-gtb \
	&& mv s-gtb gtktypebuiltins.h

# generate type identifier variables (GTK_TYPE_WIDGET_FLAGS)
gtktypebuiltins_vars.c: @REBUILD@ gtk.defs maketypes.awk
	cd $(srcdir) \
	&& $(AWK) -f maketypes.awk gtk.defs variables > s-gtbv \
	&& mv s-gtbv gtktypebuiltins_vars.c

# generate type entries for type-id registration
gtktypebuiltins_ids.c: @REBUILD@ gtk.defs maketypes.awk
	cd $(srcdir) \
	&& $(AWK) -f maketypes.awk gtk.defs entries > s-gtbi \
	&& mv s-gtbi gtktypebuiltins_ids.c 

# generate enum value arrays
gtktypebuiltins_evals.c: @REBUILD@ makeenums.pl gtk.defs
	cd $(srcdir) \
	&& $(PERL) makeenums.pl arrays $(source_headers) $(gdk_headers) > \
	s-gtbe \
	&& mv s-gtbe gtktypebuiltins_evals.c

gtkmarshal.c gtkmarshal.h: @REBUILD@ stamp-m
	@:
stamp-m: @REBUILD@ gtkmarshal.list genmarshal.pl
	srcdir=$(srcdir) INDENT=$(INDENT) $(PERL) $(srcdir)/genmarshal.pl \
	&& (cmp -s s-gmc gtkmarshal.c || mv s-gmc gtkmarshal.c) && rm -f s-gmc \
	&& (cmp -s s-gmh gtkmarshal.h || mv s-gmh gtkmarshal.h) && rm -f s-gmh \
	&& echo timestamp > stamp-m

libgtk_la_LDFLAGS = \
	-version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) -release $(LT_RELEASE) \
	@GLIB_LIBS@ 			\
	@x_ldflags@			\
	@x_libs@ 			\
	-lm
#	$(top_builddir)/gdk/libgdk.la


# We create a dummy theme for the default GTK+ theme

install-data-local:
	$(mkinstalldirs) $(DESTDIR)$(datadir)/themes/Default/gtk
	echo "# Empty gtkrc for default theme" > \
	    $(DESTDIR)$(datadir)/themes/Default/gtk/gtkrc

uninstall-local:
	rm -f $(DESTDIR)$(datadir)/themes/Default/gtkrc

EXTRA_DIST = \
	line-arrow.xbm 		\
	line-wrap.xbm 		\
	testgtk.1 		\
	testgtkrc 		\
	testgtkrc2 		\
	gtkfeatures.h.in	\
	makeenums.pl		\
	makeenums.awk		\
	maketypes.awk		\
	makeenums.h		\
	gtkargcollector.c	\
	gtktypebuiltins_vars.c	\
	gtktypebuiltins_ids.c	\
	gtktypebuiltins_evals.c	\
	gtk-boxed.defs		\
	gtk.defs		\
	genmarshal.pl		\
	gtkmarshal.list		\
	test.xpm		\
	marble.xpm		\
	3DRings.xpm		\
	FilesQueue.xpm		\
	Modeller.xpm		\
	tree_plus.xpm		\
	tree_minus.xpm		\
	tree_plus.xbm		\
	tree_minus.xbm          \
        circles.xbm

INCLUDES = \
	-DG_LOG_DOMAIN=\"Gtk\"			\
	-DGTK_EXE_PREFIX=\"$(exec_prefix)\"	\
	-DGTK_DATA_PREFIX=\"$(prefix)\"		\
	-DGTK_SYSCONFDIR=\"$(sysconfdir)\"	\
	-DGTK_LOCALEDIR=\"$(datadir)/locale\"   \
	-I$(top_srcdir)				\
	@GTK_DEBUG_FLAGS@			\
	@GTK_XIM_FLAGS@				\
	@GTK_LOCALE_FLAGS@			\
	@GLIB_CFLAGS@				\
	@x_cflags@

noinst_PROGRAMS = testgtk testinput testselection testrgb testdnd simple 
# testthreads

DEPS =	\
	libgtk.la					\
	$(top_builddir)/gdk/libgdk.la

LDADDS = \
	libgtk.la					\
	$(top_builddir)/gdk/libgdk.la			\
	@x_ldflags@					\
	@x_libs@					\
	@GLIB_LIBS@                                     \
	-lm

testgtk_DEPENDENCIES = $(DEPS)
testinput_DEPENDENCIES = $(DEPS)
#testthreads_DEPENDENCIES = $(DEPS)
testselection_DEPENDENCIES = $(DEPS)
testrgb_DEPENDENCIES = $(DEPS)
testdnd_DEPENDENCIES = $(DEPS)
simple_DEPENDENCIES = $(DEPS)

testgtk_LDADD = $(LDADDS)
testinput_LDADD = $(LDADDS)
#testthreads_LDADD = $(LDADDS)
testselection_LDADD = $(LDADDS)
testrgb_LDADD = $(LDADDS)
testdnd_LDADD = $(LDADDS)
simple_LDADD = $(LDADDS)

.PHONY: files test test-debug

files:
	@files=`ls $(DISTFILES) 2> /dev/null `; for p in $$files; do \
	  echo $$p; \
	done

test: testgtk
	builddir=`pwd`; cd $(top_builddir); top_builddir=`pwd`; \
	cd $$builddir; cd $(srcdir); \
	$(SHELL) $$top_builddir/libtool --mode=execute $$builddir/testgtk

test-debug: testgtk
	builddir=`pwd`; cd $(top_builddir); top_builddir=`pwd`; \
	cd $$builddir; cd $(srcdir); \
	$(SHELL) $$top_builddir/libtool --mode=execute gdb $$builddir/testgtk
