SUBDIRS = glade importer

INCLUDES = -O								\
	-I$(top_srcdir)/widgets						\
	-I$(top_srcdir)/widgets/misc					\
	-I$(top_srcdir)							\
	$(BONOBO_GNOME_CFLAGS)						\
	$(BONOBO_CONF_CFLAGS)						\
	$(EXTRA_GNOME_CFLAGS)						\
	$(GTKHTML_CFLAGS)						\
	-DEVOLUTION_IMAGES=\""$(datadir)/images/evolution"\"		\
	-DEVOLUTION_LOCALEDIR=\""$(localedir)"\"   			\
	-DEVOLUTION_DATADIR=\""$(datadir)"\"            		\
	-DEVOLUTION_GLADEDIR=\"$(datadir)/evolution/glade\"		\
	-DEVOLUTION_ETSPECDIR=\""$(etspecdir)"\"			\
	-DG_LOG_DOMAIN=\"evolution-shell\"

# CORBA stuff

IDLS = \
	Evolution-Activity.idl			\
	Evolution-Offline.idl			\
	Evolution-Session.idl			\
	Evolution-Shell.idl			\
	Evolution-ShellComponent.idl		\
	Evolution-ShellComponentDnd.idl		\
	Evolution-ShellView.idl			\
	Evolution-Shortcuts.idl			\
	Evolution-Storage.idl			\
	Evolution-StorageSetView.idl		\
	Evolution-Wizard.idl			\
	Evolution-common.idl			\
	Evolution.idl

IDL_GENERATED = \
	Evolution.h		\
	Evolution-common.c	\
	Evolution-skels.c	\
	Evolution-stubs.c

Evolution-impl.o: Evolution.h

$(IDL_GENERATED): $(IDLS)
	$(ORBIT_IDL) -I $(srcdir) -I $(datadir)/idl `$(GNOME_CONFIG) --cflags idl`	\
		$(srcdir)/Evolution.idl

# IDL install

idldir = $(datadir)/idl

idl_DATA = $(IDLS)

# Shell library

lib_LTLIBRARIES =	\
	libeshell.la

eshellincludedir = $(includedir)/evolution/shell

eshellinclude_HEADERS = 			\
	Evolution.h				\
	e-folder-tree.h				\
	evolution-activity-client.h		\
	evolution-session.h			\
	evolution-shell-client.h		\
	evolution-shell-component-client.h	\
	evolution-shell-component.h		\
	evolution-shell-component-dnd.h		\
	evolution-shell-component-utils.h	\
	evolution-shell-view.h			\
	evolution-storage-listener.h		\
	evolution-storage-set-view-listener.h	\
	evolution-storage.h			\
	evolution-wizard.h

libeshell_la_SOURCES = 				\
	$(IDL_GENERATED)			\
	e-folder-tree.c				\
	evolution-activity-client.c		\
	evolution-session.c			\
	evolution-shell-client.c		\
	evolution-shell-component-client.c	\
	evolution-shell-component.c		\
	evolution-shell-component-dnd.c		\
	evolution-shell-component-utils.c	\
	evolution-shell-view.c			\
	evolution-storage-listener.c		\
	evolution-storage-set-view-listener.c	\
	evolution-storage.c			\
	evolution-wizard.c			\
	$(eshellinclude_HEADERS)

# Evolution executable

bin_PROGRAMS = evolution

