blob: 93bdcc0ea55866f3d1ff6bf9548f55e6b5c57c48 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>osclconfig.h Source File</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.2.18 -->
<center>
<a class="qindex" href="index.html">Main Page</a> &nbsp; <a class="qindex" href="modules.html">Modules</a> &nbsp; <a class="qindex" href="hierarchy.html">Class Hierarchy</a> &nbsp; <a class="qindex" href="annotated.html">Data Structures</a> &nbsp; <a class="qindex" href="files.html">File List</a> &nbsp; <a class="qindex" href="functions.html">Data Fields</a> &nbsp; <a class="qindex" href="globals.html">Globals</a> &nbsp; </center>
<hr><h1>osclconfig.h</h1><a href="osclconfig_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 <span class="comment">// -*- c++ -*-</span>
00002 <span class="comment">// = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =</span>
00003
00004 <span class="comment">// O S C L C O N F I G ( P L A T F O R M C O N F I G I N F O )</span>
00005
00006 <span class="comment">// = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =</span>
00007
00008
00014 <span class="preprocessor">#ifndef OSCLCONFIG_H_INCLUDED</span>
00015 <span class="preprocessor"></span><span class="preprocessor">#define OSCLCONFIG_H_INCLUDED</span>
00016 <span class="preprocessor"></span>
00017 <span class="comment">// system includes for dynamic registry</span>
00018 <span class="preprocessor">#include &lt;dirent.h&gt;</span>
00019 <span class="preprocessor">#include &lt;dlfcn.h&gt;</span>
00020
<a name="l00021"></a><a class="code" href="osclconfig_8h.html#a0">00021</a> <span class="preprocessor">#define OSCL_HAS_ANDROID_SUPPORT 1</span>
<a name="l00022"></a><a class="code" href="osclconfig_8h.html#a1">00022</a> <span class="preprocessor"></span><span class="preprocessor">#define OSCL_HAS_ANDROID_FILE_IO_SUPPORT 1</span>
00023 <span class="preprocessor"></span>
00024 <span class="comment">// include common include for determining sizes from limits.h</span>
00025 <span class="preprocessor">#include "<a class="code" href="osclconfig__limits__typedefs_8h.html">osclconfig_limits_typedefs.h</a>"</span>
00026
00027 <span class="comment">//This switch turns off some profiling and debug settings</span>
00028 <span class="preprocessor">#ifdef NDEBUG</span>
00029 <span class="preprocessor"></span><span class="preprocessor">#define OSCL_RELEASE_BUILD 1</span>
00030 <span class="preprocessor"></span><span class="preprocessor">#else</span>
<a name="l00031"></a><a class="code" href="osclconfig_8h.html#a2">00031</a> <span class="preprocessor"></span><span class="preprocessor">#define OSCL_RELEASE_BUILD 0</span>
00032 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
00033 <span class="preprocessor"></span>
00034 <span class="comment">// include common unix definitions</span>
00035 <span class="preprocessor">#include "<a class="code" href="osclconfig__unix__android_8h.html">osclconfig_unix_android.h</a>"</span>
00036
00037 <span class="comment">// define the suffix for unsigned constants</span>
<a name="l00038"></a><a class="code" href="osclconfig_8h.html#a3">00038</a> <span class="preprocessor">#define OSCL_UNSIGNED_CONST(x) x##u</span>
00039 <span class="preprocessor"></span>
00040 <span class="comment">// override the common definition for</span>
00041 <span class="preprocessor">#undef OSCL_NATIVE_UINT64_TYPE</span>
<a name="l00042"></a><a class="code" href="osclconfig_8h.html#a4">00042</a> <span class="preprocessor"></span><span class="preprocessor">#define OSCL_NATIVE_UINT64_TYPE u_int64_t</span>
00043 <span class="preprocessor"></span>
00044 <span class="comment">// include the definitions for the processor</span>
00045 <span class="preprocessor">#include "<a class="code" href="osclconfig__ix86_8h.html">osclconfig_ix86.h</a>"</span>
00046
00047 <span class="comment">// the syntax for explicitly calling the destructor varies on some platforms</span>
00048 <span class="comment">// below is the default syntax as defined by another ARM project</span>
<a name="l00049"></a><a class="code" href="osclconfig_8h.html#a5">00049</a> <span class="preprocessor">#define OSCL_TEMPLATED_DESTRUCTOR_CALL(type,simple_type) ~type ()</span>
00050 <span class="preprocessor"></span>
00051
00052 <span class="comment">/* The __TFS__ macro is used to optionally expand to "&lt;&gt;" depending on the</span>
00053 <span class="comment"> * compiler. Some compilers require it to indicate that the friend function</span>
00054 <span class="comment"> * is a template function as specified in the standard, but others don't</span>
00055 <span class="comment"> * like it so it will handled with a macro expansion that depends on the</span>
00056 <span class="comment"> * compiler.</span>
00057 <span class="comment"> */</span>
<a name="l00058"></a><a class="code" href="osclconfig_8h.html#a6">00058</a> <span class="preprocessor">#define __TFS__ &lt;&gt;</span>
00059 <span class="preprocessor"></span>
<a name="l00060"></a><a class="code" href="osclconfig_8h.html#a7">00060</a> <span class="preprocessor">#define OSCL_BEGIN_PACKED</span>
<a name="l00061"></a><a class="code" href="osclconfig_8h.html#a8">00061</a> <span class="preprocessor"></span><span class="preprocessor">#define OSCL_PACKED_VAR(x) x __attribute__((packed))</span>
<a name="l00062"></a><a class="code" href="osclconfig_8h.html#a9">00062</a> <span class="preprocessor"></span><span class="preprocessor">#define OSCL_PACKED_STRUCT_BEGIN</span>
<a name="l00063"></a><a class="code" href="osclconfig_8h.html#a10">00063</a> <span class="preprocessor"></span><span class="preprocessor">#define OSCL_PACKED_STRUCT_END __attribute__((packed))</span>
<a name="l00064"></a><a class="code" href="osclconfig_8h.html#a11">00064</a> <span class="preprocessor"></span><span class="preprocessor">#define OSCL_END_PACKED</span>
00065 <span class="preprocessor"></span>
00066 <span class="comment">//set this to 1 to enable OSCL_ASSERT in release builds.</span>
<a name="l00067"></a><a class="code" href="group__osclconfig.html#a6">00067</a> <span class="preprocessor">#define OSCL_ASSERT_ALWAYS 0</span>
00068 <span class="preprocessor"></span>
00069
00070 <span class="comment">// check all osclconfig required macros are defined</span>
00071 <span class="preprocessor">#include "<a class="code" href="osclconfig__check_8h.html">osclconfig_check.h</a>"</span>
00072
00073 <span class="preprocessor">#endif</span>
</pre></div><hr size="1"><img src="pvlogo_small.jpg"><address style="align: right;"><small>OSCL API</small>
<address style="align: left;"><small>Posting Version: OPENCORE_20090310 </small>
</small></address>
</body>
</html>