diff options
author | David M. Lee <dlee@digium.com> | 2013-01-07 14:24:28 -0600 |
---|---|---|
committer | David M. Lee <dlee@digium.com> | 2013-01-07 14:24:28 -0600 |
commit | f3ab456a17af1c89a6e3be4d20c5944853df1cb0 (patch) | |
tree | d00e1a332cd038a6d906a1ea0ac91e1a4458e617 /build.symbian |
Import pjproject-2.0.1
Diffstat (limited to 'build.symbian')
43 files changed, 3313 insertions, 0 deletions
diff --git a/build.symbian/00.bat b/build.symbian/00.bat new file mode 100644 index 0000000..4d41259 --- /dev/null +++ b/build.symbian/00.bat @@ -0,0 +1,7 @@ +@rem set MWSym2Libraries=1 +@rem set EPOCROOT=\Symbian\9.1\S60_3rd\ +@rem set EPOCROOT=\Symbian\9.1\S60_3rd_MR_2\ +@rem set EPOCROOT=\Symbian\UIQ3SDK\ +@rem set EPOCROOT=\symbian\UIQ3.1\ +@rem set EPOCROOT=\symbian\9.2\S60_3rd_FP1\ +bldmake bldfiles diff --git a/build.symbian/01.bat b/build.symbian/01.bat new file mode 100644 index 0000000..e670ae6 --- /dev/null +++ b/build.symbian/01.bat @@ -0,0 +1,7 @@ +@rem call abld build -v vs6 udeb +@rem call abld build -v gcce urel +@rem call abld build winscw udeb +call abld build %1 %2 %3 %4 + + + diff --git a/build.symbian/bld.inf b/build.symbian/bld.inf new file mode 100644 index 0000000..7e26998 --- /dev/null +++ b/build.symbian/bld.inf @@ -0,0 +1,37 @@ +prj_platforms +winscw +armv5 +gcce + +prj_mmpfiles + +/* Libraries */ +pjlib.mmp +pjlib_util.mmp +pjnath.mmp +pjsdp.mmp +pjmedia.mmp +pjsip.mmp +pjsip_simple.mmp +pjsip_ua.mmp +pjsua_lib.mmp +libsrtp.mmp + +/* Codecs */ +libgsmcodec.mmp +libspeexcodec.mmp +libg7221codec.mmp +libpassthroughcodec.mmp + +/* Resample */ +libresample.mmp + +/* Audio device. */ +pjmedia_audiodev.mmp + +/* Applications */ +//symsndtest.mmp +symbian_ua.mmp +..\pjsip-apps\src\symbian_ua_gui\group\symbian_ua_gui.mmp +gnumakefile ..\pjsip-apps\src\symbian_ua_gui\group\Icons_aif_scalable_dc.mk +pjlib_test.mmp diff --git a/build.symbian/libg7221codec.mmp b/build.symbian/libg7221codec.mmp new file mode 100644 index 0000000..814fcae --- /dev/null +++ b/build.symbian/libg7221codec.mmp @@ -0,0 +1,56 @@ +TARGET libg7221codec.lib
+TARGETTYPE lib
+
+//OPTION CW -lang c++
+OPTION GCCE -O2 -fno-unit-at-a-time
+OPTION ARMCC --gnu
+
+MACRO PJ_M_I386=1
+MACRO PJ_SYMBIAN=1
+
+//
+// GSM codec third party source
+//
+
+SOURCEPATH ..\third_party\g7221\common
+
+SOURCE basic_op.c
+SOURCE common.c
+SOURCE huff_tab.c
+SOURCE tables.c
+
+SOURCEPATH ..\third_party\g7221\decode
+
+SOURCE coef2sam.c
+SOURCE dct4_s.c
+SOURCE decoder.c
+
+SOURCEPATH ..\third_party\g7221\encode
+
+SOURCE dct4_a.c
+SOURCE encoder.c
+SOURCE sam2coef.c
+
+
+//
+// GSM codec wrapper for pjmedia-codec
+//
+
+SOURCEPATH ..\pjmedia\src\pjmedia-codec
+SOURCE g7221.c
+
+//
+// Header files
+//
+
+
+SYSTEMINCLUDE ..\pjmedia\include
+SYSTEMINCLUDE ..\pjlib\include
+SYSTEMINCLUDE ..\third_party
+SYSTEMINCLUDE ..\third_party\g7221\common
+SYSTEMINCLUDE ..\third_party\g7221\decode
+SYSTEMINCLUDE ..\third_party\g7221\encode
+
+SYSTEMINCLUDE \epoc32\include
+SYSTEMINCLUDE \epoc32\include\libc
+
diff --git a/build.symbian/libgsmcodec.mmp b/build.symbian/libgsmcodec.mmp new file mode 100644 index 0000000..875555b --- /dev/null +++ b/build.symbian/libgsmcodec.mmp @@ -0,0 +1,72 @@ +#if defined(PJ_BUILD_DLL) + +TARGET libgsmcodec.dll +TARGETTYPE dll +UID 0x0 0xA000000F + +CAPABILITY None +LIBRARY pjlib.lib euser.lib estlib.lib +MACRO PJ_DLL +MACRO PJ_EXPORTING + +DEFFILE .\libgsmcodec.def + +#else + +TARGET libgsmcodec.lib +TARGETTYPE lib + +#endif + +//OPTION CW -lang c++ +OPTION ARMCC --gnu + +MACRO PJ_M_I386=1 +MACRO PJ_SYMBIAN=1 + +// +// GSM codec third party source +// + +SOURCEPATH ..\third_party\gsm\src + +SOURCE add.c +SOURCE code.c +SOURCE debug.c +SOURCE decode.c +SOURCE gsm_create.c +SOURCE gsm_decode.c +SOURCE gsm_destroy.c +SOURCE gsm_encode.c +SOURCE gsm_explode.c +SOURCE gsm_implode.c +SOURCE gsm_option.c +SOURCE gsm_print.c +SOURCE long_term.c +SOURCE lpc.c +SOURCE preprocess.c +SOURCE rpe.c +SOURCE short_term.c +SOURCE table.c + + +// +// GSM codec wrapper for pjmedia-codec +// + +SOURCEPATH ..\pjmedia\src\pjmedia-codec +SOURCE gsm.c + +// +// Header files +// + + +SYSTEMINCLUDE ..\pjmedia\include +SYSTEMINCLUDE ..\pjlib\include +SYSTEMINCLUDE ..\third_party\build\gsm +SYSTEMINCLUDE ..\third_party\gsm\inc + +SYSTEMINCLUDE \epoc32\include +SYSTEMINCLUDE \epoc32\include\libc + diff --git a/build.symbian/libpassthroughcodec.mmp b/build.symbian/libpassthroughcodec.mmp new file mode 100644 index 0000000..3a19117 --- /dev/null +++ b/build.symbian/libpassthroughcodec.mmp @@ -0,0 +1,27 @@ +TARGET libpassthroughcodec.lib +TARGETTYPE lib + +MACRO HAVE_CONFIG_H +MACRO PJ_M_I386=1 +MACRO PJ_SYMBIAN=1 + +// +// GCCE optimization setting +// +OPTION GCCE -O2 -fno-unit-at-a-time +OPTION ARMCC --gnu + +// +// Passthrough codecs wrapper for pjmedia-codec +// +SOURCEPATH ..\pjmedia\src\pjmedia-codec +SOURCE passthrough.c + +// +// Header files +// +SYSTEMINCLUDE ..\pjmedia\include +SYSTEMINCLUDE ..\pjlib\include + +SYSTEMINCLUDE \epoc32\include +SYSTEMINCLUDE \epoc32\include\libc diff --git a/build.symbian/libresample.mmp b/build.symbian/libresample.mmp new file mode 100644 index 0000000..0dd074f --- /dev/null +++ b/build.symbian/libresample.mmp @@ -0,0 +1,26 @@ +TARGET libresample.lib
+TARGETTYPE lib
+
+SOURCEPATH ..\third_party\resample\src
+
+//
+// GCCE optimization setting
+//
+OPTION GCCE -O2 -fno-unit-at-a-time
+OPTION ARMCC --gnu
+
+MACRO PJ_M_I386=1
+MACRO PJ_SYMBIAN=1
+
+MACRO RESAMPLE_HAS_SMALL_FILTER=1
+MACRO RESAMPLE_HAS_LARGE_FILTER=0
+
+SOURCE resamplesubs.c
+
+SYSTEMINCLUDE ..\third_party\resample\include
+SYSTEMINCLUDE ..\third_party\build\resample
+
+SYSTEMINCLUDE \epoc32\include
+SYSTEMINCLUDE \epoc32\include\libc
+
+
diff --git a/build.symbian/libspeexcodec.mmp b/build.symbian/libspeexcodec.mmp new file mode 100644 index 0000000..816d805 --- /dev/null +++ b/build.symbian/libspeexcodec.mmp @@ -0,0 +1,74 @@ +TARGET libspeexcodec.lib +TARGETTYPE lib + +MACRO HAVE_CONFIG_H +MACRO PJ_M_I386=1 +MACRO PJ_SYMBIAN=1 + +// +// GCCE optimization setting +// +OPTION GCCE -O2 -fno-unit-at-a-time +OPTION ARMCC --gnu + +// +// Speex files +// +SOURCEPATH ..\third_party\speex\libspeex + +SOURCE bits.c +SOURCE cb_search.c +SOURCE exc_5_64_table.c +SOURCE exc_5_256_table.c +SOURCE exc_8_128_table.c +SOURCE exc_10_16_table.c +SOURCE exc_10_32_table.c +SOURCE exc_20_32_table.c +SOURCE fftwrap.c +SOURCE filterbank.c +SOURCE filters.c +SOURCE gain_table.c +SOURCE gain_table_lbr.c +SOURCE hexc_10_32_table.c +SOURCE hexc_table.c +SOURCE high_lsp_tables.c +SOURCE kiss_fft.c +SOURCE kiss_fftr.c +SOURCE lpc.c +SOURCE lsp.c +SOURCE lsp_tables_nb.c +SOURCE ltp.c +SOURCE mdf.c +SOURCE modes.c +SOURCE modes_wb.c +SOURCE nb_celp.c +SOURCE preprocess.c +SOURCE quant_lsp.c +SOURCE sb_celp.c +SOURCE smallft.c +SOURCE speex.c +SOURCE speex_callbacks.c +SOURCE speex_header.c +SOURCE stereo.c +SOURCE vbr.c +SOURCE vq.c +SOURCE window.c + +// +// Speex codec wrapper for pjmedia-codec +// +SOURCEPATH ..\pjmedia\src\pjmedia-codec +SOURCE speex_codec.c + +// +// Header files +// +SYSTEMINCLUDE ..\third_party\speex\include\speex +SYSTEMINCLUDE ..\third_party\speex\include +SYSTEMINCLUDE ..\third_party\speex\symbian + +SYSTEMINCLUDE ..\pjmedia\include +SYSTEMINCLUDE ..\pjlib\include + +SYSTEMINCLUDE \epoc32\include +SYSTEMINCLUDE \epoc32\include\libc diff --git a/build.symbian/libsrtp.mmp b/build.symbian/libsrtp.mmp new file mode 100644 index 0000000..4309e6d --- /dev/null +++ b/build.symbian/libsrtp.mmp @@ -0,0 +1,60 @@ +TARGET libsrtp.lib +TARGETTYPE lib + +MACRO PJ_M_I386=1 +MACRO PJ_SYMBIAN=1 + +// +// GCCE optimization setting +// +OPTION GCCE -O2 -fno-unit-at-a-time +OPTION ARMCC --gnu + +// +// Speex files +// +SOURCEPATH ..\third_party\srtp + +SOURCE crypto\ae_xfm\xfm.c +SOURCE crypto\cipher\aes.c +SOURCE crypto\cipher\aes_cbc.c +SOURCE crypto\cipher\aes_icm.c +SOURCE crypto\cipher\cipher.c +SOURCE crypto\cipher\null_cipher.c +SOURCE crypto\hash\auth.c +SOURCE crypto\hash\hmac.c +SOURCE crypto\hash\null_auth.c +SOURCE crypto\hash\sha1.c +SOURCE crypto\kernel\alloc.c +SOURCE crypto\kernel\crypto_kernel.c +//SOURCE crypto\kernel\err.c +SOURCE crypto\kernel\key.c +SOURCE crypto\math\datatypes.c +SOURCE crypto\math\gf2_8.c +//SOURCE crypto\math\math.c +SOURCE crypto\math\stat.c +SOURCE crypto\replay\rdb.c +SOURCE crypto\replay\rdbx.c +//SOURCE crypto\replay\ut_sim.c +SOURCE crypto\rng\ctr_prng.c +SOURCE crypto\rng\prng.c +//SOURCE crypto\rng\rand_linux_kernel.c +SOURCE crypto\rng\rand_source.c +SOURCE pjlib\srtp_err.c +SOURCE srtp\srtp.c +SOURCE tables\aes_tables.c + +//SOURCEPATH ..\pjmedia\src\pjmedia + +//SOURCE transport_srtp.c + +// +// Header files +// +SYSTEMINCLUDE ..\third_party\srtp\include +SYSTEMINCLUDE ..\third_party\srtp\crypto\include +SYSTEMINCLUDE ..\third_party\build\srtp +SYSTEMINCLUDE ..\pjlib\include + +SYSTEMINCLUDE \epoc32\include +SYSTEMINCLUDE \epoc32\include\libc diff --git a/build.symbian/makedef.sh b/build.symbian/makedef.sh new file mode 100644 index 0000000..df90992 --- /dev/null +++ b/build.symbian/makedef.sh @@ -0,0 +1,80 @@ +#!/bin/sh
+
+MMP=$1
+if test "$MMP" == ""; then
+ echo "Usage: makedef.sh FILE.MMP"
+ echo " or makedef.sh all"
+ exit 1
+fi
+
+if test "$MMP" == "all"; then
+ . $0 pjlib.mmp
+ . $0 pjlib_util.mmp
+ . $0 pjnath.mmp
+ . $0 pjmedia.mmp
+ . $0 pjsdp.mmp
+ . $0 pjsip.mmp
+ . $0 pjsip_simple.mmp
+ . $0 pjsip_ua.mmp
+ . $0 pjsua_lib.mmp
+ . $0 symbian_audio.mmp
+ . $0 null_audio.mmp
+ exit 0
+fi
+
+if test -f $MMP; then
+ true
+else
+ echo "Unable to open $MMP"
+ exit 1
+fi
+
+TARGET=`grep -w '^TARGET' $MMP | awk '{print $2}' | awk -F '.' '{print $1}' | head -1`
+DEFFILE="${TARGET}U.def"
+SOURCES=`grep -w '^SOURCE' $MMP | awk '{print $2}' | tr '\\\\' '/'`
+SOURCEPATH=`grep -w '^SOURCEPATH' $MMP | tr '\\\\' '/' | awk '{print $2}'`
+INCPATH=`grep 'INCLUDE' $MMP | awk '{print $2}' | grep pj | tr '\\\\' '/'`
+INCLUDE=""
+for INC in $INCPATH; do
+ INCLUDE=`echo $INCLUDE -I$INC`
+done
+
+#-- debug --
+#echo TARGET=$TARGET
+#echo SOURCES=$SOURCES
+#echo SOURCEPATH=$SOURCEPATH
+#echo INCLUDE=$INCLUDE
+#-- end --
+
+echo > tmpnames.def
+
+echo "${TARGET}:"
+
+for file in $SOURCES; do
+ #SYMBOLS=`grep PJ_DEF ${SOURCEPATH}/$file | awk -F ')' '{print $2}' | awk -F '(' '{print $1}' | awk -F '=' '{print $1}' | tr -d '[:blank:]' | sort | uniq`
+ SYMBOLS=`
+ cpp -DPJ_SYMBIAN=1 -DPJ_DLL -DPJ_EXPORTING=1 $INCLUDE ${SOURCEPATH}/$file 2>&1 |
+ grep EXPORT_C |
+ sed 's/(/;/' |
+ sed 's/=/;/' |
+ awk -F ';' '{print $1}' |
+ awk '{print $NF}'`
+ echo Processing ${SOURCEPATH}/$file..
+ for SYM in $SYMBOLS; do
+ echo $SYM >> tmpnames.def
+ done
+done
+
+echo "Writing $DEFFILE"
+echo EXPORTS > $DEFFILE
+i=0
+for SYM in `cat tmpnames.def | sort | uniq`; do
+ echo " $SYM"
+ i=`expr $i + 1`
+ printf "\\t%-40s @ $i NONAME\\n" $SYM >> $DEFFILE
+done
+
+
+echo
+echo "Done. Total $i symbols exported in $DEFFILE."
+
diff --git a/build.symbian/null_audio.mmp b/build.symbian/null_audio.mmp new file mode 100644 index 0000000..de1dcbd --- /dev/null +++ b/build.symbian/null_audio.mmp @@ -0,0 +1,40 @@ +#if defined(PJ_BUILD_DLL) + +TARGET null_audio.dll +TARGETTYPE dll +UID 0x0 0xA0000000 + + +CAPABILITY None +LIBRARY pjlib.lib charconv.lib euser.lib estlib.lib +MACRO PJ_DLL +MACRO PJ_EXPORTING + +DEFFILE .\null_audio.def + +#else + +TARGET null_audio.lib +TARGETTYPE lib + +#endif + +SOURCEPATH ..\pjmedia\src\pjmedia + +OPTION CW -lang c++ +OPTION ARMCC --gnu + +MACRO PJ_M_I386=1 +MACRO PJ_SYMBIAN=1 + +// +// Platform independent source +// +SOURCE nullsound.c + +SYSTEMINCLUDE ..\pjlib\include +SYSTEMINCLUDE ..\pjmedia\include + +SYSTEMINCLUDE \epoc32\include +SYSTEMINCLUDE \epoc32\include\libc + diff --git a/build.symbian/null_audioU.def b/build.symbian/null_audioU.def new file mode 100644 index 0000000..883d5d8 --- /dev/null +++ b/build.symbian/null_audioU.def @@ -0,0 +1,12 @@ +EXPORTS + pjmedia_snd_deinit @ 1 NONAME + pjmedia_snd_get_dev_count @ 2 NONAME + pjmedia_snd_get_dev_info @ 3 NONAME + pjmedia_snd_init @ 4 NONAME + pjmedia_snd_open @ 5 NONAME + pjmedia_snd_open_player @ 6 NONAME + pjmedia_snd_open_rec @ 7 NONAME + pjmedia_snd_stream_close @ 8 NONAME + pjmedia_snd_stream_get_info @ 9 NONAME + pjmedia_snd_stream_start @ 10 NONAME + pjmedia_snd_stream_stop @ 11 NONAME diff --git a/build.symbian/pjlib.mmp b/build.symbian/pjlib.mmp new file mode 100644 index 0000000..e5c3107 --- /dev/null +++ b/build.symbian/pjlib.mmp @@ -0,0 +1,122 @@ +#if defined(PJ_BUILD_DLL) +TARGET pjlib.dll +TARGETTYPE dll +UID 0x0 0xA0000001 + +CAPABILITY NONE +LIBRARY esock.lib insock.lib charconv.lib euser.lib estlib.lib +MACRO PJ_DLL +MACRO PJ_EXPORTING + +DEFFILE .\pjlib.def + +#else + +TARGET pjlib.lib +TARGETTYPE lib + +#endif + +SOURCEPATH ..\pjlib\src\pj + +MACRO PJ_M_I386=1 +MACRO PJ_SYMBIAN=1 + +// Must compile as C++, otherwise exception would not work +OPTION CW -lang c++ +OPTION ARMCC --cpp --gnu +OPTION GCC -x c++ +OPTION GCCE -x c++ + +// +// Platform independent source +// +SOURCE activesock.c +SOURCE array.c +SOURCE config.c +SOURCE ctype.c +SOURCE errno.c +SOURCE fifobuf.c +SOURCE guid.c +SOURCE hash.c +SOURCE list.c +SOURCE lock.c +SOURCE string.c +SOURCE log.c +SOURCE os_info.c +SOURCE os_info_symbian.cpp +SOURCE os_time_common.c +SOURCE pool.c +SOURCE pool_buf.c +SOURCE pool_caching.c +SOURCE rand.c +SOURCE rbtree.c +SOURCE ssl_sock_common.c +SOURCE ssl_sock_dump.c +SOURCE sock_common.c +SOURCE sock_qos_common.c +SOURCE types.c + + +// +// Platform dependent source +// +SOURCE compat\string_compat.c +SOURCE addr_resolv_symbian.cpp +SOURCE exception_symbian.cpp +SOURCE file_access_unistd.c +SOURCE file_io_ansi.c +SOURCE guid_simple.c +SOURCE ioqueue_symbian.cpp +SOURCE ip_helper_symbian.cpp +SOURCE log_writer_symbian_console.cpp +SOURCE os_core_symbian.cpp +SOURCE os_error_symbian.cpp +SOURCE os_timestamp_common.c +SOURCE os_time_unix.c +SOURCE os_timestamp_posix.c +SOURCE pool_policy_new.cpp +SOURCE ssl_sock_symbian.cpp +SOURCE sock_symbian.cpp +SOURCE sock_select_symbian.cpp +SOURCE sock_qos_symbian.cpp +SOURCE timer_symbian.cpp +SOURCE unicode_symbian.cpp + +//DOCUMENT os_symbian.h + +//DOCUMENT pj\addr_resolv.h +//DOCUMENT pj\array.h +//DOCUMENT pj\assert.h +//DOCUMENT pj\config.h +//DOCUMENT pj\config_site.h +//DOCUMENT pj\config_site_sample.h +//DOCUMENT pj\ctype.h +//DOCUMENT pj\errno.h +//DOCUMENT pj\except.h +//DOCUMENT pj\file_access.h +//DOCUMENT pj\file_io.h +//DOCUMENT pj\guid.h +//DOCUMENT pj\hash.h +//DOCUMENT pj\ioqueue.h +//DOCUMENT pj\ip_helper.h +//DOCUMENT pj\list.h +//DOCUMENT pj\lock.h +//DOCUMENT pj\log.h +//DOCUMENT pj\os.h +//DOCUMENT pj\\pool.h +//DOCUMENT pj\\pool_buf.h +//DOCUMENT pj\rand.h +//DOCUMENT pj\rbtree.h +//DOCUMENT pj\sock.h +//DOCUMENT pj\sock_select.h +//DOCUMENT pj\string.h +//DOCUMENT pj\timer.h +//DOCUMENT pj\types.h +//DOCUMENT pj\unicode.h + +SYSTEMINCLUDE ..\pjlib\include +SYSTEMINCLUDE \epoc32\include +SYSTEMINCLUDE \epoc32\include\libc + + diff --git a/build.symbian/pjlibU.def b/build.symbian/pjlibU.def new file mode 100644 index 0000000..3ddcb40 --- /dev/null +++ b/build.symbian/pjlibU.def @@ -0,0 +1,323 @@ +EXPORTS + PJ_FD_CLR @ 1 NONAME + PJ_FD_COUNT @ 2 NONAME + PJ_FD_ISSET @ 3 NONAME + PJ_FD_SET @ 4 NONAME + PJ_FD_ZERO @ 5 NONAME + PJ_GUID_STRING_LENGTH @ 6 NONAME + PJ_NO_MEMORY_EXCEPTION @ 7 NONAME + PJ_VERSION @ 8 NONAME + pj_AF_INET @ 9 NONAME + pj_AF_INET6 @ 10 NONAME + pj_AF_IRDA @ 11 NONAME + pj_AF_PACKET @ 12 NONAME + pj_AF_UNIX @ 13 NONAME + pj_AF_UNSPEC @ 14 NONAME + pj_GUID_STRING_LENGTH @ 15 NONAME + pj_IPTOS_LOWDELAY @ 16 NONAME + pj_IPTOS_MINCOST @ 17 NONAME + pj_IPTOS_RELIABILITY @ 18 NONAME + pj_IPTOS_THROUGHPUT @ 19 NONAME + pj_IP_TOS @ 20 NONAME + pj_MSG_DONTROUTE @ 21 NONAME + pj_MSG_OOB @ 22 NONAME + pj_MSG_PEEK @ 23 NONAME + pj_NO_MEMORY_EXCEPTION @ 24 NONAME + pj_SOCK_DGRAM @ 25 NONAME + pj_SOCK_RAW @ 26 NONAME + pj_SOCK_RDM @ 27 NONAME + pj_SOCK_STREAM @ 28 NONAME + pj_SOL_IP @ 29 NONAME + pj_SOL_IPV6 @ 30 NONAME + pj_SOL_SOCKET @ 31 NONAME + pj_SOL_TCP @ 32 NONAME + pj_SOL_UDP @ 33 NONAME + pj_SO_RCVBUF @ 34 NONAME + pj_SO_SNDBUF @ 35 NONAME + pj_SO_TYPE @ 36 NONAME + pj_ansi_to_unicode @ 37 NONAME + pj_array_erase @ 38 NONAME + pj_array_find @ 39 NONAME + pj_array_insert @ 40 NONAME + pj_atexit @ 41 NONAME + pj_atomic_add @ 42 NONAME + pj_atomic_add_and_get @ 43 NONAME + pj_atomic_create @ 44 NONAME + pj_atomic_dec @ 45 NONAME + pj_atomic_dec_and_get @ 46 NONAME + pj_atomic_destroy @ 47 NONAME + pj_atomic_get @ 48 NONAME + pj_atomic_inc @ 49 NONAME + pj_atomic_inc_and_get @ 50 NONAME + pj_atomic_set @ 51 NONAME + pj_caching_pool_destroy @ 52 NONAME + pj_caching_pool_init @ 53 NONAME + pj_create_random_string @ 54 NONAME + pj_create_unique_string @ 55 NONAME + pj_dump_config @ 56 NONAME + pj_elapsed_cycle @ 57 NONAME + pj_elapsed_msec @ 58 NONAME + pj_elapsed_nanosec @ 59 NONAME + pj_elapsed_time @ 60 NONAME + pj_elapsed_usec @ 61 NONAME + pj_enter_critical_section @ 62 NONAME + pj_enum_ip_interface @ 63 NONAME + pj_enum_ip_route @ 64 NONAME + pj_exception_id_alloc @ 65 NONAME + pj_exception_id_free @ 66 NONAME + pj_exception_id_name @ 67 NONAME + pj_fifobuf_alloc @ 68 NONAME + pj_fifobuf_free @ 69 NONAME + pj_fifobuf_init @ 70 NONAME + pj_fifobuf_max_size @ 71 NONAME + pj_fifobuf_unalloc @ 72 NONAME + pj_file_close @ 73 NONAME + pj_file_delete @ 74 NONAME + pj_file_exists @ 75 NONAME + pj_file_flush @ 76 NONAME + pj_file_getpos @ 77 NONAME + pj_file_getstat @ 78 NONAME + pj_file_move @ 79 NONAME + pj_file_open @ 80 NONAME + pj_file_read @ 81 NONAME + pj_file_setpos @ 82 NONAME + pj_file_size @ 83 NONAME + pj_file_write @ 84 NONAME + pj_generate_unique_string @ 85 NONAME + pj_get_netos_error @ 86 NONAME + pj_get_os_error @ 87 NONAME + pj_get_timestamp @ 88 NONAME + pj_get_timestamp_freq @ 89 NONAME + pj_get_version @ 90 NONAME + pj_getaddrinfo @ 91 NONAME + pj_getdefaultipinterface @ 92 NONAME + pj_gethostaddr @ 93 NONAME + pj_gethostbyname @ 94 NONAME + pj_gethostip @ 95 NONAME + pj_gethostname @ 96 NONAME + pj_getpid @ 97 NONAME + pj_gettimeofday @ 98 NONAME + pj_hash_calc @ 99 NONAME + pj_hash_calc_tolower @ 100 NONAME + pj_hash_count @ 101 NONAME + pj_hash_create @ 102 NONAME + pj_hash_first @ 103 NONAME + pj_hash_get @ 104 NONAME + pj_hash_next @ 105 NONAME + pj_hash_set @ 106 NONAME + pj_hash_set_np @ 107 NONAME + pj_hash_this @ 108 NONAME + pj_htonl @ 109 NONAME + pj_htons @ 110 NONAME + pj_inet_addr @ 111 NONAME + pj_inet_addr2 @ 112 NONAME + pj_inet_aton @ 113 NONAME + pj_inet_ntoa @ 114 NONAME + pj_inet_ntop @ 115 NONAME + pj_inet_ntop2 @ 116 NONAME + pj_inet_pton @ 117 NONAME + pj_init @ 118 NONAME + pj_ioqueue_accept @ 119 NONAME + pj_ioqueue_connect @ 120 NONAME + pj_ioqueue_create @ 121 NONAME + pj_ioqueue_destroy @ 122 NONAME + pj_ioqueue_get_user_data @ 123 NONAME + pj_ioqueue_is_pending @ 124 NONAME + pj_ioqueue_name @ 125 NONAME + pj_ioqueue_op_key_init @ 126 NONAME + pj_ioqueue_poll @ 127 NONAME + pj_ioqueue_post_completion @ 128 NONAME + pj_ioqueue_recv @ 129 NONAME + pj_ioqueue_recvfrom @ 130 NONAME + pj_ioqueue_register_sock @ 131 NONAME + pj_ioqueue_send @ 132 NONAME + pj_ioqueue_sendto @ 133 NONAME + pj_ioqueue_set_lock @ 134 NONAME + pj_ioqueue_set_user_data @ 135 NONAME + pj_ioqueue_unregister @ 136 NONAME + pj_leave_critical_section @ 137 NONAME + pj_list_erase @ 138 NONAME + pj_list_find_node @ 139 NONAME + pj_list_insert_after @ 140 NONAME + pj_list_insert_before @ 141 NONAME + pj_list_insert_nodes_after @ 142 NONAME + pj_list_insert_nodes_before @ 143 NONAME + pj_list_merge_first @ 144 NONAME + pj_list_merge_last @ 145 NONAME + pj_list_search @ 146 NONAME + pj_list_size @ 147 NONAME + pj_lock_acquire @ 148 NONAME + pj_lock_create_null_mutex @ 149 NONAME + pj_lock_create_recursive_mutex @ 150 NONAME + pj_lock_create_semaphore @ 151 NONAME + pj_lock_create_simple_mutex @ 152 NONAME + pj_lock_destroy @ 153 NONAME + pj_lock_release @ 154 NONAME + pj_lock_tryacquire @ 155 NONAME + pj_log @ 156 NONAME + pj_log_1 @ 157 NONAME + pj_log_2 @ 158 NONAME + pj_log_3 @ 159 NONAME + pj_log_4 @ 160 NONAME + pj_log_5 @ 161 NONAME + pj_log_get_decor @ 162 NONAME + pj_log_get_level @ 163 NONAME + pj_log_get_log_func @ 164 NONAME + pj_log_set_decor @ 165 NONAME + pj_log_set_level @ 166 NONAME + pj_log_set_log_func @ 167 NONAME + pj_log_write @ 168 NONAME + pj_mutex_create @ 169 NONAME + pj_mutex_create_recursive @ 170 NONAME + pj_mutex_create_simple @ 171 NONAME + pj_mutex_destroy @ 172 NONAME + pj_mutex_lock @ 173 NONAME + pj_mutex_trylock @ 174 NONAME + pj_mutex_unlock @ 175 NONAME + pj_ntohl @ 176 NONAME + pj_ntohs @ 177 NONAME + pj_pool_alloc @ 178 NONAME + pj_pool_alloc_from_block @ 179 NONAME + pj_pool_allocate_find @ 180 NONAME + pj_pool_calloc @ 181 NONAME + pj_pool_create @ 182 NONAME + pj_pool_create_int @ 183 NONAME + pj_pool_create_on_buf @ 184 NONAME + pj_pool_destroy_int @ 185 NONAME + pj_pool_factory_default_policy @ 186 NONAME + pj_pool_factory_get_default_policy @ 187 NONAME + pj_pool_get_capacity @ 188 NONAME + pj_pool_get_used_size @ 189 NONAME + pj_pool_getobjname @ 190 NONAME + pj_pool_init_int @ 191 NONAME + pj_pool_release @ 192 NONAME + pj_pool_reset @ 193 NONAME + pj_rand @ 194 NONAME + pj_rbtree_erase @ 195 NONAME + pj_rbtree_find @ 196 NONAME + pj_rbtree_first @ 197 NONAME + pj_rbtree_init @ 198 NONAME + pj_rbtree_insert @ 199 NONAME + pj_rbtree_last @ 200 NONAME + pj_rbtree_max_height @ 201 NONAME + pj_rbtree_min_height @ 202 NONAME + pj_rbtree_next @ 203 NONAME + pj_rbtree_prev @ 204 NONAME + pj_register_strerror @ 205 NONAME + pj_rwmutex_create @ 206 NONAME + pj_rwmutex_destroy @ 207 NONAME + pj_rwmutex_lock_read @ 208 NONAME + pj_rwmutex_lock_write @ 209 NONAME + pj_rwmutex_unlock_read @ 210 NONAME + pj_rwmutex_unlock_write @ 211 NONAME + pj_sem_create @ 212 NONAME + pj_sem_destroy @ 213 NONAME + pj_sem_post @ 214 NONAME + pj_sem_trywait @ 215 NONAME + pj_sem_wait @ 216 NONAME + pj_set_netos_error @ 217 NONAME + pj_set_os_error @ 218 NONAME + pj_shutdown @ 219 NONAME + pj_sock_accept @ 220 NONAME + pj_sock_bind @ 221 NONAME + pj_sock_bind_in @ 222 NONAME + pj_sock_close @ 223 NONAME + pj_sock_connect @ 224 NONAME + pj_sock_getpeername @ 225 NONAME + pj_sock_getsockname @ 226 NONAME + pj_sock_getsockopt @ 227 NONAME + pj_sock_listen @ 228 NONAME + pj_sock_recv @ 229 NONAME + pj_sock_recvfrom @ 230 NONAME + pj_sock_select @ 231 NONAME + pj_sock_send @ 232 NONAME + pj_sock_sendto @ 233 NONAME + pj_sock_setsockopt @ 234 NONAME + pj_sock_shutdown @ 235 NONAME + pj_sock_socket @ 236 NONAME + pj_sockaddr_cmp @ 237 NONAME + pj_sockaddr_copy_addr @ 238 NONAME + pj_sockaddr_get_addr @ 239 NONAME + pj_sockaddr_get_addr_len @ 240 NONAME + pj_sockaddr_get_len @ 241 NONAME + pj_sockaddr_get_port @ 242 NONAME + pj_sockaddr_has_addr @ 243 NONAME + pj_sockaddr_in_get_addr @ 244 NONAME + pj_sockaddr_in_get_port @ 245 NONAME + pj_sockaddr_in_init @ 246 NONAME + pj_sockaddr_in_set_addr @ 247 NONAME + pj_sockaddr_in_set_port @ 248 NONAME + pj_sockaddr_in_set_str_addr @ 249 NONAME + pj_sockaddr_init @ 250 NONAME + pj_sockaddr_print @ 251 NONAME + pj_sockaddr_set_port @ 252 NONAME + pj_sockaddr_set_str_addr @ 253 NONAME + pj_srand @ 254 NONAME + pj_str @ 255 NONAME + pj_strassign @ 256 NONAME + pj_strcat @ 257 NONAME + pj_strcat2 @ 258 NONAME + pj_strcmp @ 259 NONAME + pj_strcmp2 @ 260 NONAME + pj_strcpy @ 261 NONAME + pj_strcpy2 @ 262 NONAME + pj_strdup @ 263 NONAME + pj_strdup2 @ 264 NONAME + pj_strdup2_with_null @ 265 NONAME + pj_strdup3 @ 266 NONAME + pj_strdup_with_null @ 267 NONAME + pj_strerror @ 268 NONAME + pj_stricmp @ 269 NONAME + pj_stricmp2 @ 270 NONAME + pj_strltrim @ 271 NONAME + pj_strncmp @ 272 NONAME + pj_strncmp2 @ 273 NONAME + pj_strncpy @ 274 NONAME + pj_strncpy_with_null @ 275 NONAME + pj_strnicmp @ 276 NONAME + pj_strnicmp2 @ 277 NONAME + pj_strrtrim @ 278 NONAME + pj_strtoul @ 279 NONAME + pj_strtoul2 @ 280 NONAME + pj_strtrim @ 281 NONAME + pj_symbianos_poll @ 282 NONAME + pj_symbianos_set_params @ 283 NONAME + pj_thread_check_stack @ 284 NONAME + pj_thread_create @ 285 NONAME + pj_thread_destroy @ 286 NONAME + pj_thread_get_name @ 287 NONAME + pj_thread_get_os_handle @ 288 NONAME + pj_thread_get_stack_info @ 289 NONAME + pj_thread_get_stack_max_usage @ 290 NONAME + pj_thread_is_registered @ 291 NONAME + pj_thread_join @ 292 NONAME + pj_thread_local_alloc @ 293 NONAME + pj_thread_local_free @ 294 NONAME + pj_thread_local_get @ 295 NONAME + pj_thread_local_set @ 296 NONAME + pj_thread_register @ 297 NONAME + pj_thread_resume @ 298 NONAME + pj_thread_sleep @ 299 NONAME + pj_thread_this @ 300 NONAME + pj_time_decode @ 301 NONAME + pj_time_encode @ 302 NONAME + pj_time_gmt_to_local @ 303 NONAME + pj_time_local_to_gmt @ 304 NONAME + pj_time_val_normalize @ 305 NONAME + pj_timer_entry_init @ 306 NONAME + pj_timer_heap_cancel @ 307 NONAME + pj_timer_heap_count @ 308 NONAME + pj_timer_heap_create @ 309 NONAME + pj_timer_heap_destroy @ 310 NONAME + pj_timer_heap_earliest_time @ 311 NONAME + pj_timer_heap_mem_size @ 312 NONAME + pj_timer_heap_poll @ 313 NONAME + pj_timer_heap_schedule @ 314 NONAME + pj_timer_heap_set_lock @ 315 NONAME + pj_timer_heap_set_max_timed_out_per_poll @ 316 NONAME + pj_unicode_to_ansi @ 317 NONAME + pj_utoa @ 318 NONAME + pj_utoa_pad @ 319 NONAME + platform_strerror @ 320 NONAME + snprintf @ 321 NONAME + vsnprintf @ 322 NONAME diff --git a/build.symbian/pjlib_test.mmp b/build.symbian/pjlib_test.mmp new file mode 100644 index 0000000..73f004b --- /dev/null +++ b/build.symbian/pjlib_test.mmp @@ -0,0 +1,83 @@ +TARGET pjlib_test.exe +TARGETTYPE exe +UID 0x0 0xA0000002 + + +SOURCEPATH ..\pjlib\src\pjlib-test + +MACRO PJ_M_I386=1 +MACRO PJ_SYMBIAN=1 + +// Must compile as C++, otherwise exception would not work +OPTION CW -lang c++ +OPTION ARMCC --cpp --gnu +OPTION GCC -x c++ +OPTION GCCE -x c++ + +#if defined(PJ_BUILD_DLL) +MACRO PJ_DLL +LIBRARY pjlib.lib +#else +STATICLIBRARY pjlib.lib +#endif + +// Test files + +SOURCE activesock.c +SOURCE atomic.c +SOURCE echo_clt.c +SOURCE errno.c +SOURCE exception_wrap.cpp +SOURCE fifobuf.c +SOURCE file.c +SOURCE hash_test.c +SOURCE ioq_perf.c +SOURCE ioq_tcp.c +SOURCE ioq_udp.c +SOURCE ioq_unreg.c +SOURCE list.c +SOURCE mutex.c +SOURCE os.c +SOURCE pool_wrap.cpp +SOURCE pool_perf.c +SOURCE rand.c +SOURCE rbtree.c +SOURCE select.c +SOURCE sleep.c +SOURCE sock.c +SOURCE sock_perf.c +SOURCE ssl_sock.c +SOURCE string.c +SOURCE test_wrap.cpp +SOURCE thread.c +SOURCE timer.c +SOURCE timestamp.c +SOURCE udp_echo_srv_ioqueue.c +SOURCE udp_echo_srv_sync.c +SOURCE util.c + +SOURCE main_symbian.cpp + +DOCUMENT test.h + +START RESOURCE pjlib_test_reg.rss + TARGETPATH \private\10003a3f\apps +END + +SYSTEMINCLUDE ..\pjlib\include + +SYSTEMINCLUDE \epoc32\include +SYSTEMINCLUDE \epoc32\include\libc + +LIBRARY esock.lib insock.lib charconv.lib euser.lib estlib.lib +LIBRARY securesocket.lib x509.lib crypto.lib x500.lib +LIBRARY hal.lib efsrv.lib + +#ifdef WINSCW +STATICLIBRARY eexe.lib ecrt0.lib +#endif + +// Need a bit of mem for logging in the app. +EPOCSTACKSIZE 32768 + +CAPABILITY NetworkServices LocalServices ReadUserData WriteUserData UserEnvironment diff --git a/build.symbian/pjlib_test.pkg b/build.symbian/pjlib_test.pkg new file mode 100644 index 0000000..e406415 --- /dev/null +++ b/build.symbian/pjlib_test.pkg @@ -0,0 +1,19 @@ +; pjlib_test.pkg
+
+; Languages
+&EN
+
+; Header
+;#{"pjlib_test"},(0x200235D3), 0, 1, 1
+#{"pjlib_test"},(0xA0000002), 0, 1, 1
+
+; Platform compatibility
+[0x101F7961], *, *, *,{"Series60ProductID"}
+
+; vendor
+%{"PJSIP"}
+:"PJSIP"
+
+; Target
+"$(EPOCROOT)Epoc32\release\$(PLATFORM)\$(TARGET)\pjlib_test.exe"-"!:\sys\bin\pjlib_test.exe"
+"$(EPOCROOT)Epoc32\data\z\private\10003a3f\apps\pjlib_test_reg.rSC"-"!:\private\10003a3f\import\apps\pjlib_test_reg.rSC"
diff --git a/build.symbian/pjlib_util.mmp b/build.symbian/pjlib_util.mmp new file mode 100644 index 0000000..fbf4b42 --- /dev/null +++ b/build.symbian/pjlib_util.mmp @@ -0,0 +1,83 @@ +#if defined(PJ_BUILD_DLL) +TARGET pjlib_util.dll +TARGETTYPE dll +UID 0x0 0xA0000003 + +CAPABILITY NONE +LIBRARY pjlib.lib esock.lib insock.lib charconv.lib euser.lib estlib.lib +MACRO PJ_DLL +MACRO PJ_EXPORTING + +DEFFILE .\pjlib_util.def + +#else + +TARGET pjlib_util.lib +TARGETTYPE lib + +#endif + +SOURCEPATH ..\pjlib-util\src\pjlib-util + +MACRO PJ_M_I386=1 +MACRO PJ_SYMBIAN=1 + +// Must compile as C++, otherwise exception would not work +OPTION CW -lang c++ +OPTION ARMCC --cpp --gnu +OPTION GCC -x c++ +OPTION GCCE -x c++ + +// +// PJLIB-UTIL files +// +SOURCE base64.c +SOURCE crc32.c +SOURCE dns.c +SOURCE dns_dump.c +SOURCE dns_server.c +SOURCE errno.c +SOURCE getopt.c +SOURCE hmac_md5.c +SOURCE hmac_sha1.c +SOURCE http_client.c +SOURCE md5.c +SOURCE pcap.c +SOURCE resolver_wrap.cpp +SOURCE scanner.c +SOURCE sha1.c +SOURCE srv_resolver.c +SOURCE string.c +SOURCE stun_simple.c +SOURCE stun_simple_client.c +SOURCE xml_wrap.cpp + +// +// Header files +// +//DOCUMENT pjlib-util\\config.h +//DOCUMENT pjlib-util\\crc32.h +//DOCUMENT pjlib-util\\dns.h +//DOCUMENT pjlib-util\\errno.h +//DOCUMENT pjlib-util\\getopt.h +//DOCUMENT pjlib-util\\hmac_md5.h +//DOCUMENT pjlib-util\hmac_sha1.h +//DOCUMENT pjlib-util\http_client.h +//DOCUMENT pjlib-util\md5.h +//DOCUMENT pjlib-util\resolver.h +//DOCUMENT pjlib-util\scanner.h +//DOCUMENT pjlib-util\sha1.h +//DOCUMENT pjlib-util\srv_resolver.h +//DOCUMENT pjlib-util\string.h +//DOCUMENT pjlib-util\stun_simple.h +//DOCUMENT pjlib-util\types.h +//DOCUMENT pjlib-util\xml.h + + +SYSTEMINCLUDE ..\pjlib\include +SYSTEMINCLUDE ..\pjlib-util\include + +SYSTEMINCLUDE \epoc32\include +SYSTEMINCLUDE \epoc32\include\libc + + diff --git a/build.symbian/pjlib_utilU.def b/build.symbian/pjlib_utilU.def new file mode 100644 index 0000000..3e482af --- /dev/null +++ b/build.symbian/pjlib_utilU.def @@ -0,0 +1,92 @@ +EXPORTS + pj_cis_add_alpha @ 1 NONAME + pj_cis_add_cis @ 2 NONAME + pj_cis_add_num @ 3 NONAME + pj_cis_add_range @ 4 NONAME + pj_cis_add_str @ 5 NONAME + pj_cis_buf_init @ 6 NONAME + pj_cis_del_range @ 7 NONAME + pj_cis_del_str @ 8 NONAME + pj_cis_dup @ 9 NONAME + pj_cis_init @ 10 NONAME + pj_cis_invert @ 11 NONAME + pj_crc32_calc @ 12 NONAME + pj_crc32_final @ 13 NONAME + pj_crc32_init @ 14 NONAME + pj_crc32_update @ 15 NONAME + pj_dns_dump_packet @ 16 NONAME + pj_dns_get_type_name @ 17 NONAME + pj_dns_make_query @ 18 NONAME + pj_dns_packet_dup @ 19 NONAME + pj_dns_parse_a_response @ 20 NONAME + pj_dns_parse_packet @ 21 NONAME + pj_dns_resolver_add_entry @ 22 NONAME + pj_dns_resolver_cancel_query @ 23 NONAME + pj_dns_resolver_create @ 24 NONAME + pj_dns_resolver_destroy @ 25 NONAME + pj_dns_resolver_dump @ 26 NONAME + pj_dns_resolver_get_cached_count @ 27 NONAME + pj_dns_resolver_get_settings @ 28 NONAME + pj_dns_resolver_handle_events @ 29 NONAME + pj_dns_resolver_set_ns @ 30 NONAME + pj_dns_resolver_set_settings @ 31 NONAME + pj_dns_resolver_start_query @ 32 NONAME + pj_dns_settings_default @ 33 NONAME + pj_dns_srv_resolve @ 34 NONAME + pj_hmac_md5 @ 35 NONAME + pj_hmac_md5_final @ 36 NONAME + pj_hmac_md5_init @ 37 NONAME + pj_hmac_md5_update @ 38 NONAME + pj_hmac_sha1 @ 39 NONAME + pj_hmac_sha1_final @ 40 NONAME + pj_hmac_sha1_init @ 41 NONAME + pj_hmac_sha1_update @ 42 NONAME + pj_md5_final @ 43 NONAME + pj_md5_init @ 44 NONAME + pj_md5_update @ 45 NONAME + pj_scan_advance_n @ 46 NONAME + pj_scan_fini @ 47 NONAME + pj_scan_get @ 48 NONAME + pj_scan_get_char @ 49 NONAME + pj_scan_get_n @ 50 NONAME + pj_scan_get_newline @ 51 NONAME + pj_scan_get_quote @ 52 NONAME + pj_scan_get_quotes @ 53 NONAME + pj_scan_get_unescape @ 54 NONAME + pj_scan_get_until @ 55 NONAME + pj_scan_get_until_ch @ 56 NONAME + pj_scan_get_until_chr @ 57 NONAME + pj_scan_init @ 58 NONAME + pj_scan_peek @ 59 NONAME + pj_scan_peek_n @ 60 NONAME + pj_scan_peek_until @ 61 NONAME + pj_scan_restore_state @ 62 NONAME + pj_scan_save_state @ 63 NONAME + pj_scan_skip_line @ 64 NONAME + pj_scan_skip_whitespace @ 65 NONAME + pj_scan_strcmp @ 66 NONAME + pj_scan_stricmp @ 67 NONAME + pj_scan_stricmp_alnum @ 68 NONAME + pj_sha1_final @ 69 NONAME + pj_sha1_init @ 70 NONAME + pj_sha1_update @ 71 NONAME + pj_str_unescape @ 72 NONAME + pj_strcpy_unescape @ 73 NONAME + pj_strncpy2_escape @ 74 NONAME + pj_strncpy_escape @ 75 NONAME + pj_xml_add_attr @ 76 NONAME + pj_xml_add_node @ 77 NONAME + pj_xml_attr_new @ 78 NONAME + pj_xml_clone @ 79 NONAME + pj_xml_find @ 80 NONAME + pj_xml_find_attr @ 81 NONAME + pj_xml_find_next_node @ 82 NONAME + pj_xml_find_node @ 83 NONAME + pj_xml_node_new @ 84 NONAME + pj_xml_parse @ 85 NONAME + pj_xml_print @ 86 NONAME + pjlib_util_init @ 87 NONAME + pjstun_create_bind_req @ 88 NONAME + pjstun_get_mapped_addr @ 89 NONAME + pjstun_msg_find_attr @ 90 NONAME + pjstun_parse_msg @ 91 NONAME diff --git a/build.symbian/pjmedia.mmp b/build.symbian/pjmedia.mmp new file mode 100644 index 0000000..45903fe --- /dev/null +++ b/build.symbian/pjmedia.mmp @@ -0,0 +1,136 @@ +#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 + +// +// GCCE optimization setting +// +OPTION GCCE -O2 -fno-unit-at-a-time + +MACRO PJ_M_I386=1 +MACRO PJ_SYMBIAN=1 + +// Must compile as C++, otherwise exception would not work +OPTION CW -lang c++ +OPTION ARMCC --cpp --gnu +OPTION GCC -x c++ +OPTION GCCE -x c++ + +// +// Platform independent source +// + +SOURCE alaw_ulaw.c +SOURCE alaw_ulaw_table.c +SOURCE avi_player.c +SOURCE bidirectional.c +SOURCE clock_thread.c +SOURCE codec.c +SOURCE conf_switch.c +SOURCE conference.c +SOURCE converter.c +SOURCE converter_libswscale.c +SOURCE delaybuf.c +SOURCE echo_common.c +SOURCE echo_port.c +SOURCE echo_suppress.c +SOURCE endpoint.c +SOURCE errno.c +SOURCE event.c +SOURCE format.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 // deprecated +SOURCE silencedet.c +SOURCE sound_port.c +SOURCE splitcomb.c +SOURCE stereo_port.c +SOURCE stream.c +SOURCE stream_common.c +SOURCE stream_info.c +SOURCE tonegen.c +SOURCE transport_adapter_sample.c +SOURCE transport_ice.c +SOURCE transport_udp.c +SOURCE transport_srtp.c +SOURCE types.c +SOURCE vid_codec.c +SOURCE vid_codec_util.c +SOURCE vid_port.c +SOURCE vid_stream.c +SOURCE vid_stream_info.c +SOURCE vid_tee.c +SOURCE wav_player.c +SOURCE wav_playlist.c +SOURCE wav_writer.c +SOURCE wave.c +SOURCE wsola.c + +// +// pjmedia-codec common files +// +SOURCEPATH ..\pjmedia\src\pjmedia-codec +SOURCE audio_codecs.c +SOURCE amr_sdp_match.c +SOURCE g7221_sdp_match.c +SOURCE h263_packetizer.c +SOURCE h264_packetizer.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 ..\third_party\srtp\include +SYSTEMINCLUDE ..\third_party\srtp\crypto\include +SYSTEMINCLUDE ..\third_party\build\srtp +SYSTEMINCLUDE .. + +SYSTEMINCLUDE \epoc32\include +SYSTEMINCLUDE \epoc32\include\libc +//SYSTEMINCLUDE \epoc32\include\mmf\plugin + + diff --git a/build.symbian/pjmediaU.def b/build.symbian/pjmediaU.def new file mode 100644 index 0000000..5d14f35 --- /dev/null +++ b/build.symbian/pjmediaU.def @@ -0,0 +1,193 @@ +EXPORTS + echo_supp_cancel_echo @ 1 NONAME + echo_supp_capture @ 2 NONAME + echo_supp_create @ 3 NONAME + echo_supp_destroy @ 4 NONAME + echo_supp_playback @ 5 NONAME + pjmedia_bidirectional_port_create @ 6 NONAME + pjmedia_calc_avg_signal @ 7 NONAME + pjmedia_clock_create @ 8 NONAME + pjmedia_clock_destroy @ 9 NONAME + pjmedia_clock_start @ 10 NONAME + pjmedia_clock_stop @ 11 NONAME + pjmedia_clock_wait @ 12 NONAME + pjmedia_codec_g711_deinit @ 13 NONAME + pjmedia_codec_g711_init @ 14 NONAME + pjmedia_codec_info_to_id @ 15 NONAME + pjmedia_codec_mgr_alloc_codec @ 16 NONAME + pjmedia_codec_mgr_dealloc_codec @ 17 NONAME + pjmedia_codec_mgr_enum_codecs @ 18 NONAME + pjmedia_codec_mgr_find_codecs_by_id @ 19 NONAME + pjmedia_codec_mgr_get_codec_info @ 20 NONAME + pjmedia_codec_mgr_get_default_param @ 21 NONAME + pjmedia_codec_mgr_init @ 22 NONAME + pjmedia_codec_mgr_register_factory @ 23 NONAME + pjmedia_codec_mgr_set_codec_priority @ 24 NONAME + pjmedia_codec_mgr_unregister_factory @ 25 NONAME + pjmedia_conf_add_passive_port @ 26 NONAME + pjmedia_conf_add_port @ 27 NONAME + pjmedia_conf_adjust_rx_level @ 28 NONAME + pjmedia_conf_adjust_tx_level @ 29 NONAME + pjmedia_conf_configure_port @ 30 NONAME + pjmedia_conf_connect_port @ 31 NONAME + pjmedia_conf_create @ 32 NONAME + pjmedia_conf_destroy @ 33 NONAME + pjmedia_conf_disconnect_port @ 34 NONAME + pjmedia_conf_enum_ports @ 35 NONAME + pjmedia_conf_get_connect_count @ 36 NONAME + pjmedia_conf_get_master_port @ 37 NONAME + pjmedia_conf_get_port_count @ 38 NONAME + pjmedia_conf_get_port_info @ 39 NONAME + pjmedia_conf_get_ports_info @ 40 NONAME + pjmedia_conf_get_signal_level @ 41 NONAME + pjmedia_conf_remove_port @ 42 NONAME + pjmedia_conf_set_port0_name @ 43 NONAME + pjmedia_delay_buf_create @ 44 NONAME + pjmedia_delay_buf_get @ 45 NONAME + pjmedia_delay_buf_put @ 46 NONAME + pjmedia_echo_cancel @ 47 NONAME + pjmedia_echo_capture @ 48 NONAME + pjmedia_echo_create @ 49 NONAME + pjmedia_echo_destroy @ 50 NONAME + pjmedia_echo_playback @ 51 NONAME + pjmedia_echo_port_create @ 52 NONAME + pjmedia_endpt_create @ 53 NONAME + pjmedia_endpt_create_pool @ 54 NONAME + pjmedia_endpt_create_sdp @ 55 NONAME + pjmedia_endpt_destroy @ 56 NONAME + pjmedia_endpt_dump @ 57 NONAME + pjmedia_endpt_get_codec_mgr @ 58 NONAME + pjmedia_endpt_get_ioqueue @ 59 NONAME + pjmedia_endpt_get_thread @ 60 NONAME + pjmedia_endpt_get_thread_count @ 61 NONAME + pjmedia_ice_create @ 62 NONAME + pjmedia_ice_destroy @ 63 NONAME + pjmedia_ice_get_comp @ 64 NONAME + pjmedia_ice_get_init_status @ 65 NONAME + pjmedia_ice_init_ice @ 66 NONAME + pjmedia_ice_modify_sdp @ 67 NONAME + pjmedia_ice_simulate_lost @ 68 NONAME + pjmedia_ice_start_ice @ 69 NONAME + pjmedia_ice_start_init @ 70 NONAME + pjmedia_ice_stop_ice @ 71 NONAME + pjmedia_jbuf_create @ 72 NONAME + pjmedia_jbuf_destroy @ 73 NONAME + pjmedia_jbuf_get_frame @ 74 NONAME + pjmedia_jbuf_get_state @ 75 NONAME + pjmedia_jbuf_put_frame @ 76 NONAME + pjmedia_jbuf_reset @ 77 NONAME + pjmedia_jbuf_set_adaptive @ 78 NONAME + pjmedia_jbuf_set_fixed @ 79 NONAME + pjmedia_master_port_create @ 80 NONAME + pjmedia_master_port_destroy @ 81 NONAME + pjmedia_master_port_get_dport @ 82 NONAME + pjmedia_master_port_get_uport @ 83 NONAME + pjmedia_master_port_set_dport @ 84 NONAME + pjmedia_master_port_set_uport @ 85 NONAME + pjmedia_master_port_start @ 86 NONAME + pjmedia_master_port_stop @ 87 NONAME + pjmedia_mem_capture_create @ 88 NONAME + pjmedia_mem_capture_get_size @ 89 NONAME + pjmedia_mem_capture_set_eof_cb @ 90 NONAME + pjmedia_mem_player_create @ 91 NONAME + pjmedia_mem_player_set_eof_cb @ 92 NONAME + pjmedia_null_port_create @ 93 NONAME + pjmedia_plc_create @ 94 NONAME + pjmedia_plc_generate @ 95 NONAME + pjmedia_plc_save @ 96 NONAME + pjmedia_port_destroy @ 97 NONAME + pjmedia_port_get_frame @ 98 NONAME + pjmedia_port_info_init @ 99 NONAME + pjmedia_port_put_frame @ 100 NONAME + pjmedia_resample_create @ 101 NONAME + pjmedia_resample_destroy @ 102 NONAME + pjmedia_resample_get_input_size @ 103 NONAME + pjmedia_resample_port_create @ 104 NONAME + pjmedia_resample_run @ 105 NONAME + pjmedia_rtcp_build_rtcp @ 106 NONAME + pjmedia_rtcp_fini @ 107 NONAME + pjmedia_rtcp_get_ntp_time @ 108 NONAME + pjmedia_rtcp_init @ 109 NONAME + pjmedia_rtcp_rx_rtcp @ 110 NONAME + pjmedia_rtcp_rx_rtp @ 111 NONAME + pjmedia_rtcp_tx_rtp @ 112 NONAME + pjmedia_rtp_decode_rtp @ 113 NONAME + pjmedia_rtp_encode_rtp @ 114 NONAME + pjmedia_rtp_session_init @ 115 NONAME + pjmedia_rtp_session_update @ 116 NONAME + pjmedia_session_check_dtmf @ 117 NONAME + pjmedia_session_create @ 118 NONAME + pjmedia_session_destroy @ 119 NONAME + pjmedia_session_dial_dtmf @ 120 NONAME + pjmedia_session_enum_streams @ 121 NONAME + pjmedia_session_get_dtmf @ 122 NONAME + pjmedia_session_get_info @ 123 NONAME + pjmedia_session_get_port @ 124 NONAME + pjmedia_session_get_stream_stat @ 125 NONAME + pjmedia_session_info_from_sdp @ 126 NONAME + pjmedia_session_pause @ 127 NONAME + pjmedia_session_pause_stream @ 128 NONAME + pjmedia_session_resume @ 129 NONAME + pjmedia_session_resume_stream @ 130 NONAME + pjmedia_session_set_dtmf_callback @ 131 NONAME + pjmedia_silence_det_apply @ 132 NONAME + pjmedia_silence_det_create @ 133 NONAME + pjmedia_silence_det_detect @ 134 NONAME + pjmedia_silence_det_disable @ 135 NONAME + pjmedia_silence_det_set_adaptive @ 136 NONAME + pjmedia_silence_det_set_fixed @ 137 NONAME + pjmedia_silence_det_set_name @ 138 NONAME + pjmedia_silence_det_set_params @ 139 NONAME + pjmedia_snd_port_connect @ 140 NONAME + pjmedia_snd_port_create @ 141 NONAME + pjmedia_snd_port_create_player @ 142 NONAME + pjmedia_snd_port_create_rec @ 143 NONAME + pjmedia_snd_port_destroy @ 144 NONAME + pjmedia_snd_port_disconnect @ 145 NONAME + pjmedia_snd_port_get_ec_tail @ 146 NONAME + pjmedia_snd_port_get_port @ 147 NONAME + pjmedia_snd_port_get_snd_stream @ 148 NONAME + pjmedia_snd_port_set_ec @ 149 NONAME + pjmedia_splitcomb_create @ 150 NONAME + pjmedia_splitcomb_create_rev_channel @ 151 NONAME + pjmedia_splitcomb_set_channel @ 152 NONAME + pjmedia_stream_check_dtmf @ 153 NONAME + pjmedia_stream_create @ 154 NONAME + pjmedia_stream_destroy @ 155 NONAME + pjmedia_stream_dial_dtmf @ 156 NONAME + pjmedia_stream_get_dtmf @ 157 NONAME + pjmedia_stream_get_port @ 158 NONAME + pjmedia_stream_get_stat @ 159 NONAME + pjmedia_stream_get_transport @ 160 NONAME + pjmedia_stream_info_from_sdp @ 161 NONAME + pjmedia_stream_pause @ 162 NONAME + pjmedia_stream_resume @ 163 NONAME + pjmedia_stream_set_dtmf_callback @ 164 NONAME + pjmedia_stream_start @ 165 NONAME + pjmedia_strerror @ 166 NONAME + pjmedia_tonegen_create @ 167 NONAME + pjmedia_tonegen_create2 @ 168 NONAME + pjmedia_tonegen_get_digit_map @ 169 NONAME + pjmedia_tonegen_is_busy @ 170 NONAME + pjmedia_tonegen_play @ 171 NONAME + pjmedia_tonegen_play_digits @ 172 NONAME + pjmedia_tonegen_set_digit_map @ 173 NONAME + pjmedia_tonegen_stop @ 174 NONAME + pjmedia_transport_udp_attach @ 175 NONAME + pjmedia_transport_udp_close @ 176 NONAME + pjmedia_transport_udp_create @ 177 NONAME + pjmedia_transport_udp_create2 @ 178 NONAME + pjmedia_transport_udp_create3 @ 179 NONAME + pjmedia_transport_udp_get_info @ 180 NONAME + pjmedia_transport_udp_simulate_lost @ 181 NONAME + pjmedia_wav_player_port_create @ 182 NONAME + pjmedia_wav_player_port_get_pos @ 183 NONAME + pjmedia_wav_player_port_set_pos @ 184 NONAME + pjmedia_wav_player_set_eof_cb @ 185 NONAME + pjmedia_wav_playlist_create @ 186 NONAME + pjmedia_wav_playlist_set_eof_cb @ 187 NONAME + pjmedia_wav_writer_port_create @ 188 NONAME + pjmedia_wav_writer_port_get_pos @ 189 NONAME + pjmedia_wav_writer_port_set_cb @ 190 NONAME + pjmedia_wave_hdr_file_to_host @ 191 NONAME + pjmedia_wave_hdr_host_to_file @ 192 NONAME diff --git a/build.symbian/pjmedia_audiodev.mmp b/build.symbian/pjmedia_audiodev.mmp new file mode 100644 index 0000000..a80cfeb --- /dev/null +++ b/build.symbian/pjmedia_audiodev.mmp @@ -0,0 +1,33 @@ +TARGET pjmedia_audiodev.lib +TARGETTYPE lib + +SOURCEPATH ..\pjmedia\src\pjmedia-audiodev + +// +// GCCE optimization setting +// +//OPTION GCCE -O2 -fno-unit-at-a-time +OPTION ARMCC --gnu + +MACRO PJ_M_I386=1 +MACRO PJ_SYMBIAN=1 + +SOURCE audiodev.c +SOURCE errno.c +SOURCE symb_aps_dev.cpp +SOURCE symb_mda_dev.cpp +SOURCE symb_vas_dev.cpp +SOURCE null_dev.c + +SYSTEMINCLUDE ..\pjmedia\include +SYSTEMINCLUDE ..\pjlib\include +SYSTEMINCLUDE ..\pjlib-util\include + +SYSTEMINCLUDE \epoc32\include +SYSTEMINCLUDE \epoc32\include\libc +SYSTEMINCLUDE \epoc32\include\mmf\server +SYSTEMINCLUDE \epoc32\include\mmf\common +SYSTEMINCLUDE \epoc32\include\mda\common +SYSTEMINCLUDE \epoc32\include\mmf\plugin + + diff --git a/build.symbian/pjnath.mmp b/build.symbian/pjnath.mmp new file mode 100644 index 0000000..76b64dd --- /dev/null +++ b/build.symbian/pjnath.mmp @@ -0,0 +1,65 @@ +#if defined(PJ_BUILD_DLL) +TARGET pjnath.dll +TARGETTYPE dll +UID 0x0 0xA0000005 + +CAPABILITY None +LIBRARY pjlib_util.lib pjlib.lib esock.lib insock.lib charconv.lib euser.lib estlib.lib +MACRO PJ_DLL +MACRO PJ_EXPORTING + +DEFFILE .\pjnath.def + +#else + +TARGET pjnath.lib +TARGETTYPE lib + +#endif + +OPTION ARMCC --gnu + +SOURCEPATH ..\pjnath\src\pjnath + +MACRO PJ_M_I386=1 +MACRO PJ_SYMBIAN=1 + +// +// PJNATH files +// +SOURCE errno.c +SOURCE ice_session.c +SOURCE ice_strans.c +SOURCE nat_detect.c +SOURCE stun_auth.c +SOURCE stun_msg.c +SOURCE stun_msg_dump.c +SOURCE stun_session.c +SOURCE stun_sock.c +SOURCE stun_transaction.c +SOURCE turn_session.c +SOURCE turn_sock.c + +// +// Include files +// +//DOCUMENT pjnath\config.h +//DOCUMENT pjnath\\errno.h +//DOCUMENT pjnath\\ice_session.h +//DOCUMENT pjnath\\ice_strans.h +//DOCUMENT pjnath\\stun_auth.h +//DOCUMENT pjnath\\stun_config.h +//DOCUMENT pjnath\\stun_msg.h +//DOCUMENT pjnath\\stun_session.h +//DOCUMENT pjnath\\stun_transaction.h +//DOCUMENT pjnath\\types.h + + + +SYSTEMINCLUDE ..\pjlib\include +SYSTEMINCLUDE ..\pjlib-util\include +SYSTEMINCLUDE ..\pjnath\include + +SYSTEMINCLUDE \epoc32\include +SYSTEMINCLUDE \epoc32\include\libc + diff --git a/build.symbian/pjnathU.def b/build.symbian/pjnathU.def new file mode 100644 index 0000000..db4c282 --- /dev/null +++ b/build.symbian/pjnathU.def @@ -0,0 +1,88 @@ +EXPORTS + pj_ice_calc_foundation @ 1 NONAME + pj_ice_get_cand_type_name @ 2 NONAME + pj_ice_sess_add_cand @ 3 NONAME + pj_ice_sess_change_role @ 4 NONAME + pj_ice_sess_create @ 5 NONAME + pj_ice_sess_create_check_list @ 6 NONAME + pj_ice_sess_destroy @ 7 NONAME + pj_ice_sess_find_default_cand @ 8 NONAME + pj_ice_sess_on_rx_pkt @ 9 NONAME + pj_ice_sess_send_data @ 10 NONAME + pj_ice_sess_set_prefs @ 11 NONAME + pj_ice_sess_start_check @ 12 NONAME + pj_ice_strans_add_cand @ 13 NONAME + pj_ice_strans_create @ 14 NONAME + pj_ice_strans_create_comp @ 15 NONAME + pj_ice_strans_destroy @ 16 NONAME + pj_ice_strans_enum_cands @ 17 NONAME + pj_ice_strans_get_comps_status @ 18 NONAME + pj_ice_strans_init_ice @ 19 NONAME + pj_ice_strans_sendto @ 20 NONAME + pj_ice_strans_set_stun_domain @ 21 NONAME + pj_ice_strans_set_stun_srv @ 22 NONAME + pj_ice_strans_start_ice @ 23 NONAME + pj_ice_strans_stop_ice @ 24 NONAME + pj_stun_auth_cred_dup @ 25 NONAME + pj_stun_auth_valid_for_msg @ 26 NONAME + pj_stun_authenticate_request @ 27 NONAME + pj_stun_authenticate_response @ 28 NONAME + pj_stun_binary_attr_create @ 29 NONAME + pj_stun_client_tsx_create @ 30 NONAME + pj_stun_client_tsx_destroy @ 31 NONAME + pj_stun_client_tsx_get_data @ 32 NONAME + pj_stun_client_tsx_is_complete @ 33 NONAME + pj_stun_client_tsx_on_rx_msg @ 34 NONAME + pj_stun_client_tsx_retransmit @ 35 NONAME + pj_stun_client_tsx_schedule_destroy @ 36 NONAME + pj_stun_client_tsx_send_msg @ 37 NONAME + pj_stun_client_tsx_set_data @ 38 NONAME + pj_stun_create_key @ 39 NONAME + pj_stun_detect_nat_type @ 40 NONAME + pj_stun_empty_attr_create @ 41 NONAME + pj_stun_errcode_attr_create @ 42 NONAME + pj_stun_get_attr_name @ 43 NONAME + pj_stun_get_class_name @ 44 NONAME + pj_stun_get_err_reason @ 45 NONAME + pj_stun_get_method_name @ 46 NONAME + pj_stun_get_nat_name @ 47 NONAME + pj_stun_msg_add_attr @ 48 NONAME + pj_stun_msg_add_binary_attr @ 49 NONAME + pj_stun_msg_add_empty_attr @ 50 NONAME + pj_stun_msg_add_errcode_attr @ 51 NONAME + pj_stun_msg_add_msgint_attr @ 52 NONAME + pj_stun_msg_add_sockaddr_attr @ 53 NONAME + pj_stun_msg_add_string_attr @ 54 NONAME + pj_stun_msg_add_uint64_attr @ 55 NONAME + pj_stun_msg_add_uint_attr @ 56 NONAME + pj_stun_msg_add_unknown_attr @ 57 NONAME + pj_stun_msg_check @ 58 NONAME + pj_stun_msg_create @ 59 NONAME + pj_stun_msg_create_response @ 60 NONAME + pj_stun_msg_decode @ 61 NONAME + pj_stun_msg_destroy_tdata @ 62 NONAME + pj_stun_msg_dump @ 63 NONAME + pj_stun_msg_encode @ 64 NONAME + pj_stun_msg_find_attr @ 65 NONAME + pj_stun_msgint_attr_create @ 66 NONAME + pj_stun_session_cancel_req @ 67 NONAME + pj_stun_session_create @ 68 NONAME + pj_stun_session_create_ind @ 69 NONAME + pj_stun_session_create_req @ 70 NONAME + pj_stun_session_create_res @ 71 NONAME + pj_stun_session_destroy @ 72 NONAME + pj_stun_session_get_user_data @ 73 NONAME + pj_stun_session_on_rx_pkt @ 74 NONAME + pj_stun_session_retransmit_req @ 75 NONAME + pj_stun_session_send_msg @ 76 NONAME + pj_stun_session_set_credential @ 77 NONAME + pj_stun_session_set_server_name @ 78 NONAME + pj_stun_session_set_user_data @ 79 NONAME + pj_stun_set_padding_char @ 80 NONAME + pj_stun_sockaddr_attr_create @ 81 NONAME + pj_stun_string_attr_create @ 82 NONAME + pj_stun_uint64_attr_create @ 83 NONAME + pj_stun_uint_attr_create @ 84 NONAME + pj_stun_unknown_attr_create @ 85 NONAME + pjnath_init @ 86 NONAME + pjnath_perror @ 87 NONAME diff --git a/build.symbian/pjproject.cww b/build.symbian/pjproject.cww new file mode 100644 index 0000000..766cf8f --- /dev/null +++ b/build.symbian/pjproject.cww @@ -0,0 +1,386 @@ +<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
+<?codewarrior exportversion="1.0" ideversion="5.5" success="y" ?>
+
+<!DOCTYPE MWIDEWORKSPACE [
+<!ELEMENT MWIDEWORKSPACE (WINDOW*, COMWINDOW*)>
+<!ELEMENT WINDOW (SESSION, EDOCTYPE, PATH, FRAMELOC, FRAMESIZE, DOCKINFO)>
+<!ELEMENT COMWINDOW (SESSION, CLSID, OWNERPROJECT, DATA, FRAMELOC, FRAMESIZE, DOCKINFO)>
+<!ELEMENT SESSION (#PCDATA)>
+<!ELEMENT EDOCTYPE (#PCDATA)>
+<!ELEMENT DEFAULT (#PCDATA)>
+<!ELEMENT MAXIMIZED (#PCDATA)>
+<!ELEMENT PATH (#PCDATA)>
+<!ATTLIST PATH USERELATIVEPATHS (true | false) "true">
+<!ELEMENT FRAMELOC (X, Y)>
+<!ELEMENT X (#PCDATA)>
+<!ELEMENT Y (#PCDATA)>
+<!ELEMENT FRAMESIZE (W, H)>
+<!ELEMENT W (#PCDATA)>
+<!ELEMENT H (#PCDATA)>
+<!ELEMENT DOCKINFO (STATUS, ROW, COLUMN, DOCKBARID, PCTWIDTH, HGT, GROUPID)>
+<!ELEMENT STATUS (#PCDATA)>
+<!ELEMENT ROW (#PCDATA)>
+<!ELEMENT COLUMN (#PCDATA)>
+<!ELEMENT DOCKBARID (#PCDATA)>
+<!ELEMENT PCTWIDTH (#PCDATA)>
+<!ELEMENT HGT (#PCDATA)>
+<!ELEMENT GROUPID (GIDHIGHPART, GIDLOWPART)>
+<!ELEMENT GIDHIGHPART (#PCDATA)>
+<!ELEMENT GIDLOWPART (#PCDATA)>
+<!ELEMENT CLSID (#PCDATA)>
+<!ELEMENT OWNERPROJECT (#PCDATA)>
+<!ATTLIST OWNERPROJECT USERELATIVEPATHS (true | false) "true">
+<!ELEMENT DATA (#PCDATA)>
+<!ATTLIST DATA BINARYFORMAT (true | false) "true">
+]>
+
+<MWIDEWORKSPACE>
+ <WINDOW>
+ <SESSION>-1</SESSION>
+ <EDOCTYPE>0</EDOCTYPE>
+ <DEFAULT>true</DEFAULT>
+ <PATH USERELATIVEPATHS = "true">pjlib.mcp</PATH>
+ <FRAMELOC>
+ <X>0</X>
+ <Y>0</Y>
+ </FRAMELOC>
+ <FRAMESIZE>
+ <W>347</W>
+ <H>128</H>
+ </FRAMESIZE>
+ <DOCKINFO>
+ <STATUS>1</STATUS>
+ <ROW>0</ROW>
+ <COLUMN>0</COLUMN>
+ <DOCKBARID>59420</DOCKBARID>
+ <PCTWIDTH>1.000000</PCTWIDTH>
+ <HGT>350</HGT>
+ <GROUPID>
+ <GIDHIGHPART>4294967294</GIDHIGHPART>
+ <GIDLOWPART>4294967294</GIDLOWPART>
+ </GROUPID>
+ </DOCKINFO>
+ </WINDOW>
+ <WINDOW>
+ <SESSION>-1</SESSION>
+ <EDOCTYPE>0</EDOCTYPE>
+ <PATH USERELATIVEPATHS = "true">pjlib_util.mcp</PATH>
+ <FRAMELOC>
+ <X>0</X>
+ <Y>0</Y>
+ </FRAMELOC>
+ <FRAMESIZE>
+ <W>347</W>
+ <H>128</H>
+ </FRAMESIZE>
+ <DOCKINFO>
+ <STATUS>1</STATUS>
+ <ROW>0</ROW>
+ <COLUMN>0</COLUMN>
+ <DOCKBARID>59420</DOCKBARID>
+ <PCTWIDTH>1.000000</PCTWIDTH>
+ <HGT>350</HGT>
+ <GROUPID>
+ <GIDHIGHPART>4294967294</GIDHIGHPART>
+ <GIDLOWPART>4294967294</GIDLOWPART>
+ </GROUPID>
+ </DOCKINFO>
+ </WINDOW>
+ <WINDOW>
+ <SESSION>-1</SESSION>
+ <EDOCTYPE>0</EDOCTYPE>
+ <PATH USERELATIVEPATHS = "true">pjnath.mcp</PATH>
+ <FRAMELOC>
+ <X>0</X>
+ <Y>0</Y>
+ </FRAMELOC>
+ <FRAMESIZE>
+ <W>347</W>
+ <H>128</H>
+ </FRAMESIZE>
+ <DOCKINFO>
+ <STATUS>1</STATUS>
+ <ROW>0</ROW>
+ <COLUMN>0</COLUMN>
+ <DOCKBARID>59420</DOCKBARID>
+ <PCTWIDTH>1.000000</PCTWIDTH>
+ <HGT>350</HGT>
+ <GROUPID>
+ <GIDHIGHPART>4294967294</GIDHIGHPART>
+ <GIDLOWPART>4294967294</GIDLOWPART>
+ </GROUPID>
+ </DOCKINFO>
+ </WINDOW>
+ <WINDOW>
+ <SESSION>-1</SESSION>
+ <EDOCTYPE>0</EDOCTYPE>
+ <PATH USERELATIVEPATHS = "true">null_audio.mcp</PATH>
+ <FRAMELOC>
+ <X>0</X>
+ <Y>0</Y>
+ </FRAMELOC>
+ <FRAMESIZE>
+ <W>347</W>
+ <H>128</H>
+ </FRAMESIZE>
+ <DOCKINFO>
+ <STATUS>1</STATUS>
+ <ROW>0</ROW>
+ <COLUMN>0</COLUMN>
+ <DOCKBARID>59420</DOCKBARID>
+ <PCTWIDTH>1.000000</PCTWIDTH>
+ <HGT>350</HGT>
+ <GROUPID>
+ <GIDHIGHPART>4294967294</GIDHIGHPART>
+ <GIDLOWPART>4294967294</GIDLOWPART>
+ </GROUPID>
+ </DOCKINFO>
+ </WINDOW>
+ <WINDOW>
+ <SESSION>-1</SESSION>
+ <EDOCTYPE>0</EDOCTYPE>
+ <PATH USERELATIVEPATHS = "true">pjsdp.mcp</PATH>
+ <FRAMELOC>
+ <X>0</X>
+ <Y>0</Y>
+ </FRAMELOC>
+ <FRAMESIZE>
+ <W>347</W>
+ <H>128</H>
+ </FRAMESIZE>
+ <DOCKINFO>
+ <STATUS>1</STATUS>
+ <ROW>0</ROW>
+ <COLUMN>0</COLUMN>
+ <DOCKBARID>59420</DOCKBARID>
+ <PCTWIDTH>1.000000</PCTWIDTH>
+ <HGT>350</HGT>
+ <GROUPID>
+ <GIDHIGHPART>4294967294</GIDHIGHPART>
+ <GIDLOWPART>4294967294</GIDLOWPART>
+ </GROUPID>
+ </DOCKINFO>
+ </WINDOW>
+ <WINDOW>
+ <SESSION>-1</SESSION>
+ <EDOCTYPE>0</EDOCTYPE>
+ <PATH USERELATIVEPATHS = "true">pjmedia.mcp</PATH>
+ <FRAMELOC>
+ <X>0</X>
+ <Y>0</Y>
+ </FRAMELOC>
+ <FRAMESIZE>
+ <W>347</W>
+ <H>128</H>
+ </FRAMESIZE>
+ <DOCKINFO>
+ <STATUS>1</STATUS>
+ <ROW>0</ROW>
+ <COLUMN>0</COLUMN>
+ <DOCKBARID>59420</DOCKBARID>
+ <PCTWIDTH>1.000000</PCTWIDTH>
+ <HGT>350</HGT>
+ <GROUPID>
+ <GIDHIGHPART>4294967294</GIDHIGHPART>
+ <GIDLOWPART>4294967294</GIDLOWPART>
+ </GROUPID>
+ </DOCKINFO>
+ </WINDOW>
+ <WINDOW>
+ <SESSION>-1</SESSION>
+ <EDOCTYPE>0</EDOCTYPE>
+ <PATH USERELATIVEPATHS = "true">pjsip.mcp</PATH>
+ <FRAMELOC>
+ <X>0</X>
+ <Y>0</Y>
+ </FRAMELOC>
+ <FRAMESIZE>
+ <W>347</W>
+ <H>128</H>
+ </FRAMESIZE>
+ <DOCKINFO>
+ <STATUS>1</STATUS>
+ <ROW>0</ROW>
+ <COLUMN>0</COLUMN>
+ <DOCKBARID>59420</DOCKBARID>
+ <PCTWIDTH>1.000000</PCTWIDTH>
+ <HGT>350</HGT>
+ <GROUPID>
+ <GIDHIGHPART>4294967294</GIDHIGHPART>
+ <GIDLOWPART>4294967294</GIDLOWPART>
+ </GROUPID>
+ </DOCKINFO>
+ </WINDOW>
+ <WINDOW>
+ <SESSION>-1</SESSION>
+ <EDOCTYPE>0</EDOCTYPE>
+ <PATH USERELATIVEPATHS = "true">pjsip_simple.mcp</PATH>
+ <FRAMELOC>
+ <X>0</X>
+ <Y>0</Y>
+ </FRAMELOC>
+ <FRAMESIZE>
+ <W>347</W>
+ <H>128</H>
+ </FRAMESIZE>
+ <DOCKINFO>
+ <STATUS>1</STATUS>
+ <ROW>0</ROW>
+ <COLUMN>0</COLUMN>
+ <DOCKBARID>59420</DOCKBARID>
+ <PCTWIDTH>1.000000</PCTWIDTH>
+ <HGT>350</HGT>
+ <GROUPID>
+ <GIDHIGHPART>4294967294</GIDHIGHPART>
+ <GIDLOWPART>4294967294</GIDLOWPART>
+ </GROUPID>
+ </DOCKINFO>
+ </WINDOW>
+ <WINDOW>
+ <SESSION>-1</SESSION>
+ <EDOCTYPE>0</EDOCTYPE>
+ <PATH USERELATIVEPATHS = "true">pjsip_ua.mcp</PATH>
+ <FRAMELOC>
+ <X>0</X>
+ <Y>0</Y>
+ </FRAMELOC>
+ <FRAMESIZE>
+ <W>347</W>
+ <H>128</H>
+ </FRAMESIZE>
+ <DOCKINFO>
+ <STATUS>1</STATUS>
+ <ROW>0</ROW>
+ <COLUMN>0</COLUMN>
+ <DOCKBARID>59420</DOCKBARID>
+ <PCTWIDTH>1.000000</PCTWIDTH>
+ <HGT>350</HGT>
+ <GROUPID>
+ <GIDHIGHPART>4294967294</GIDHIGHPART>
+ <GIDLOWPART>4294967294</GIDLOWPART>
+ </GROUPID>
+ </DOCKINFO>
+ </WINDOW>
+ <WINDOW>
+ <SESSION>-1</SESSION>
+ <EDOCTYPE>0</EDOCTYPE>
+ <PATH USERELATIVEPATHS = "true">pjsua_lib.mcp</PATH>
+ <FRAMELOC>
+ <X>0</X>
+ <Y>0</Y>
+ </FRAMELOC>
+ <FRAMESIZE>
+ <W>347</W>
+ <H>128</H>
+ </FRAMESIZE>
+ <DOCKINFO>
+ <STATUS>1</STATUS>
+ <ROW>0</ROW>
+ <COLUMN>0</COLUMN>
+ <DOCKBARID>59420</DOCKBARID>
+ <PCTWIDTH>1.000000</PCTWIDTH>
+ <HGT>350</HGT>
+ <GROUPID>
+ <GIDHIGHPART>4294967294</GIDHIGHPART>
+ <GIDLOWPART>4294967294</GIDLOWPART>
+ </GROUPID>
+ </DOCKINFO>
+ </WINDOW>
+ <WINDOW>
+ <SESSION>-1</SESSION>
+ <EDOCTYPE>0</EDOCTYPE>
+ <PATH USERELATIVEPATHS = "true">symbian_ua.mcp</PATH>
+ <FRAMELOC>
+ <X>0</X>
+ <Y>0</Y>
+ </FRAMELOC>
+ <FRAMESIZE>
+ <W>347</W>
+ <H>128</H>
+ </FRAMESIZE>
+ <DOCKINFO>
+ <STATUS>1</STATUS>
+ <ROW>0</ROW>
+ <COLUMN>0</COLUMN>
+ <DOCKBARID>59420</DOCKBARID>
+ <PCTWIDTH>1.000000</PCTWIDTH>
+ <HGT>350</HGT>
+ <GROUPID>
+ <GIDHIGHPART>4294967294</GIDHIGHPART>
+ <GIDLOWPART>4294967294</GIDLOWPART>
+ </GROUPID>
+ </DOCKINFO>
+ </WINDOW>
+ <WINDOW>
+ <SESSION>-2147483648</SESSION>
+ <EDOCTYPE>20</EDOCTYPE>
+ <FRAMELOC>
+ <X>4</X>
+ <Y>23</Y>
+ </FRAMELOC>
+ <FRAMESIZE>
+ <W>1464</W>
+ <H>3681</H>
+ </FRAMESIZE>
+ <DOCKINFO>
+ <STATUS>0</STATUS>
+ <ROW></ROW>
+ <COLUMN></COLUMN>
+ <DOCKBARID></DOCKBARID>
+ <PCTWIDTH></PCTWIDTH>
+ <HGT></HGT>
+ <GROUPID>
+ <GIDHIGHPART></GIDHIGHPART>
+ <GIDLOWPART></GIDLOWPART>
+ </GROUPID>
+ </DOCKINFO>
+ </WINDOW>
+ <WINDOW>
+ <SESSION>-2147483648</SESSION>
+ <EDOCTYPE>36</EDOCTYPE>
+ <FRAMELOC>
+ <X>4</X>
+ <Y>23</Y>
+ </FRAMELOC>
+ <FRAMESIZE>
+ <W>366</W>
+ <H>354</H>
+ </FRAMESIZE>
+ <DOCKINFO>
+ <STATUS>0</STATUS>
+ <ROW></ROW>
+ <COLUMN></COLUMN>
+ <DOCKBARID></DOCKBARID>
+ <PCTWIDTH></PCTWIDTH>
+ <HGT></HGT>
+ <GROUPID>
+ <GIDHIGHPART></GIDHIGHPART>
+ <GIDLOWPART></GIDLOWPART>
+ </GROUPID>
+ </DOCKINFO>
+ </WINDOW>
+ <WINDOW>
+ <SESSION>-2147483648</SESSION>
+ <EDOCTYPE>23</EDOCTYPE>
+ <FRAMELOC>
+ <X>6</X>
+ <Y>81</Y>
+ </FRAMELOC>
+ <FRAMESIZE>
+ <W>566</W>
+ <H>477</H>
+ </FRAMESIZE>
+ <DOCKINFO>
+ <STATUS>0</STATUS>
+ <ROW></ROW>
+ <COLUMN></COLUMN>
+ <DOCKBARID></DOCKBARID>
+ <PCTWIDTH></PCTWIDTH>
+ <HGT></HGT>
+ <GROUPID>
+ <GIDHIGHPART></GIDHIGHPART>
+ <GIDLOWPART></GIDLOWPART>
+ </GROUPID>
+ </DOCKINFO>
+ </WINDOW>
+</MWIDEWORKSPACE>
diff --git a/build.symbian/pjsdp.mmp b/build.symbian/pjsdp.mmp new file mode 100644 index 0000000..e165704 --- /dev/null +++ b/build.symbian/pjsdp.mmp @@ -0,0 +1,46 @@ +#if defined(PJ_BUILD_DLL) +TARGET pjsdp.dll +TARGETTYPE dll +UID 0x0 0xA0000006 + +CAPABILITY None +LIBRARY pjlib_util.lib pjlib.lib charconv.lib euser.lib estlib.lib +MACRO PJ_DLL +MACRO PJ_EXPORTING + +DEFFILE .\pjsdp.def + +#else + +TARGET pjsdp.lib +TARGETTYPE lib + +#endif + +SOURCEPATH ..\pjmedia\src\pjmedia + +MACRO PJ_M_I386=1 +MACRO PJ_SYMBIAN=1 + +// Must compile as C++, otherwise exception would not work +OPTION CW -lang c++ +OPTION ARMCC --cpp --gnu +OPTION GCC -x c++ +OPTION GCCE -x c++ + +// +// Platform independent source +// +SOURCE errno.c +SOURCE sdp_wrap.cpp +SOURCE sdp_cmp.c +SOURCE sdp_neg.c + + +SYSTEMINCLUDE ..\pjlib\include +SYSTEMINCLUDE ..\pjlib-util\include +SYSTEMINCLUDE ..\pjmedia\include + +SYSTEMINCLUDE \epoc32\include +SYSTEMINCLUDE \epoc32\include\libc + diff --git a/build.symbian/pjsdpU.def b/build.symbian/pjsdpU.def new file mode 100644 index 0000000..569193d --- /dev/null +++ b/build.symbian/pjsdpU.def @@ -0,0 +1,45 @@ +EXPORTS + pjmedia_sdp_attr_add @ 1 NONAME + pjmedia_sdp_attr_clone @ 2 NONAME + pjmedia_sdp_attr_create @ 3 NONAME + pjmedia_sdp_attr_find @ 4 NONAME + pjmedia_sdp_attr_find2 @ 5 NONAME + pjmedia_sdp_attr_get_fmtp @ 6 NONAME + pjmedia_sdp_attr_get_rtcp @ 7 NONAME + pjmedia_sdp_attr_get_rtpmap @ 8 NONAME + pjmedia_sdp_attr_remove @ 9 NONAME + pjmedia_sdp_attr_remove_all @ 10 NONAME + pjmedia_sdp_attr_to_rtpmap @ 11 NONAME + pjmedia_sdp_conn_clone @ 12 NONAME + pjmedia_sdp_media_add_attr @ 13 NONAME + pjmedia_sdp_media_clone @ 14 NONAME + pjmedia_sdp_media_cmp @ 15 NONAME + pjmedia_sdp_media_find_attr @ 16 NONAME + pjmedia_sdp_media_find_attr2 @ 17 NONAME + pjmedia_sdp_media_remove_all_attr @ 18 NONAME + pjmedia_sdp_media_remove_attr @ 19 NONAME + pjmedia_sdp_neg_cancel_offer @ 20 NONAME + pjmedia_sdp_neg_create_w_local_offer @ 21 NONAME + pjmedia_sdp_neg_create_w_remote_offer @ 22 NONAME + pjmedia_sdp_neg_get_active_local @ 23 NONAME + pjmedia_sdp_neg_get_active_remote @ 24 NONAME + pjmedia_sdp_neg_get_neg_local @ 25 NONAME + pjmedia_sdp_neg_get_neg_remote @ 26 NONAME + pjmedia_sdp_neg_get_state @ 27 NONAME + pjmedia_sdp_neg_has_local_answer @ 28 NONAME + pjmedia_sdp_neg_modify_local_offer @ 29 NONAME + pjmedia_sdp_neg_negotiate @ 30 NONAME + pjmedia_sdp_neg_send_local_offer @ 31 NONAME + pjmedia_sdp_neg_set_local_answer @ 32 NONAME + pjmedia_sdp_neg_set_prefer_remote_codec_order @ 33 NONAME + pjmedia_sdp_neg_set_remote_answer @ 34 NONAME + pjmedia_sdp_neg_set_remote_offer @ 35 NONAME + pjmedia_sdp_neg_state_str @ 36 NONAME + pjmedia_sdp_neg_was_answer_remote @ 37 NONAME + pjmedia_sdp_parse @ 38 NONAME + pjmedia_sdp_print @ 39 NONAME + pjmedia_sdp_rtpmap_to_attr @ 40 NONAME + pjmedia_sdp_session_clone @ 41 NONAME + pjmedia_sdp_session_cmp @ 42 NONAME + pjmedia_sdp_validate @ 43 NONAME + pjmedia_strerror @ 44 NONAME diff --git a/build.symbian/pjsip.mmp b/build.symbian/pjsip.mmp new file mode 100644 index 0000000..1fd7440 --- /dev/null +++ b/build.symbian/pjsip.mmp @@ -0,0 +1,69 @@ +#if defined(PJ_BUILD_DLL) + +TARGET pjsip.dll +TARGETTYPE dll + +UID 0x0 0xA0000007 + + +CAPABILITY None +LIBRARY pjsdp.lib pjlib_util.lib pjlib.lib esock.lib insock.lib charconv.lib euser.lib estlib.lib +MACRO PJ_DLL +MACRO PJ_EXPORTING + +DEFFILE .\pjsip.def + +#else + +TARGET pjsip.lib +TARGETTYPE lib + +#endif + +SOURCEPATH ..\pjsip\src\pjsip + +MACRO PJ_M_I386=1 +MACRO PJ_SYMBIAN=1 + +// Must compile as C++, otherwise exception would not work +OPTION CW -lang c++ +OPTION ARMCC --cpp --gnu +OPTION GCC -x c++ +OPTION GCCE -x c++ + +// PJSIP-CORE files + +//SOURCE sip_auth_aka.c +SOURCE sip_auth_client.c +SOURCE sip_auth_msg.c +SOURCE sip_auth_parser_wrap.cpp +SOURCE sip_auth_server.c +SOURCE sip_config.c +SOURCE sip_dialog_wrap.cpp +SOURCE sip_endpoint_wrap.cpp +SOURCE sip_errno.c +SOURCE sip_msg.c +SOURCE sip_multipart.c +SOURCE sip_parser_wrap.cpp +SOURCE sip_resolve.c +SOURCE sip_tel_uri_wrap.cpp +SOURCE sip_transaction.c +SOURCE sip_transport_wrap.cpp +SOURCE sip_transport_loop.c +SOURCE sip_transport_tcp.c +SOURCE sip_transport_udp.c +SOURCE sip_transport_tls.c +SOURCE sip_ua_layer.c +SOURCE sip_uri.c +SOURCE sip_util_wrap.cpp +SOURCE sip_util_proxy_wrap.cpp +SOURCE sip_util_statefull.c + +SYSTEMINCLUDE ..\pjlib\include +SYSTEMINCLUDE ..\pjlib-util\include +SYSTEMINCLUDE ..\pjsip\include + +SYSTEMINCLUDE \epoc32\include +SYSTEMINCLUDE \epoc32\include\libc + + diff --git a/build.symbian/pjsipU.def b/build.symbian/pjsipU.def new file mode 100644 index 0000000..68d31eb --- /dev/null +++ b/build.symbian/pjsipU.def @@ -0,0 +1,280 @@ +EXPORTS + pjsip_accept_hdr_create @ 1 NONAME + pjsip_accept_hdr_init @ 2 NONAME + pjsip_ack_method @ 3 NONAME + pjsip_allow_hdr_create @ 4 NONAME + pjsip_allow_hdr_init @ 5 NONAME + pjsip_auth_clt_clone @ 6 NONAME + pjsip_auth_clt_get_prefs @ 7 NONAME + pjsip_auth_clt_init @ 8 NONAME + pjsip_auth_clt_init_req @ 9 NONAME + pjsip_auth_clt_reinit_req @ 10 NONAME + pjsip_auth_clt_set_credentials @ 11 NONAME + pjsip_auth_clt_set_prefs @ 12 NONAME + pjsip_auth_create_digest @ 13 NONAME + pjsip_auth_deinit_parser @ 14 NONAME + pjsip_auth_init_parser @ 15 NONAME + pjsip_auth_srv_challenge @ 16 NONAME + pjsip_auth_srv_init @ 17 NONAME + pjsip_auth_srv_verify @ 18 NONAME + pjsip_authorization_hdr_create @ 19 NONAME + pjsip_bye_method @ 20 NONAME + pjsip_calculate_branch_id @ 21 NONAME + pjsip_cancel_method @ 22 NONAME + pjsip_cid_hdr_create @ 23 NONAME + pjsip_cid_hdr_init @ 24 NONAME + pjsip_clen_hdr_create @ 25 NONAME + pjsip_clen_hdr_init @ 26 NONAME + pjsip_clone_text_data @ 27 NONAME + pjsip_concat_param_imp @ 28 NONAME + pjsip_contact_hdr_create @ 29 NONAME + pjsip_contact_hdr_init @ 30 NONAME + pjsip_cred_info_dup @ 31 NONAME + pjsip_cseq_hdr_create @ 32 NONAME + pjsip_cseq_hdr_init @ 33 NONAME + pjsip_ctype_hdr_create @ 34 NONAME + pjsip_ctype_hdr_init @ 35 NONAME + pjsip_dlg_add_usage @ 36 NONAME + pjsip_dlg_create_request @ 37 NONAME + pjsip_dlg_create_response @ 38 NONAME + pjsip_dlg_create_uac @ 39 NONAME + pjsip_dlg_create_uas @ 40 NONAME + pjsip_dlg_dec_lock @ 41 NONAME + pjsip_dlg_dec_session @ 42 NONAME + pjsip_dlg_fork @ 43 NONAME + pjsip_dlg_get_mod_data @ 44 NONAME + pjsip_dlg_inc_lock @ 45 NONAME + pjsip_dlg_inc_session @ 46 NONAME + pjsip_dlg_modify_response @ 47 NONAME + pjsip_dlg_respond @ 48 NONAME + pjsip_dlg_send_request @ 49 NONAME + pjsip_dlg_send_response @ 50 NONAME + pjsip_dlg_set_mod_data @ 51 NONAME + pjsip_dlg_set_route_set @ 52 NONAME + pjsip_dlg_set_transport @ 53 NONAME + pjsip_dlg_terminate @ 54 NONAME + pjsip_dlg_try_inc_lock @ 55 NONAME + pjsip_endpt_acquire_transport @ 56 NONAME + pjsip_endpt_add_capability @ 57 NONAME + pjsip_endpt_cancel_timer @ 58 NONAME + pjsip_endpt_create @ 59 NONAME + pjsip_endpt_create_ack @ 60 NONAME + pjsip_endpt_create_cancel @ 61 NONAME + pjsip_endpt_create_pool @ 62 NONAME + pjsip_endpt_create_request @ 63 NONAME + pjsip_endpt_create_request_from_hdr @ 64 NONAME + pjsip_endpt_create_request_fwd @ 65 NONAME + pjsip_endpt_create_resolver @ 66 NONAME + pjsip_endpt_create_response @ 67 NONAME + pjsip_endpt_create_response_fwd @ 68 NONAME + pjsip_endpt_create_tdata @ 69 NONAME + pjsip_endpt_destroy @ 70 NONAME + pjsip_endpt_dump @ 71 NONAME + pjsip_endpt_get_capability @ 72 NONAME + pjsip_endpt_get_ioqueue @ 73 NONAME + pjsip_endpt_get_request_headers @ 74 NONAME + pjsip_endpt_get_resolver @ 75 NONAME + pjsip_endpt_get_timer_heap @ 76 NONAME + pjsip_endpt_get_tpmgr @ 77 NONAME + pjsip_endpt_handle_events @ 78 NONAME + pjsip_endpt_handle_events2 @ 79 NONAME + pjsip_endpt_has_capability @ 80 NONAME + pjsip_endpt_log_error @ 81 NONAME + pjsip_endpt_name @ 82 NONAME + pjsip_endpt_register_module @ 83 NONAME + pjsip_endpt_release_pool @ 84 NONAME + pjsip_endpt_resolve @ 85 NONAME + pjsip_endpt_respond @ 86 NONAME + pjsip_endpt_respond_stateless @ 87 NONAME + pjsip_endpt_schedule_timer @ 88 NONAME + pjsip_endpt_send_raw @ 89 NONAME + pjsip_endpt_send_raw_to_uri @ 90 NONAME + pjsip_endpt_send_request @ 91 NONAME + pjsip_endpt_send_request_stateless @ 92 NONAME + pjsip_endpt_send_response @ 93 NONAME + pjsip_endpt_send_response2 @ 94 NONAME + pjsip_endpt_set_resolver @ 95 NONAME + pjsip_endpt_unregister_module @ 96 NONAME + pjsip_event_str @ 97 NONAME + pjsip_expires_hdr_create @ 98 NONAME + pjsip_expires_hdr_init @ 99 NONAME + pjsip_find_msg @ 100 NONAME + pjsip_from_hdr_create @ 101 NONAME + pjsip_from_hdr_init @ 102 NONAME + pjsip_fromto_hdr_set_from @ 103 NONAME + pjsip_fromto_hdr_set_to @ 104 NONAME + pjsip_generic_array_hdr_create @ 105 NONAME + pjsip_generic_array_hdr_init @ 106 NONAME + pjsip_generic_int_hdr_create @ 107 NONAME + pjsip_generic_int_hdr_init @ 108 NONAME + pjsip_generic_string_hdr_create @ 109 NONAME + pjsip_generic_string_hdr_init @ 110 NONAME + pjsip_generic_string_hdr_init2 @ 111 NONAME + pjsip_get_ack_method @ 112 NONAME + pjsip_get_bye_method @ 113 NONAME + pjsip_get_cancel_method @ 114 NONAME + pjsip_get_invite_method @ 115 NONAME + pjsip_get_options_method @ 116 NONAME + pjsip_get_register_method @ 117 NONAME + pjsip_get_request_dest @ 118 NONAME + pjsip_get_response_addr @ 119 NONAME + pjsip_get_status_text @ 120 NONAME + pjsip_hdr_clone @ 121 NONAME + pjsip_hdr_print_on @ 122 NONAME + pjsip_hdr_shallow_clone @ 123 NONAME + pjsip_invite_method @ 124 NONAME + pjsip_loop_set_delay @ 125 NONAME + pjsip_loop_set_discard @ 126 NONAME + pjsip_loop_set_failure @ 127 NONAME + pjsip_loop_set_recv_delay @ 128 NONAME + pjsip_loop_set_send_callback_delay @ 129 NONAME + pjsip_loop_start @ 130 NONAME + pjsip_max_fwd_hdr_create @ 131 NONAME + pjsip_max_fwd_hdr_init @ 132 NONAME + pjsip_method_cmp @ 133 NONAME + pjsip_method_copy @ 134 NONAME + pjsip_method_creates_dialog @ 135 NONAME + pjsip_method_init @ 136 NONAME + pjsip_method_init_np @ 137 NONAME + pjsip_method_set @ 138 NONAME + pjsip_min_expires_hdr_create @ 139 NONAME + pjsip_min_expires_hdr_init @ 140 NONAME + pjsip_msg_body_clone @ 141 NONAME + pjsip_msg_body_copy @ 142 NONAME + pjsip_msg_body_create @ 143 NONAME + pjsip_msg_clone @ 144 NONAME + pjsip_msg_create @ 145 NONAME + pjsip_msg_find_hdr @ 146 NONAME + pjsip_msg_find_hdr_by_name @ 147 NONAME + pjsip_msg_find_remove_hdr @ 148 NONAME + pjsip_msg_print @ 149 NONAME + pjsip_name_addr_assign @ 150 NONAME + pjsip_name_addr_create @ 151 NONAME + pjsip_name_addr_init @ 152 NONAME + pjsip_options_method @ 153 NONAME + pjsip_param_cfind @ 154 NONAME + pjsip_param_clone @ 155 NONAME + pjsip_param_find @ 156 NONAME + pjsip_param_print_on @ 157 NONAME + pjsip_param_shallow_clone @ 158 NONAME + pjsip_parse_end_hdr_imp @ 159 NONAME + pjsip_parse_hdr @ 160 NONAME + pjsip_parse_msg @ 161 NONAME + pjsip_parse_param_imp @ 162 NONAME + pjsip_parse_rdata @ 163 NONAME + pjsip_parse_status_line @ 164 NONAME + pjsip_parse_uri @ 165 NONAME + pjsip_parse_uri_param_imp @ 166 NONAME + pjsip_parser_const @ 167 NONAME + pjsip_print_text_body @ 168 NONAME + pjsip_process_route_set @ 169 NONAME + pjsip_proxy_authenticate_hdr_create @ 170 NONAME + pjsip_proxy_authorization_hdr_create @ 171 NONAME + pjsip_rdata_get_dlg @ 172 NONAME + pjsip_rdata_get_tsx @ 173 NONAME + pjsip_register_hdr_parser @ 174 NONAME + pjsip_register_method @ 175 NONAME + pjsip_register_uri_parser @ 176 NONAME + pjsip_require_hdr_create @ 177 NONAME + pjsip_require_hdr_init @ 178 NONAME + pjsip_resolve @ 179 NONAME + pjsip_resolver_create @ 180 NONAME + pjsip_resolver_destroy @ 181 NONAME + pjsip_resolver_get_resolver @ 182 NONAME + pjsip_resolver_set_resolver @ 183 NONAME + pjsip_retry_after_hdr_create @ 184 NONAME + pjsip_retry_after_hdr_init @ 185 NONAME + pjsip_role_name @ 186 NONAME + pjsip_route_hdr_create @ 187 NONAME + pjsip_route_hdr_init @ 188 NONAME + pjsip_routing_hdr_set_route @ 189 NONAME + pjsip_routing_hdr_set_rr @ 190 NONAME + pjsip_rr_hdr_create @ 191 NONAME + pjsip_rr_hdr_init @ 192 NONAME + pjsip_rx_data_get_info @ 193 NONAME + pjsip_sip_uri_assign @ 194 NONAME + pjsip_sip_uri_create @ 195 NONAME + pjsip_sip_uri_init @ 196 NONAME + pjsip_sip_uri_set_secure @ 197 NONAME + pjsip_strerror @ 198 NONAME + pjsip_supported_hdr_create @ 199 NONAME + pjsip_supported_hdr_init @ 200 NONAME + pjsip_tcp_transport_start @ 201 NONAME + pjsip_tcp_transport_start2 @ 202 NONAME + pjsip_tel_nb_cmp @ 203 NONAME + pjsip_tel_uri_create @ 204 NONAME + pjsip_to_hdr_create @ 205 NONAME + pjsip_to_hdr_init @ 206 NONAME + pjsip_tpmgr_acquire_transport @ 207 NONAME + pjsip_tpmgr_create @ 208 NONAME + pjsip_tpmgr_destroy @ 209 NONAME + pjsip_tpmgr_dump_transports @ 210 NONAME + pjsip_tpmgr_find_local_addr @ 211 NONAME + pjsip_tpmgr_get_transport_count @ 212 NONAME + pjsip_tpmgr_receive_packet @ 213 NONAME + pjsip_tpmgr_register_tpfactory @ 214 NONAME + pjsip_tpmgr_send_raw @ 215 NONAME + pjsip_tpmgr_unregister_tpfactory @ 216 NONAME + pjsip_tpselector_add_ref @ 217 NONAME + pjsip_tpselector_dec_ref @ 218 NONAME + pjsip_transport_add_ref @ 219 NONAME + pjsip_transport_dec_ref @ 220 NONAME + pjsip_transport_destroy @ 221 NONAME + pjsip_transport_get_default_port_for_type @ 222 NONAME + pjsip_transport_get_flag_from_type @ 223 NONAME + pjsip_transport_get_type_desc @ 224 NONAME + pjsip_transport_get_type_from_flag @ 225 NONAME + pjsip_transport_get_type_from_name @ 226 NONAME + pjsip_transport_get_type_name @ 227 NONAME + pjsip_transport_register @ 228 NONAME + pjsip_transport_register_type @ 229 NONAME + pjsip_transport_send @ 230 NONAME + pjsip_transport_shutdown @ 231 NONAME + pjsip_transport_type_get_af @ 232 NONAME + pjsip_tsx_create_key @ 233 NONAME + pjsip_tsx_create_uac @ 234 NONAME + pjsip_tsx_create_uas @ 235 NONAME + pjsip_tsx_get_dlg @ 236 NONAME + pjsip_tsx_layer_destroy @ 237 NONAME + pjsip_tsx_layer_dump @ 238 NONAME + pjsip_tsx_layer_find_tsx @ 239 NONAME + pjsip_tsx_layer_get_tsx_count @ 240 NONAME + pjsip_tsx_layer_init_module @ 241 NONAME + pjsip_tsx_layer_instance @ 242 NONAME + pjsip_tsx_recv_msg @ 243 NONAME + pjsip_tsx_retransmit_no_state @ 244 NONAME + pjsip_tsx_send_msg @ 245 NONAME + pjsip_tsx_set_transport @ 246 NONAME + pjsip_tsx_state_str @ 247 NONAME + pjsip_tsx_stop_retransmit @ 248 NONAME + pjsip_tsx_terminate @ 249 NONAME + pjsip_tx_data_add_ref @ 250 NONAME + pjsip_tx_data_create @ 251 NONAME + pjsip_tx_data_dec_ref @ 252 NONAME + pjsip_tx_data_get_info @ 253 NONAME + pjsip_tx_data_invalidate_msg @ 254 NONAME + pjsip_tx_data_is_valid @ 255 NONAME + pjsip_tx_data_set_transport @ 256 NONAME + pjsip_ua_destroy @ 257 NONAME + pjsip_ua_dump @ 258 NONAME + pjsip_ua_find_dialog @ 259 NONAME + pjsip_ua_get_dlg_set_count @ 260 NONAME + pjsip_ua_get_endpt @ 261 NONAME + pjsip_ua_init_module @ 262 NONAME + pjsip_ua_instance @ 263 NONAME + pjsip_ua_register_dlg @ 264 NONAME + pjsip_ua_unregister_dlg @ 265 NONAME + pjsip_udp_transport_attach @ 266 NONAME + pjsip_udp_transport_attach2 @ 267 NONAME + pjsip_udp_transport_get_socket @ 268 NONAME + pjsip_udp_transport_pause @ 269 NONAME + pjsip_udp_transport_restart @ 270 NONAME + pjsip_udp_transport_start @ 271 NONAME + pjsip_udp_transport_start6 @ 272 NONAME + pjsip_unsupported_hdr_create @ 273 NONAME + pjsip_unsupported_hdr_init @ 274 NONAME + pjsip_via_hdr_create @ 275 NONAME + pjsip_via_hdr_init @ 276 NONAME + pjsip_warning_hdr_create @ 277 NONAME + pjsip_warning_hdr_create_from_status @ 278 NONAME + pjsip_www_authenticate_hdr_create @ 279 NONAME diff --git a/build.symbian/pjsip_simple.mmp b/build.symbian/pjsip_simple.mmp new file mode 100644 index 0000000..9b83a9d --- /dev/null +++ b/build.symbian/pjsip_simple.mmp @@ -0,0 +1,54 @@ +#if defined(PJ_BUILD_DLL) + +TARGET pjsip_simple.dll +TARGETTYPE dll + +UID 0x0 0xA0000008 + + +CAPABILITY None +LIBRARY pjsip.lib pjsdp.lib pjlib_util.lib pjlib.lib esock.lib insock.lib charconv.lib euser.lib estlib.lib +MACRO PJ_DLL +MACRO PJ_EXPORTING + +DEFFILE .\pjsip_simple.def + +#else + +TARGET pjsip_simple.lib +TARGETTYPE lib + +#endif + +SOURCEPATH ..\pjsip\src\pjsip-simple + +MACRO PJ_M_I386=1 +MACRO PJ_SYMBIAN=1 + +// Must compile as C++, otherwise exception would not work +OPTION CW -lang c++ +OPTION ARMCC --cpp --gnu +OPTION GCC -x c++ +OPTION GCCE -x c++ + +// PJSIP-SIMPLE files + +SOURCE errno.c +SOURCE evsub.c +SOURCE evsub_msg.c +SOURCE iscomposing.c +SOURCE mwi.c +SOURCE pidf.c +SOURCE presence.c +SOURCE presence_body.c +SOURCE publishc.c +SOURCE rpid.c +SOURCE xpidf.c + +SYSTEMINCLUDE ..\pjlib\include +SYSTEMINCLUDE ..\pjlib-util\include +SYSTEMINCLUDE ..\pjsip\include + +SYSTEMINCLUDE \epoc32\include +SYSTEMINCLUDE \epoc32\include\libc + diff --git a/build.symbian/pjsip_simpleU.def b/build.symbian/pjsip_simpleU.def new file mode 100644 index 0000000..7e41793 --- /dev/null +++ b/build.symbian/pjsip_simpleU.def @@ -0,0 +1,96 @@ +EXPORTS + pjpidf_create @ 1 NONAME + pjpidf_parse @ 2 NONAME + pjpidf_pres_add_note @ 3 NONAME + pjpidf_pres_add_tuple @ 4 NONAME + pjpidf_pres_construct @ 5 NONAME + pjpidf_pres_find_tuple @ 6 NONAME + pjpidf_pres_get_first_note @ 7 NONAME + pjpidf_pres_get_first_tuple @ 8 NONAME + pjpidf_pres_get_next_note @ 9 NONAME + pjpidf_pres_get_next_tuple @ 10 NONAME + pjpidf_pres_remove_tuple @ 11 NONAME + pjpidf_print @ 12 NONAME + pjpidf_status_construct @ 13 NONAME + pjpidf_status_is_basic_open @ 14 NONAME + pjpidf_status_set_basic_open @ 15 NONAME + pjpidf_tuple_add_note @ 16 NONAME + pjpidf_tuple_construct @ 17 NONAME + pjpidf_tuple_get_contact @ 18 NONAME + pjpidf_tuple_get_contact_prio @ 19 NONAME + pjpidf_tuple_get_first_note @ 20 NONAME + pjpidf_tuple_get_id @ 21 NONAME + pjpidf_tuple_get_next_note @ 22 NONAME + pjpidf_tuple_get_status @ 23 NONAME + pjpidf_tuple_get_timestamp @ 24 NONAME + pjpidf_tuple_set_contact @ 25 NONAME + pjpidf_tuple_set_contact_prio @ 26 NONAME + pjpidf_tuple_set_id @ 27 NONAME + pjpidf_tuple_set_timestamp @ 28 NONAME + pjpidf_tuple_set_timestamp_np @ 29 NONAME + pjrpid_add_element @ 30 NONAME + pjrpid_element_dup @ 31 NONAME + pjrpid_get_element @ 32 NONAME + pjsip_allow_events_hdr_create @ 33 NONAME + pjsip_event_hdr_create @ 34 NONAME + pjsip_evsub_accept @ 35 NONAME + pjsip_evsub_create_uac @ 36 NONAME + pjsip_evsub_create_uas @ 37 NONAME + pjsip_evsub_current_notify @ 38 NONAME + pjsip_evsub_get_allow_events_hdr @ 39 NONAME + pjsip_evsub_get_mod_data @ 40 NONAME + pjsip_evsub_get_state @ 41 NONAME + pjsip_evsub_get_state_name @ 42 NONAME + pjsip_evsub_init_module @ 43 NONAME + pjsip_evsub_init_parser @ 44 NONAME + pjsip_evsub_initiate @ 45 NONAME + pjsip_evsub_instance @ 46 NONAME + pjsip_evsub_notify @ 47 NONAME + pjsip_evsub_register_pkg @ 48 NONAME + pjsip_evsub_send_request @ 49 NONAME + pjsip_evsub_set_mod_data @ 50 NONAME + pjsip_evsub_terminate @ 51 NONAME + pjsip_get_notify_method @ 52 NONAME + pjsip_get_subscribe_method @ 53 NONAME + pjsip_iscomposing_create_body @ 54 NONAME + pjsip_iscomposing_create_xml @ 55 NONAME + pjsip_iscomposing_parse @ 56 NONAME + pjsip_notify_method @ 57 NONAME + pjsip_pres_accept @ 58 NONAME + pjsip_pres_create_pidf @ 59 NONAME + pjsip_pres_create_uac @ 60 NONAME + pjsip_pres_create_uas @ 61 NONAME + pjsip_pres_create_xpidf @ 62 NONAME + pjsip_pres_current_notify @ 63 NONAME + pjsip_pres_get_status @ 64 NONAME + pjsip_pres_init_module @ 65 NONAME + pjsip_pres_initiate @ 66 NONAME + pjsip_pres_instance @ 67 NONAME + pjsip_pres_notify @ 68 NONAME + pjsip_pres_parse_pidf @ 69 NONAME + pjsip_pres_parse_xpidf @ 70 NONAME + pjsip_pres_send_request @ 71 NONAME + pjsip_pres_set_status @ 72 NONAME + pjsip_pres_terminate @ 73 NONAME + pjsip_publishc_create @ 74 NONAME + pjsip_publishc_destroy @ 75 NONAME + pjsip_publishc_get_pool @ 76 NONAME + pjsip_publishc_init @ 77 NONAME + pjsip_publishc_init_module @ 78 NONAME + pjsip_publishc_publish @ 79 NONAME + pjsip_publishc_send @ 80 NONAME + pjsip_publishc_set_credentials @ 81 NONAME + pjsip_publishc_set_route_set @ 82 NONAME + pjsip_publishc_unpublish @ 83 NONAME + pjsip_publishc_update_expires @ 84 NONAME + pjsip_sub_state_hdr_create @ 85 NONAME + pjsip_subscribe_method @ 86 NONAME + pjsip_tsx_get_evsub @ 87 NONAME + pjsipsimple_strerror @ 88 NONAME + pjxpidf_create @ 89 NONAME + pjxpidf_get_status @ 90 NONAME + pjxpidf_get_uri @ 91 NONAME + pjxpidf_parse @ 92 NONAME + pjxpidf_print @ 93 NONAME + pjxpidf_set_status @ 94 NONAME + pjxpidf_set_uri @ 95 NONAME diff --git a/build.symbian/pjsip_ua.mmp b/build.symbian/pjsip_ua.mmp new file mode 100644 index 0000000..609c0a3 --- /dev/null +++ b/build.symbian/pjsip_ua.mmp @@ -0,0 +1,52 @@ +#if defined(PJ_BUILD_DLL) + +TARGET pjsip_ua.dll +TARGETTYPE dll + +UID 0x0 0xA0000009 + + +CAPABILITY None +LIBRARY pjsip_simple.lib pjsip.lib pjsdp.lib pjlib_util.lib pjlib.lib esock.lib insock.lib charconv.lib euser.lib estlib.lib +MACRO PJ_DLL +MACRO PJ_EXPORTING + +DEFFILE .\pjsip_ua.def + +#else + +TARGET pjsip_ua.lib +TARGETTYPE lib + +#endif + +SOURCEPATH ..\pjsip\src\pjsip-ua + +MACRO PJ_M_I386=1 +MACRO PJ_SYMBIAN=1 + +// Must compile as C++, otherwise exception would not work +OPTION CW -lang c++ +OPTION ARMCC --cpp --gnu +OPTION GCC -x c++ +OPTION GCCE -x c++ + + +// PJSIP-UA files + +SOURCE sip_inv.c +SOURCE sip_reg.c +SOURCE sip_replaces.c +SOURCE sip_xfer.c +SOURCE sip_100rel.c +SOURCE sip_timer.c + +SYSTEMINCLUDE ..\pjlib\include +SYSTEMINCLUDE ..\pjlib-util\include +SYSTEMINCLUDE ..\pjsip\include +SYSTEMINCLUDE ..\pjmedia\include + +SYSTEMINCLUDE \epoc32\include +SYSTEMINCLUDE \epoc32\include\libc + + diff --git a/build.symbian/pjsip_uaU.def b/build.symbian/pjsip_uaU.def new file mode 100644 index 0000000..0c847a9 --- /dev/null +++ b/build.symbian/pjsip_uaU.def @@ -0,0 +1,58 @@ +EXPORTS + pjsip_100rel_attach @ 1 NONAME + pjsip_100rel_create_prack @ 2 NONAME + pjsip_100rel_end_session @ 3 NONAME + pjsip_100rel_init_module @ 4 NONAME + pjsip_100rel_is_reliable @ 5 NONAME + pjsip_100rel_on_rx_prack @ 6 NONAME + pjsip_100rel_send_prack @ 7 NONAME + pjsip_100rel_tx_response @ 8 NONAME + pjsip_create_sdp_body @ 9 NONAME + pjsip_dlg_get_inv_session @ 10 NONAME + pjsip_get_prack_method @ 11 NONAME + pjsip_get_refer_method @ 12 NONAME + pjsip_inv_answer @ 13 NONAME + pjsip_inv_create_ack @ 14 NONAME + pjsip_inv_create_uac @ 15 NONAME + pjsip_inv_create_uas @ 16 NONAME + pjsip_inv_end_session @ 17 NONAME + pjsip_inv_initial_answer @ 18 NONAME + pjsip_inv_invite @ 19 NONAME + pjsip_inv_reinvite @ 20 NONAME + pjsip_inv_send_msg @ 21 NONAME + pjsip_inv_set_sdp_answer @ 22 NONAME + pjsip_inv_state_name @ 23 NONAME + pjsip_inv_terminate @ 24 NONAME + pjsip_inv_update @ 25 NONAME + pjsip_inv_usage_init @ 26 NONAME + pjsip_inv_usage_instance @ 27 NONAME + pjsip_inv_verify_request @ 28 NONAME + pjsip_prack_method @ 29 NONAME + pjsip_refer_method @ 30 NONAME + pjsip_regc_add_headers @ 31 NONAME + pjsip_regc_create @ 32 NONAME + pjsip_regc_destroy @ 33 NONAME + pjsip_regc_get_info @ 34 NONAME + pjsip_regc_get_pool @ 35 NONAME + pjsip_regc_init @ 36 NONAME + pjsip_regc_register @ 37 NONAME + pjsip_regc_send @ 38 NONAME + pjsip_regc_set_credentials @ 39 NONAME + pjsip_regc_set_prefs @ 40 NONAME + pjsip_regc_set_route_set @ 41 NONAME + pjsip_regc_set_transport @ 42 NONAME + pjsip_regc_unregister @ 43 NONAME + pjsip_regc_unregister_all @ 44 NONAME + pjsip_regc_update_contact @ 45 NONAME + pjsip_regc_update_expires @ 46 NONAME + pjsip_replaces_hdr_create @ 47 NONAME + pjsip_replaces_init_module @ 48 NONAME + pjsip_replaces_verify_request @ 49 NONAME + pjsip_xfer_accept @ 50 NONAME + pjsip_xfer_create_uac @ 51 NONAME + pjsip_xfer_create_uas @ 52 NONAME + pjsip_xfer_current_notify @ 53 NONAME + pjsip_xfer_init_module @ 54 NONAME + pjsip_xfer_initiate @ 55 NONAME + pjsip_xfer_notify @ 56 NONAME + pjsip_xfer_send_request @ 57 NONAME diff --git a/build.symbian/pjstun_client.mmp b/build.symbian/pjstun_client.mmp new file mode 100644 index 0000000..6ca5eab --- /dev/null +++ b/build.symbian/pjstun_client.mmp @@ -0,0 +1,41 @@ +TARGET pjstun_client.exe +TARGETTYPE exe +UID 0x0 0xA000000A + +OPTION ARMCC --gnu + +SOURCEPATH ..\pjnath\src\pjstun-client + +MACRO PJ_M_I386=1 +MACRO PJ_SYMBIAN=1 + +// PJSTUN-CLIENT files + +SOURCE client_main.c + +//SOURCE main_symbian.cpp + + +SYSTEMINCLUDE ..\pjlib\include +SYSTEMINCLUDE ..\pjlib-util\include +SYSTEMINCLUDE ..\pjnath\include + +SYSTEMINCLUDE \epoc32\include +SYSTEMINCLUDE \epoc32\include\libc + +#if defined(PJ_BUILD_DLL) +MACRO PJ_DLL +LIBRARY pjnath.lib pjlib_util.lib pjlib.lib +#else +STATICLIBRARY pjnath.lib pjlib_util.lib pjlib.lib +#endif + +LIBRARY esock.lib insock.lib charconv.lib euser.lib estlib.lib + +#ifdef WINSCW +STATICLIBRARY eexe.lib ecrt0.lib +#endif + + +CAPABILITY None + diff --git a/build.symbian/pjsua_lib.mmp b/build.symbian/pjsua_lib.mmp new file mode 100644 index 0000000..3a73018 --- /dev/null +++ b/build.symbian/pjsua_lib.mmp @@ -0,0 +1,55 @@ +#if defined(PJ_BUILD_DLL)
+
+TARGET pjsua_lib.dll
+TARGETTYPE dll
+
+UID 0x0 0xA000000B
+
+
+CAPABILITY None
+LIBRARY pjsip_ua.lib pjsip_simple.lib pjsip.lib pjmedia.lib 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 .\pjsua_lib.def
+
+#else
+
+TARGET pjsua_lib.lib
+TARGETTYPE lib
+
+#endif
+
+SOURCEPATH ..\pjsip\src\pjsua-lib
+
+MACRO PJ_M_I386=1
+MACRO PJ_SYMBIAN=1
+
+// Must compile as C++, otherwise exception would not work
+OPTION CW -lang c++
+OPTION ARMCC --cpp --gnu
+OPTION GCC -x c++
+OPTION GCCE -x c++
+
+// PJLIB-UTIL files
+
+SOURCE pjsua_acc.c
+SOURCE pjsua_aud.c
+SOURCE pjsua_call.c
+SOURCE pjsua_core.c
+SOURCE pjsua_dump.c
+SOURCE pjsua_im.c
+SOURCE pjsua_media.c
+SOURCE pjsua_pres.c
+SOURCE pjsua_vid.c
+
+SYSTEMINCLUDE ..\pjlib\include
+SYSTEMINCLUDE ..\pjlib-util\include
+SYSTEMINCLUDE ..\pjnath\include
+SYSTEMINCLUDE ..\pjmedia\include
+SYSTEMINCLUDE ..\pjsip\include
+
+SYSTEMINCLUDE \epoc32\include
+SYSTEMINCLUDE \epoc32\include\libc
+
+
diff --git a/build.symbian/pjsua_libU.def b/build.symbian/pjsua_libU.def new file mode 100644 index 0000000..911efbc --- /dev/null +++ b/build.symbian/pjsua_libU.def @@ -0,0 +1,122 @@ +EXPORTS + pjsua_acc_add @ 1 NONAME + pjsua_acc_add_local @ 2 NONAME + pjsua_acc_config_default @ 3 NONAME + pjsua_acc_config_dup @ 4 NONAME + pjsua_acc_create_request @ 5 NONAME + pjsua_acc_create_uac_contact @ 6 NONAME + pjsua_acc_create_uas_contact @ 7 NONAME + pjsua_acc_del @ 8 NONAME + pjsua_acc_enum_info @ 9 NONAME + pjsua_acc_find_for_incoming @ 10 NONAME + pjsua_acc_find_for_outgoing @ 11 NONAME + pjsua_acc_get_count @ 12 NONAME + pjsua_acc_get_default @ 13 NONAME + pjsua_acc_get_info @ 14 NONAME + pjsua_acc_is_valid @ 15 NONAME + pjsua_acc_modify @ 16 NONAME + pjsua_acc_set_default @ 17 NONAME + pjsua_acc_set_online_status @ 18 NONAME + pjsua_acc_set_online_status2 @ 19 NONAME + pjsua_acc_set_registration @ 20 NONAME + pjsua_acc_set_transport @ 21 NONAME + pjsua_buddy_add @ 22 NONAME + pjsua_buddy_config_default @ 23 NONAME + pjsua_buddy_del @ 24 NONAME + pjsua_buddy_get_info @ 25 NONAME + pjsua_buddy_is_valid @ 26 NONAME + pjsua_buddy_subscribe_pres @ 27 NONAME + pjsua_buddy_update_pres @ 28 NONAME + pjsua_call_answer @ 29 NONAME + pjsua_call_dial_dtmf @ 30 NONAME + pjsua_call_dump @ 31 NONAME + pjsua_call_get_conf_port @ 32 NONAME + pjsua_call_get_count @ 33 NONAME + pjsua_call_get_info @ 34 NONAME + pjsua_call_get_max_count @ 35 NONAME + pjsua_call_get_rem_nat_type @ 36 NONAME + pjsua_call_get_user_data @ 37 NONAME + pjsua_call_hangup @ 38 NONAME + pjsua_call_hangup_all @ 39 NONAME + pjsua_call_has_media @ 40 NONAME + pjsua_call_is_active @ 41 NONAME + pjsua_call_make_call @ 42 NONAME + pjsua_call_reinvite @ 43 NONAME + pjsua_call_send_im @ 44 NONAME + pjsua_call_send_request @ 45 NONAME + pjsua_call_send_typing_ind @ 46 NONAME + pjsua_call_set_hold @ 47 NONAME + pjsua_call_set_user_data @ 48 NONAME + pjsua_call_update @ 49 NONAME + pjsua_call_xfer @ 50 NONAME + pjsua_call_xfer_replaces @ 51 NONAME + pjsua_codec_get_param @ 52 NONAME + pjsua_codec_set_param @ 53 NONAME + pjsua_codec_set_priority @ 54 NONAME + pjsua_conf_add_port @ 55 NONAME + pjsua_conf_adjust_rx_level @ 56 NONAME + pjsua_conf_adjust_tx_level @ 57 NONAME + pjsua_conf_connect @ 58 NONAME + pjsua_conf_disconnect @ 59 NONAME + pjsua_conf_get_active_ports @ 60 NONAME + pjsua_conf_get_max_ports @ 61 NONAME + pjsua_conf_get_port_info @ 62 NONAME + pjsua_conf_get_signal_level @ 63 NONAME + pjsua_conf_remove_port @ 64 NONAME + pjsua_config_default @ 65 NONAME + pjsua_config_dup @ 66 NONAME + pjsua_create @ 67 NONAME + pjsua_destroy @ 68 NONAME + pjsua_detect_nat_type @ 69 NONAME + pjsua_dump @ 70 NONAME + pjsua_enum_accs @ 71 NONAME + pjsua_enum_buddies @ 72 NONAME + pjsua_enum_calls @ 73 NONAME + pjsua_enum_codecs @ 74 NONAME + pjsua_enum_conf_ports @ 75 NONAME + pjsua_enum_snd_devs @ 76 NONAME + pjsua_enum_transports @ 77 NONAME + pjsua_get_buddy_count @ 78 NONAME + pjsua_get_ec_tail @ 79 NONAME + pjsua_get_nat_type @ 80 NONAME + pjsua_get_pjmedia_endpt @ 81 NONAME + pjsua_get_pjsip_endpt @ 82 NONAME + pjsua_get_pool_factory @ 83 NONAME + pjsua_get_snd_dev @ 84 NONAME + pjsua_get_var @ 85 NONAME + pjsua_handle_events @ 86 NONAME + pjsua_im_send @ 87 NONAME + pjsua_im_typing @ 88 NONAME + pjsua_init @ 89 NONAME + pjsua_logging_config_default @ 90 NONAME + pjsua_logging_config_dup @ 91 NONAME + pjsua_media_config_default @ 92 NONAME + pjsua_media_transports_create @ 93 NONAME + pjsua_msg_data_init @ 94 NONAME + pjsua_perror @ 95 NONAME + pjsua_player_create @ 96 NONAME + pjsua_player_destroy @ 97 NONAME + pjsua_player_get_conf_port @ 98 NONAME + pjsua_player_get_port @ 99 NONAME + pjsua_player_set_pos @ 100 NONAME + pjsua_playlist_create @ 101 NONAME + pjsua_pool_create @ 102 NONAME + pjsua_pres_dump @ 103 NONAME + pjsua_reconfigure_logging @ 104 NONAME + pjsua_recorder_create @ 105 NONAME + pjsua_recorder_destroy @ 106 NONAME + pjsua_recorder_get_conf_port @ 107 NONAME + pjsua_recorder_get_port @ 108 NONAME + pjsua_set_ec @ 109 NONAME + pjsua_set_no_snd_dev @ 110 NONAME + pjsua_set_null_snd_dev @ 111 NONAME + pjsua_set_snd_dev @ 112 NONAME + pjsua_start @ 113 NONAME + pjsua_transport_close @ 114 NONAME + pjsua_transport_config_default @ 115 NONAME + pjsua_transport_config_dup @ 116 NONAME + pjsua_transport_create @ 117 NONAME + pjsua_transport_get_info @ 118 NONAME + pjsua_transport_register @ 119 NONAME + pjsua_transport_set_enable @ 120 NONAME + pjsua_verify_sip_url @ 121 NONAME diff --git a/build.symbian/symbian_audio.mmp b/build.symbian/symbian_audio.mmp new file mode 100644 index 0000000..bba9ce5 --- /dev/null +++ b/build.symbian/symbian_audio.mmp @@ -0,0 +1,47 @@ +#if defined(PJ_BUILD_DLL) + +TARGET symbian_audio.dll +TARGETTYPE dll +UID 0x0 0xA000000C + +CAPABILITY None +LIBRARY pjlib.lib charconv.lib euser.lib estlib.lib +LIBRARY mediaclientaudiostream.lib +LIBRARY mediaclientaudioinputstream.lib + +MACRO PJ_DLL +MACRO PJ_EXPORTING + +DEFFILE .\symbian_audio.def + +#else + +TARGET symbian_audio.lib +TARGETTYPE lib + +#endif + +SOURCEPATH ..\pjmedia\src\pjmedia + +OPTION CW -lang c++ +OPTION GCCE -O2 -fno-unit-at-a-time +OPTION ARMCC --gnu + +MACRO PJ_M_I386=1 +MACRO PJ_SYMBIAN=1 + +SOURCE nullsound.c +SOURCE symbian_sound.cpp +SOURCE symbian_sound_aps.cpp + +SYSTEMINCLUDE ..\pjlib\include +SYSTEMINCLUDE ..\pjmedia\include + +SYSTEMINCLUDE \epoc32\include +SYSTEMINCLUDE \epoc32\include\libc +SYSTEMINCLUDE \epoc32\include\mmf\server +SYSTEMINCLUDE \epoc32\include\mmf\common +SYSTEMINCLUDE \epoc32\include\mda\common + +SYSTEMINCLUDE \epoc32\include\mmf\plugin + diff --git a/build.symbian/symbian_audioU.def b/build.symbian/symbian_audioU.def new file mode 100644 index 0000000..883d5d8 --- /dev/null +++ b/build.symbian/symbian_audioU.def @@ -0,0 +1,12 @@ +EXPORTS + pjmedia_snd_deinit @ 1 NONAME + pjmedia_snd_get_dev_count @ 2 NONAME + pjmedia_snd_get_dev_info @ 3 NONAME + pjmedia_snd_init @ 4 NONAME + pjmedia_snd_open @ 5 NONAME + pjmedia_snd_open_player @ 6 NONAME + pjmedia_snd_open_rec @ 7 NONAME + pjmedia_snd_stream_close @ 8 NONAME + pjmedia_snd_stream_get_info @ 9 NONAME + pjmedia_snd_stream_start @ 10 NONAME + pjmedia_snd_stream_stop @ 11 NONAME diff --git a/build.symbian/symbian_ua.mmp b/build.symbian/symbian_ua.mmp new file mode 100644 index 0000000..af85b71 --- /dev/null +++ b/build.symbian/symbian_ua.mmp @@ -0,0 +1,84 @@ +// These part may be overwritten by automated test
+// =BEGIN
+#define SND_HAS_APS 0
+#define SND_HAS_VAS 0
+#define SND_HAS_MDA 1
+// =END
+
+TARGET symbian_ua.exe
+TARGETTYPE exe
+//UID 0x0 0x200235D3
+UID 0x0 0xA000000D
+
+SOURCEPATH ..\pjsip-apps\src\symbian_ua
+
+OPTION ARMCC --gnu
+
+MACRO PJ_M_I386=1
+MACRO PJ_SYMBIAN=1
+
+// Source files
+
+SOURCE ua.cpp
+SOURCE main_symbian.cpp
+
+DOCUMENT ua.h
+
+START RESOURCE symbian_ua_reg.rss
+ TARGETPATH \private\10003a3f\apps
+END
+
+SYSTEMINCLUDE ..\pjlib\include
+SYSTEMINCLUDE ..\pjlib-util\include
+SYSTEMINCLUDE ..\pjnath\include
+SYSTEMINCLUDE ..\pjmedia\include
+SYSTEMINCLUDE ..\pjsip\include
+
+SYSTEMINCLUDE \epoc32\include
+SYSTEMINCLUDE \epoc32\include\libc
+
+// Ordering static libs based on dependencies, most to least dependent,
+// this could be necessary for some SDKs, e.g: S60 3rd MR
+STATICLIBRARY pjsua_lib.lib
+STATICLIBRARY pjsip_ua.lib pjsip_simple.lib pjsip.lib
+STATICLIBRARY libgsmcodec.lib libspeexcodec.lib
+STATICLIBRARY libg7221codec.lib libpassthroughcodec.lib
+STATICLIBRARY pjmedia.lib
+STATICLIBRARY pjmedia_audiodev.lib
+STATICLIBRARY pjsdp.lib
+STATICLIBRARY pjnath.lib
+STATICLIBRARY pjlib_util.lib pjlib.lib
+STATICLIBRARY libsrtp.lib
+STATICLIBRARY libresample.lib
+
+#if SND_HAS_APS
+ LIBRARY APSSession2.lib
+#endif
+
+#if SND_HAS_VAS
+ LIBRARY VoIPAudioIntfc.lib
+#endif
+
+#if SND_HAS_MDA
+ LIBRARY mediaclientaudiostream.lib
+ LIBRARY mediaclientaudioinputstream.lib
+#endif
+
+#if SND_HAS_APS || SND_HAS_VAS
+ CAPABILITY NetworkServices LocalServices ReadUserData WriteUserData UserEnvironment MultimediaDD
+#else
+ CAPABILITY NetworkServices LocalServices ReadUserData WriteUserData UserEnvironment
+#endif
+
+#ifdef WINSCW
+ STATICLIBRARY eexe.lib ecrt0.lib
+#endif
+
+LIBRARY esock.lib insock.lib charconv.lib euser.lib estlib.lib commdb.lib apengine.lib
+LIBRARY securesocket.lib x509.lib crypto.lib x500.lib
+LIBRARY hal.lib efsrv.lib
+
+// The default 8KB seems to be insufficient with all bells and
+// whistles turned on
+EPOCSTACKSIZE 12288
+
diff --git a/build.symbian/symbian_ua.pkg b/build.symbian/symbian_ua.pkg new file mode 100644 index 0000000..32894c3 --- /dev/null +++ b/build.symbian/symbian_ua.pkg @@ -0,0 +1,19 @@ +; symbian_ua.pkg + +; Languages +&EN + +; Header +;#{"symbian_ua"},(0x200235D3), 0, 1, 1 +#{"symbian_ua"},(0xA000000D), 0, 1, 1 + +; Platform compatibility +[0x101F7961], *, *, *,{"Series60ProductID"} + +; vendor +%{"PJSIP"} +:"PJSIP" + +; Target +"$(EPOCROOT)Epoc32\release\$(PLATFORM)\$(TARGET)\symbian_ua.exe"-"!:\sys\bin\symbian_ua.exe" +"$(EPOCROOT)Epoc32\data\z\private\10003a3f\apps\symbian_ua_reg.rSC"-"!:\private\10003a3f\import\apps\symbian_ua_reg.rSC" diff --git a/build.symbian/symbian_ua_udeb.pkg b/build.symbian/symbian_ua_udeb.pkg new file mode 100644 index 0000000..5c255bf --- /dev/null +++ b/build.symbian/symbian_ua_udeb.pkg @@ -0,0 +1,21 @@ +; symbian_ua_udeb.pkg
+
+; for Carbide development, please use symbian_ua.pkg for comfortness
+; (epoc32 path, platform, and target are set automatically using env vars)
+
+; Languages
+&EN
+
+; Header
+#{"symbian_ua"},(0x200235D3), 0, 1, 1
+
+; Platform compatibility
+[0x101F7961], *, *, *,{"Series60ProductID"}
+
+; vendor
+%{"PJSIP"}
+:"PJSIP"
+
+; Target
+"C:\Symbian\9.2\S60_3rd_FP1\epoc32\release\gcce\UDEB\symbian_ua.exe"-"!:\sys\bin\symbian_ua.exe"
+"C:\Symbian\9.2\S60_3rd_FP1\epoc32\data\z\private\10003a3f\apps\symbian_ua_reg.rSC"-"!:\private\10003a3f\import\apps\symbian_ua_reg.rSC"
diff --git a/build.symbian/symbian_ua_urel.pkg b/build.symbian/symbian_ua_urel.pkg new file mode 100644 index 0000000..3bd6098 --- /dev/null +++ b/build.symbian/symbian_ua_urel.pkg @@ -0,0 +1,21 @@ +; symbian_ua.pkg
+
+; for Carbide development, please use symbian_ua.pkg for comfortness
+; (epoc32 path, platform, and target are set automatically using env vars)
+
+; Languages
+&EN
+
+; Header
+#{"symbian_ua"},(0x200235D3), 0, 1, 1
+
+; Platform compatibility
+[0x101F7961], *, *, *,{"Series60ProductID"}
+
+; vendor
+%{"PJSIP"}
+:"PJSIP"
+
+; Target
+"C:\Symbian\9.1\S60_3rd_MR\epoc32\release\gcce\UREL\symbian_ua.exe"-"!:\sys\bin\symbian_ua.exe"
+"C:\Symbian\9.1\S60_3rd_MR\epoc32\data\z\private\10003a3f\apps\symbian_ua_reg.rSC"-"!:\private\10003a3f\import\apps\symbian_ua_reg.rSC"
diff --git a/build.symbian/symsndtest.mmp b/build.symbian/symsndtest.mmp new file mode 100644 index 0000000..fb375db --- /dev/null +++ b/build.symbian/symsndtest.mmp @@ -0,0 +1,51 @@ +#define SND_USE_APS 0 +#define SND_USE_VAS 0 + +TARGET symsndtest.exe +TARGETTYPE exe +UID 0x0 0xA000000E + +OPTION ARMCC --gnu + +SOURCEPATH ..\pjsip-apps\src\symsndtest + +MACRO PJ_M_I386=1 +MACRO PJ_SYMBIAN=1 + +// Test files + +SOURCE app_main.cpp +SOURCE main_symbian.cpp + +START RESOURCE symsndtest_reg.rss + TARGETPATH \private\10003a3f\apps +END + +SYSTEMINCLUDE ..\pjlib\include +SYSTEMINCLUDE ..\pjmedia\include + +SYSTEMINCLUDE \epoc32\include +SYSTEMINCLUDE \epoc32\include\libc + +LIBRARY charconv.lib euser.lib estlib.lib +LIBRARY esock.lib insock.lib +STATICLIBRARY pjmedia_audiodev.lib +STATICLIBRARY pjmedia.lib +STATICLIBRARY pjlib.lib +STATICLIBRARY libresample.lib + +#if SND_USE_APS + LIBRARY APSSession2.lib + CAPABILITY NetworkServices LocalServices ReadUserData WriteUserData UserEnvironment MultimediaDD +#elif SND_USE_VAS + LIBRARY VoIPAudioIntfc.lib + CAPABILITY NetworkServices LocalServices ReadUserData WriteUserData UserEnvironment MultimediaDD +#else + LIBRARY mediaclientaudiostream.lib + LIBRARY mediaclientaudioinputstream.lib + CAPABILITY NetworkServices LocalServices ReadUserData WriteUserData UserEnvironment +#endif + +#ifdef WINSCW + STATICLIBRARY eexe.lib ecrt0.lib +#endif diff --git a/build.symbian/symsndtest.pkg b/build.symbian/symsndtest.pkg new file mode 100644 index 0000000..9dbb118 --- /dev/null +++ b/build.symbian/symsndtest.pkg @@ -0,0 +1,19 @@ +; symsndtest.pkg
+
+; Languages
+&EN
+
+; Header
+#{"symsndtest"},(0xA000000E), 0, 1, 1
+
+; Platform compatibility
+[0x101F7961], *, *, *, {"Series60ProductID"}
+
+; vendor
+%{"PJSIP"}
+:"PJSIP"
+
+; Target
+"$(EPOCROOT)Epoc32\release\$(PLATFORM)\$(TARGET)\symsndtest.exe"-"!:\sys\bin\symsndtest.exe"
+"$(EPOCROOT)Epoc32\data\z\private\10003a3f\apps\symsndtest_reg.rSC"-"!:\private\10003a3f\import\apps\symsndtest_reg.rSC"
+
|