Changes between Initial Version and Version 1 of Ticket #354


Ignore:
Timestamp:
Jul 20, 2007 8:02:41 AM (17 years ago)
Author:
bennylp
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #354 – Description

    initial v1  
    1010 
    1111'''DEF file generation''' 
     12 
     13A simple Mingw shell script was created to generate DEF file from MMP file. To invoke this script: 
     14 
     15{{{ 
     16  ..build.symbian $ ./makedef.sh pjlib.mmp 
     17}}} 
     18 
     19This script parses the preprocessor output of each source files and look for {{{EXPORT_C}}} modifier for symbols to export. Because of this, the indentation of some function definitions need to be modified to make it parseable by this script. 
     20 
     21'''Problems with exporting global const variables''' 
     22 
     23It looks like the use of global variables are really discouraged in Symbian, even if they are const variables. They don't work, because their values are not initialized when used by applications. Unfortunately, PJLIB does export some global const variables, in: 
     24 - '''sock.h''', for things such as {{{PJ_AF_INET}}} and {{{PJ_SOCK_STREAM}}} constants. 
     25 - '''pool.h''', for the default pool factory policy ({{{pj_pool_factory_default_policy}}}). 
     26 
     27To fix this, some accessor functions were added: 
     28 - '''sock.h''', added {{{pj_AF_INET()}}} function which returns {{{PJ_AF_INET}}} value, {{{pj_SOCK_STREAM()}}} for {{{PJ_SOCK_STREAM}}}, etc. All libraries have been updated to use this function rather than directly accessing the variable. 
     29 - '''pool.h''', added {{{pj_pool_factory_get_default_policy()}}} function which returns the default pool factory policy. In addition, user may specify NULL as the policy when calling {{{pj_caching_pool_init()}}} to make it use the default policy.