evolution_SOURCES =				\
	e-activity-handler.c			\
	e-activity-handler.h			\
	e-component-registry.c			\
	e-component-registry.h			\
	e-corba-shortcuts.c			\
	e-corba-shortcuts.h			\
	e-corba-storage-registry.c		\
	e-corba-storage-registry.h		\
	e-corba-storage.c			\
	e-corba-storage.h			\
	e-folder-type-registry.c		\
	e-folder-type-registry.h		\
	e-folder.c				\
	e-folder.h				\
	e-gray-bar.c				\
	e-gray-bar.h				\
	e-local-folder.c			\
	e-local-folder.h			\
	e-local-storage.c			\
	e-local-storage.h			\
	e-setup.c				\
	e-setup.h				\
	e-shell-about-box.h			\
	e-shell-about-box.c			\
	e-shell-constants.h			\
	e-shell-folder-commands.c		\
	e-shell-folder-commands.h		\
	e-shell-folder-creation-dialog.c	\
	e-shell-folder-creation-dialog.h	\
	e-shell-folder-selection-dialog.c	\
	e-shell-folder-selection-dialog.h	\
	e-shell-folder-title-bar.c		\
	e-shell-folder-title-bar.h		\
	e-shell-importer.c			\
	e-shell-importer.h			\
	e-shell-offline-handler.c		\
	e-shell-offline-handler.h		\
	e-shell-startup-wizard.c		\
	e-shell-startup-wizard.h		\
	e-shell-user-creatable-items-handler.c	\
	e-shell-user-creatable-items-handler.h	\
	e-shell-utils.c				\
	e-shell-utils.h				\
	e-shell-view-menu.c			\
	e-shell-view-menu.h			\
	e-shell-view.c				\
	e-shell-view.h				\
	e-shell.c				\
	e-shell.h				\
	e-shortcuts-view-model.c		\
	e-shortcuts-view-model.h		\
	e-shortcuts-view.c			\
	e-shortcuts-view.h			\
	e-shortcuts.c				\
	e-shortcuts.h				\
	e-splash.c				\
	e-splash.h				\
	e-storage-set-view.c			\
	e-storage-set-view.h			\
	e-storage-set.c				\
	e-storage-set.h				\
	e-storage.c				\
	e-storage.h				\
	e-summary-storage.c			\
	e-summary-storage.h			\
	e-task-bar.c				\
	e-task-bar.h				\
	e-task-widget.c				\
	e-task-widget.h				\
	e-uri-schema-registry.c			\
	e-uri-schema-registry.h			\
	evolution-storage-set-view.c		\
	evolution-storage-set-view.h		\
	evolution-storage-set-view-factory.c	\
	evolution-storage-set-view-factory.h	\
	main.c

evolution_LDADD =						\
	libeshell.la						\
	importer/libevolution-importer.la			\
	$(top_builddir)/widgets/e-timezone-dialog/libetimezonedialog.a	\
	$(top_builddir)/widgets/misc/libemiscwidgets.a		\
	$(top_builddir)/e-util/libeutil.la			\
	$(top_builddir)/libical/src/libical/libical.la		\
	$(EXTRA_GNOME_LIBS)					\
	$(GNOME_PRINT_LIBS)					\
	$(GTKHTML_LIBS)						\
	$(BONOBO_CONF_LIBS)					\
	$(BONOBO_GNOME_LIBS)

# Test component

noinst_PROGRAMS =			\
	evolution-test-component

evolution_test_component_SOURCES =	\
	evolution-test-component.c

evolution_test_component_LDADD = 	\
	libeshell.la			\
	$(EXTRA_GNOME_LIBS)		\
	$(GNOME_PRINT_LIBS)		\
	$(GTKHTML_LIBS)			\
	$(BONOBO_GNOME_LIBS)

install-test-component: evolution-test-component
	$(mkinstalldirs) $(DESTDIR)$(bindir)
	$(LIBTOOL) --mode=install $(INSTALL_PROGRAM) evolution-test-component $(DESTDIR)$(bindir)/evolution-test-component
	$(mkinstalldirs) $(DESTDIR)$(oafdir)
	$(INSTALL_DATA) $(srcdir)/GNOME_Evolution_TestComponent.oaf $(DESTDIR)$(oafdir)/GNOME_Evolution_TestComponent.oaf

# Misc stuff

oafdir = $(datadir)/oaf
oaf_in_files = GNOME_Evolution_Shell.oaf.in
oaf_DATA = $(oaf_in_files:.oaf.in=.oaf)

etspecdir = $(datadir)/evolution/etspec/
etspec_DATA = e-storage-set-view.etspec

@XML_I18N_MERGE_OAF_RULE@

EXTRA_DIST = 					\
	$(IDLS)					\
	$(oaf_in_files)				\
	$(oaf_DATA)				\
	$(etspec_DATA)				\
	GNOME_Evolution_TestComponent.oaf

# Purify support

if ENABLE_PURIFY

PLINK = $(LIBTOOL) --mode=link $(PURIFY) $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@

all-local: evolution.pure

evolution.pure: evolution
	@rm -f evolution.pure
	$(PLINK) $(evolution_LDFLAGS) $(evolution_OBJECTS) $(evolution_LDADD) $(LIBS)

endif

CLEANFILES = $(IDL_GENERATED)
BUILT_SOURCES = $(IDL_GENERATED)

dist-hook:
	cd $(distdir); rm -f $(BUILT_SOURCES)