# This file is generated by gyp; do not edit.

export builddir_name ?= trunk/src/modules/out
.PHONY: all
all:
	$(MAKE) -C ../.. aec_sse2 PCM16B video_processing_sse2 G711 G722 g711_test G722Test webrtc_i420 udp_transport rtp_rtcp iSAC iSACFix iLBC agc apm_util ns_fix CNG RTPjitter test_fec iSACSwitchSampRateTest iSACtest iSACAPITest iSACFixtest iLBCtest ns aecm aec audio_device NetEq NetEqTestTools audioproc_debug_proto audioproc_unittest_proto audio_coding_module RTPanalyze RTPchange RTPencode RTPtimeshift RTPcat NetEqRTPplay video_codecs_test_framework test_framework audio_processing unpack_aecdump test_rtp_rtcp_api cng_unittests udp_transport_unittests neteq_unittests g722_unittests audio_coding_unittests pcm16b_unittests video_codecs_test_framework_unittests test_bwe g711_unittests rtp_rtcp_unittests audio_coding_module_test audio_conference_mixer audioproc_unittest audioproc audio_conference_mixer_unittests webrtc_vp8 vp8_test vp8_unittests webrtc_video_coding video_codecs_test_framework_integrationtests video_coding_unittests webrtc_utility video_quality_measurement webrtc_utility_unittests video_render_module audio_device_test_api audio_device_test_func media_file video_processing video_capture_module video_render_module_test media_file_unittests video_coding_test video_processing_unittests video_capture_module_test
