#if defined(PJ_BUILD_DLL)

TARGET		pjmedia.dll
TARGETTYPE	dll
UID		0x0 0xA0000004

CAPABILITY	None
LIBRARY		null_audio.lib pjsdp.lib pjnath.lib pjlib_util.lib pjlib.lib esock.lib insock.lib charconv.lib euser.lib estlib.lib
MACRO		PJ_DLL
MACRO		PJ_EXPORTING

DEFFILE		.\pjmedia.def

#else

TARGET 		pjmedia.lib
TARGETTYPE 	lib

#endif

SOURCEPATH	..\pjmedia\src\pjmedia

//OPTION		CW -lang c++

MACRO		PJ_M_I386=1
MACRO		PJ_SYMBIAN=1

//
// Platform independent source
//

SOURCE		alaw_ulaw.c
SOURCE		alaw_ulaw_table.c
SOURCE		bidirectional.c
SOURCE		clock_thread.c
SOURCE		codec.c
SOURCE		conference.c
SOURCE		echo_common.c
SOURCE		echo_port.c
SOURCE		echo_suppress.c
SOURCE		endpoint.c
SOURCE		errno.c
SOURCE		delaybuf.c
SOURCE		g711.c
SOURCE		jbuf.c
SOURCE		master_port.c
SOURCE		mem_capture.c
SOURCE		mem_player.c
SOURCE		null_port.c
SOURCE		plc_common.c
SOURCE		port.c
SOURCE		resample_port.c
SOURCE		resample_resample.c
SOURCE		rtcp.c
SOURCE		rtcp_xr.c
SOURCE		rtp.c
//SDP files are in pjsdp.mmp: sdp.c, sdp_cmp.c, sdp_neg.c
SOURCE		session.c
SOURCE		silencedet.c
SOURCE		sound_port.c
SOURCE		splitcomb.c
SOURCE		stereo_port.c
SOURCE		stream.c
SOURCE		tonegen.c
SOURCE		transport_ice.c
SOURCE		transport_udp.c
SOURCE		wav_player.c
SOURCE		wav_playlist.c
SOURCE		wav_writer.c
SOURCE		wave.c
SOURCE		wsola.c

//
// Symbian specific
// These are on separate project
//
//SOURCE		symbian_sound.cpp
//SOURCE		null_sound.c


//
// Header files
//


SYSTEMINCLUDE	..\pjmedia\include
SYSTEMINCLUDE	..\pjlib\include 
SYSTEMINCLUDE	..\pjlib-util\include 
SYSTEMINCLUDE	..\pjnath\include 

SYSTEMINCLUDE	\epoc32\include
SYSTEMINCLUDE	\epoc32\include\libc
//SYSTEMINCLUDE	\epoc32\include\mmf\plugin


