if HAVE_GST_CHECK
SUBDIRS_CHECK = check files
else
SUBDIRS_CHECK =
endif

if USE_X
SUBDIRS_ICLES = icles
else
SUBDIRS_ICLES =
endif

if BUILD_EXAMPLES
SUBDIR_EXAMPLES = examples
else
SUBDIR_EXAMPLES =
endif

SUBDIRS = $(SUBDIRS_CHECK) $(SUBDIRS_ICLES) $(SUBDIR_EXAMPLES)

DIST_SUBDIRS = check icles examples files

