if USE_ASSRENDER
ASSRENDER_DIR = assrender
else
ASSRENDER_DIR =
endif

if USE_AOM
AOM_DIR= aom
else
AOM_DIR=
endif

if USE_VOAMRWBENC
VOAMRWBENC_DIR = voamrwbenc
else
VOAMRWBENC_DIR =
endif

if USE_BS2B
BS2B_DIR=bs2b
else
BS2B_DIR=
endif

if USE_BZ2
BZ2_DIR=bz2
else
BZ2_DIR=
endif

if USE_LCMS2
COLORMANAGEMENT_DIR=colormanagement
else
COLORMANAGEMENT_DIR=
endif

if USE_CHROMAPRINT
CHROMAPRINT_DIR=chromaprint
else
CHROMAPRINT_DIR=
endif

if USE_CURL
CURL_DIR=curl
else
CURL_DIR=
endif

if USE_DASH
DASH_DIR=dash
else
DASH_DIR=
endif

if USE_DC1394
DC1394_DIR=dc1394
else
DC1394_DIR=
endif

if USE_DIRECTFB
DIRECTFB_DIR=directfb
else
DIRECTFB_DIR=
endif

if USE_WAYLAND
WAYLAND_DIR=wayland
else
WAYLAND_DIR=
endif

if USE_DAALA
DAALA_DIR=daala
else
DAALA_DIR=
endif

if USE_DTS
DTS_DIR=dts
else
DTS_DIR=
endif

if USE_GL
GL_DIR=gl
else
GL_DIR=
endif

if USE_RESINDVD
 RESINDVD_DIR = resindvd
else
 RESINDVD_DIR =
endif

if USE_FAAC
FAAC_DIR=faac
else
FAAC_DIR=
endif

if USE_FAAD
 FAAD_DIR=faad
else
 FAAD_DIR=
endif

if USE_FDK_AAC
 FDK_AAC_DIR=fdkaac
else
 FDK_AAC_DIR=
endif

if USE_VOAACENC
 VOAACENC_DIR=voaacenc
else
 VOAACENC_DIR=
endif

if USE_FLITE
FLITE_DIR=flite
else
FLITE_DIR=
endif

#if USE_G729
#G729_DIR=g729
#else
G729_DIR=
#endif

if USE_GSM
GSM_DIR=gsm
else
GSM_DIR=
endif

if USE_IQA
IQA_DIR = iqa
else
IQA_DIR =
endif

if USE_KATE
KATE_DIR=kate
else
KATE_DIR=
endif

if USE_LADSPA
LADSPA_DIR = ladspa
else
LADSPA_DIR =
endif

if USE_LV2
LV2_DIR = lv2
else
LV2_DIR =
endif

if USE_LIBDE265
LIBDE265_DIR = libde265
else
LIBDE265_DIR =
endif

if USE_LIBMMS
LIBMMS_DIR=libmms
else
LIBMMS_DIR=
endif

if USE_MODPLUG
MODPLUG_DIR=modplug
else
MODPLUG_DIR=
endif

if USE_MPEG2ENC
MPEG2ENC_DIR=mpeg2enc
else
MPEG2ENC_DIR=
endif

if USE_MPLEX
MPLEX_DIR=mplex
else
MPLEX_DIR=
endif

if USE_MUSEPACK
MUSEPACK_DIR=musepack
else
MUSEPACK_DIR=
endif

if USE_NEON
NEON_DIR=neon
else
NEON_DIR=
endif

if USE_OFA
OFA_DIR=ofa
else
OFA_DIR=
endif

if USE_OPENAL
OPENAL_DIR=openal
else
OPENAL_DIR=
endif

if USE_OPENCV
OPENCV_DIR=opencv
else
OPENCV_DIR=
endif

if USE_OPENEXR
OPENEXR_DIR = openexr
else
OPENEXR_DIR =
endif

if USE_OPENH264
OPENH264_DIR = openh264
else
OPENH264_DIR =
endif

if USE_OPENMPT
OPENMPT_DIR=openmpt
else
OPENMPT_DIR=
endif

if USE_OPENNI2
OPENNI2_DIR=openni2
else
OPENNI2_DIR=
endif

if USE_OPENJPEG
OPENJPEG_DIR = openjpeg
else
OPENJPEG_DIR =
endif

if USE_OPUS
OPUS_DIR=opus
else
OPUS_DIR=
endif

if USE_RSVG
RSVG_DIR=rsvg
else
RSVG_DIR=
endif

if USE_WILDMIDI
WILDMIDI_DIR=wildmidi
endif

if !USE_WILDMIDI
WILDMIDI_DIR=
endif

if USE_FLUIDSYNTH
FLUIDSYNTH_DIR=fluidsynth
endif

if USE_SBC
SBC_DIR=sbc
else
SBC_DIR=
endif

if USE_SCHRO
SCHRO_DIR=schroedinger
else
SCHRO_DIR=
endif

if USE_SMOOTHSTREAMING
SMOOTHSTREAMING_DIR = smoothstreaming
else
SMOOTHSTREAMING_DIR =
endif

# if USE_SMOOTHWAVE
# SMOOTHWAVE_DIR=smoothwave
# else
SMOOTHWAVE_DIR=
# endif

if USE_SNDFILE
SNDFILE_DIR=sndfile
else
SNDFILE_DIR=
endif

if USE_SOUNDTOUCH
SOUNDTOUCH_DIR=soundtouch
else
SOUNDTOUCH_DIR=
endif

if USE_SPANDSP
SPANDSP_DIR = spandsp
else
SPANDSP_DIR =
endif

if USE_SPC
SPC_DIR=spc
else
SPC_DIR=
endif

if USE_SRT
SRT_DIR=srt
else
SRT_DIR=
endif

if USE_SRTP
SRTP_DIR=srtp
else
SRTP_DIR=
endif

if USE_GME
GME_DIR=gme
else
GME_DIR=
endif

if USE_TELETEXTDEC
TELETEXTDEC_DIR=teletextdec
else
TELETEXTDEC_DIR=
endif

if USE_ZBAR
ZBAR_DIR=zbar
else
ZBAR_DIR=
endif

if USE_RTMP
RTMP_DIR = rtmp
else
RTMP_DIR =
endif

if USE_HLS
HLS_DIR = hls
else
HLS_DIR =
endif

if USE_WEBP
WEBP_DIR=webp
else
WEBP_DIR=
endif

if USE_X265
X265_DIR=x265
else
X265_DIR=
endif

if USE_DTLS
DTLS_DIR=dtls
else
DTLS_DIR=
endif

if USE_VULKAN
VULKAN_DIR=vulkan
else
VULKAN_DIR=
endif

if USE_WEBRTCDSP
WEBRTCDSP_DIR=webrtcdsp
else
WEBRTCDSP_DIR=
endif

if USE_WEBRTC
WEBRTC_DIR=webrtc
else
WEBRTC_DIR=
endif

if USE_TTML
TTML_DIR=ttml
else
TTML_DIR=
endif

SUBDIRS=\
	$(VOAACENC_DIR) \
	$(ASSRENDER_DIR) \
	$(AOM_DIR) \
	$(VOAMRWBENC_DIR) \
	$(AUDIOFILE_DIR) \
	$(BS2B_DIR) \
	$(BZ2_DIR) \
	$(COLORMANAGEMENT_DIR) \
	$(CHROMAPRINT_DIR) \
	$(CURL_DIR) \
	$(DASH_DIR) \
	$(DC1394_DIR) \
	$(DIRECTFB_DIR) \
	$(WAYLAND_DIR) \
	$(DAALA_DIR) \
	$(DTS_DIR) \
	$(RESINDVD_DIR) \
	$(GL_DIR) \
	$(FAAC_DIR) \
	$(FAAD_DIR) \
	$(FDK_AAC_DIR) \
	$(FLITE_DIR) \
	$(FLUIDSYNTH_DIR) \
	$(GSM_DIR) \
	$(G729_DIR) \
	$(IQA_DIR) \
	$(KATE_DIR) \
	$(LADSPA_DIR) \
	$(LV2_DIR) \
	$(LIBDE265_DIR) \
	$(LIBMMS_DIR) \
	$(MODPLUG_DIR) \
	$(MPEG2ENC_DIR) \
	$(MPLEX_DIR) \
	$(MUSEPACK_DIR) \
	$(NEON_DIR) \
	$(OFA_DIR) \
	$(OPENAL_DIR) \
	$(OPENCV_DIR) \
	$(OPENEXR_DIR) \
	$(OPENH264_DIR) \
	$(OPENJPEG_DIR) \
	$(OPENMPT_DIR) \
	$(OPENNI2_DIR) \
	$(OPUS_DIR) \
	$(RSVG_DIR) \
	$(SBC_DIR) \
	$(SCHRO_DIR) \
	$(SMOOTHSTREAMING_DIR) \
	$(SMOOTHWAVE_DIR) \
	$(SNDFILE_DIR) \
	$(SOUNDTOUCH_DIR) \
	$(SPANDSP_DIR) \
	$(GME_DIR) \
	$(SPC_DIR) \
	$(SRT_DIR) \
	$(SRTP_DIR) \
	$(TELETEXTDEC_DIR) \
	$(WILDMIDI_DIR) \
	$(ZBAR_DIR) \
	$(RTMP_DIR) \
	$(HLS_DIR) \
	$(WEBP_DIR) \
	$(X265_DIR) \
	$(DTLS_DIR) \
	$(VULKAN_DIR) \
	$(WEBRTCDSP_DIR) \
	$(TTML_DIR) \
	$(WEBRTC_DIR)

DIST_SUBDIRS = \
	assrender \
	aom \
	bs2b \
	bz2 \
	colormanagement \
	chromaprint \
	curl \
	dash \
	dc1394 \
	directfb \
	wayland \
	faac \
	faad \
	fdkaac \
	flite \
	fluidsynth \
	gsm \
	hls \
	iqa \
	ladspa \
	kate \
	libde265 \
	libmms \
	lv2 \
	daala \
	dts \
	gl \
	modplug \
	mpeg2enc \
	mplex \
	musepack \
	neon \
	ofa \
	openal \
	opencv \
	openexr \
	openh264 \
	openmpt \
	openni2 \
	openjpeg \
	opus \
	rsvg \
	resindvd \
	sbc \
	schroedinger \
	smoothstreaming \
	sndfile \
	soundtouch \
	spandsp \
	spc \
	srt \
	srtp \
	gme \
	teletextdec \
	wildmidi \
	voaacenc \
	voamrwbenc \
	zbar \
	rtmp \
	webp \
	x265 \
	dtls \
	vulkan \
	webrtcdsp \
	ttml \
	webrtc

include $(top_srcdir)/common/parallel-subdirs.mak
