Commit f68a0208 authored by Philippe Gerum's avatar Philippe Gerum

doc: build

parent d99e3f21
...@@ -3474,7 +3474,7 @@ CC = $(shell $(CONFIG_CMD) --cc)</code></pre> ...@@ -3474,7 +3474,7 @@ CC = $(shell $(CONFIG_CMD) --cc)</code></pre>
<div id="footnotes"><hr /></div> <div id="footnotes"><hr /></div>
<div id="footer"> <div id="footer">
<div id="footer-text"> <div id="footer-text">
Last updated 2017-02-15 15:31:41 CET Last updated 2017-04-02 16:42:05 CEST
</div> </div>
</div> </div>
</body> </body>
......
...@@ -850,7 +850,7 @@ package is called <em>valgrind-devel</em> on Fedora.</td> ...@@ -850,7 +850,7 @@ package is called <em>valgrind-devel</em> on Fedora.</td>
<div id="footnotes"><hr /></div> <div id="footnotes"><hr /></div>
<div id="footer"> <div id="footer">
<div id="footer-text"> <div id="footer-text">
Last updated 2017-02-15 15:31:41 CET Last updated 2017-04-02 16:42:05 CEST
</div> </div>
</div> </div>
</body> </body>
......
...@@ -2027,7 +2027,7 @@ Xenomai 3.x, you should have a look at ...@@ -2027,7 +2027,7 @@ Xenomai 3.x, you should have a look at
<div id="footnotes"><hr /></div> <div id="footnotes"><hr /></div>
<div id="footer"> <div id="footer">
<div id="footer-text"> <div id="footer-text">
Last updated 2017-02-15 15:31:41 CET Last updated 2017-04-02 16:42:05 CEST
</div> </div>
</div> </div>
</body> </body>
......
...@@ -1486,7 +1486,7 @@ allocation requests.</p></div> ...@@ -1486,7 +1486,7 @@ allocation requests.</p></div>
<div id="footnotes"><hr /></div> <div id="footnotes"><hr /></div>
<div id="footer"> <div id="footer">
<div id="footer-text"> <div id="footer-text">
Last updated 2017-02-15 15:31:41 CET Last updated 2017-04-02 16:42:05 CEST
</div> </div>
</div> </div>
</body> </body>
......
...@@ -775,7 +775,7 @@ way to gain those capabilities.</p></div> ...@@ -775,7 +775,7 @@ way to gain those capabilities.</p></div>
<div id="footnotes"><hr /></div> <div id="footnotes"><hr /></div>
<div id="footer"> <div id="footer">
<div id="footer-text"> <div id="footer-text">
Last updated 2017-02-15 15:31:41 CET Last updated 2017-04-02 16:42:05 CEST
</div> </div>
</div> </div>
</body> </body>
......
...@@ -755,7 +755,7 @@ XENO-CONFIG(1) Manual Page ...@@ -755,7 +755,7 @@ XENO-CONFIG(1) Manual Page
<div class="paragraph"><p><strong>xeno-config</strong> <strong>--info</strong></p></div> <div class="paragraph"><p><strong>xeno-config</strong> <strong>--info</strong></p></div>
<div class="paragraph"><p><strong>xeno-config</strong> <strong>--core</strong></p></div> <div class="paragraph"><p><strong>xeno-config</strong> <strong>--core</strong></p></div>
<div class="paragraph"><p><strong>xeno-config</strong> <strong>--version</strong></p></div> <div class="paragraph"><p><strong>xeno-config</strong> <strong>--version</strong></p></div>
<div class="paragraph"><p><strong>xeno-config</strong> [<strong>--cc</strong>] [<strong>--ccld</strong>] [<strong>--arch</strong>] [<strong>--prefix</strong>] [<strong>--posix|alchemy|rtdm|psos|vxworks|smokey</strong>] [<strong>--compat</strong>] [<strong>--auto-init</strong>|<strong>no-auto-init</strong>] [<strong>--auto-init-solib</strong>] [<strong>--cflags</strong>] [<strong>--ldflags</strong>] [<strong>--library-dir</strong>|<strong>--libdir</strong>|<strong>--user-libdir</strong>]</p></div> <div class="paragraph"><p><strong>xeno-config</strong> [<strong>--cc</strong>] [<strong>--ccld</strong>] [<strong>--arch</strong>] [<strong>--prefix</strong>] [<strong>--posix|alchemy|rtdm|psos|vxworks|smokey</strong>] [<strong>--compat</strong>] [<strong>--auto-init</strong>|<strong>no-auto-init</strong>] [<strong>--auto-init-solib</strong>] [<strong>--mode-check</strong>|<strong>no-mode-check</strong>] [<strong>--cflags</strong>] [<strong>--ldflags</strong>] [<strong>--library-dir</strong>|<strong>libdir</strong>|<strong>user-libdir</strong>]</p></div>
</div> </div>
</div> </div>
<div class="sect1"> <div class="sect1">
...@@ -929,6 +929,28 @@ only. <strong>xeno-config</strong> enables the Copperplate auto-init feature by ...@@ -929,6 +929,28 @@ only. <strong>xeno-config</strong> enables the Copperplate auto-init feature by
default.</p></div> default.</p></div>
<div class="dlist"><dl> <div class="dlist"><dl>
<dt class="hdlist1"> <dt class="hdlist1">
<strong>--mode-check</strong>
</dt>
<dt class="hdlist1">
<strong>--no-mode-check</strong>
</dt>
<dd>
<p>
Over Cobalt, a set of standard routines which may invoke regular Linux
system calls can trigger an assertion failure on entry, if the caller
must leave the real-time mode (aka "secondary mode switch") to execute
such routine.
</p>
</dd>
</dl></div>
<div class="paragraph"><p>The assertion failure is triggered if the calling thread has set the
PTHREAD_WARNSW flag by a call to <code>pthread_setmode_np()</code>.</p></div>
<div class="paragraph"><p>By default, the mode checking routines are substituted to the original
ones using the symbol wrapping mechanism also used for interposing on
POSIX services. <strong>--no-mode-check</strong> disables such substitution.</p></div>
<div class="paragraph"><p>These flags make sense when passed along with --ldflags only.</p></div>
<div class="dlist"><dl>
<dt class="hdlist1">
<strong>--auto-init-solib</strong> <strong>--auto-init-solib</strong>
</dt> </dt>
<dd> <dd>
...@@ -943,7 +965,7 @@ used for bootstrapping the initialization. ...@@ -943,7 +965,7 @@ used for bootstrapping the initialization.
<div class="paragraph"><p>The bootstrap code runs when the shared library is attached to a <div class="paragraph"><p>The bootstrap code runs when the shared library is attached to a
running executable, either because it appears in the static running executable, either because it appears in the static
dependencies of this executable, or when loaded dynamically via the dependencies of this executable, or when loaded dynamically via the
dlopen() interface.</p></div> <code>dlopen()</code> interface.</p></div>
<div class="dlist"><dl> <div class="dlist"><dl>
<dt class="hdlist1"> <dt class="hdlist1">
<strong>--core</strong> <strong>--core</strong>
...@@ -1045,7 +1067,7 @@ Error. ...@@ -1045,7 +1067,7 @@ Error.
<div id="footnotes"><hr /></div> <div id="footnotes"><hr /></div>
<div id="footer"> <div id="footer">
<div id="footer-text"> <div id="footer-text">
Last updated 2016-12-16 10:06:33 CET Last updated 2017-04-02 10:22:34 CEST
</div> </div>
</div> </div>
</body> </body>
......
...@@ -154,7 +154,7 @@ $(document).ready(function(){initNavTree('driver_8h_source.html','');}); ...@@ -154,7 +154,7 @@ $(document).ready(function(){initNavTree('driver_8h_source.html','');});
<div class="ttc" id="group__rtdm__task_html_gae52cca97ebaf78eec2e31553a4dacd5e"><div class="ttname"><a href="group__rtdm__task.html#gae52cca97ebaf78eec2e31553a4dacd5e">rtdm_task_unblock</a></div><div class="ttdeci">int rtdm_task_unblock(rtdm_task_t *task)</div><div class="ttdoc">Activate a blocked real-time task. </div></div> <div class="ttc" id="group__rtdm__task_html_gae52cca97ebaf78eec2e31553a4dacd5e"><div class="ttname"><a href="group__rtdm__task.html#gae52cca97ebaf78eec2e31553a4dacd5e">rtdm_task_unblock</a></div><div class="ttdeci">int rtdm_task_unblock(rtdm_task_t *task)</div><div class="ttdoc">Activate a blocked real-time task. </div></div>
<div class="ttc" id="structrtdm__dev__context_html_a8fea6f19169a166aa183d2e9da09df51"><div class="ttname"><a href="structrtdm__dev__context.html#a8fea6f19169a166aa183d2e9da09df51">rtdm_dev_context::device</a></div><div class="ttdeci">struct rtdm_device * device</div><div class="ttdoc">Set of active device operation handlers. </div><div class="ttdef"><b>Definition:</b> driver.h:141</div></div> <div class="ttc" id="structrtdm__dev__context_html_a8fea6f19169a166aa183d2e9da09df51"><div class="ttname"><a href="structrtdm__dev__context.html#a8fea6f19169a166aa183d2e9da09df51">rtdm_dev_context::device</a></div><div class="ttdeci">struct rtdm_device * device</div><div class="ttdoc">Set of active device operation handlers. </div><div class="ttdef"><b>Definition:</b> driver.h:141</div></div>
<div class="ttc" id="group__rtdm__sync__event_html_ga1217402b82034b26fe25c26f1e5b32c9"><div class="ttname"><a href="group__rtdm__sync__event.html#ga1217402b82034b26fe25c26f1e5b32c9">rtdm_event_signal</a></div><div class="ttdeci">void rtdm_event_signal(rtdm_event_t *event)</div><div class="ttdoc">Signal an event occurrence. </div><div class="ttdef"><b>Definition:</b> drvlib.c:783</div></div> <div class="ttc" id="group__rtdm__sync__event_html_ga1217402b82034b26fe25c26f1e5b32c9"><div class="ttname"><a href="group__rtdm__sync__event.html#ga1217402b82034b26fe25c26f1e5b32c9">rtdm_event_signal</a></div><div class="ttdeci">void rtdm_event_signal(rtdm_event_t *event)</div><div class="ttdoc">Signal an event occurrence. </div><div class="ttdef"><b>Definition:</b> drvlib.c:783</div></div>
<div class="ttc" id="group__cobalt__core__synch_html_ga51cec970cb57608abe882c98bee72347"><div class="ttname"><a href="group__cobalt__core__synch.html#ga51cec970cb57608abe882c98bee72347">xnsynch_sleep_on</a></div><div class="ttdeci">int xnsynch_sleep_on(struct xnsynch *synch, xnticks_t timeout, xntmode_t timeout_mode)</div><div class="ttdoc">Sleep on an ownerless synchronization object. </div><div class="ttdef"><b>Definition:</b> synch.c:162</div></div> <div class="ttc" id="group__cobalt__core__synch_html_ga51cec970cb57608abe882c98bee72347"><div class="ttname"><a href="group__cobalt__core__synch.html#ga51cec970cb57608abe882c98bee72347">xnsynch_sleep_on</a></div><div class="ttdeci">int __must_check xnsynch_sleep_on(struct xnsynch *synch, xnticks_t timeout, xntmode_t timeout_mode)</div><div class="ttdoc">Sleep on an ownerless synchronization object. </div><div class="ttdef"><b>Definition:</b> synch.c:162</div></div>
<div class="ttc" id="group__rtdm__sync__mutex_html_ga8d58a144bf71df7b38bb887d036cbbb5"><div class="ttname"><a href="group__rtdm__sync__mutex.html#ga8d58a144bf71df7b38bb887d036cbbb5">rtdm_mutex_init</a></div><div class="ttdeci">void rtdm_mutex_init(rtdm_mutex_t *mutex)</div><div class="ttdoc">Initialise a mutex. </div><div class="ttdef"><b>Definition:</b> drvlib.c:1241</div></div> <div class="ttc" id="group__rtdm__sync__mutex_html_ga8d58a144bf71df7b38bb887d036cbbb5"><div class="ttname"><a href="group__rtdm__sync__mutex.html#ga8d58a144bf71df7b38bb887d036cbbb5">rtdm_mutex_init</a></div><div class="ttdeci">void rtdm_mutex_init(rtdm_mutex_t *mutex)</div><div class="ttdoc">Initialise a mutex. </div><div class="ttdef"><b>Definition:</b> drvlib.c:1241</div></div>
<div class="ttc" id="group__rtdm__clock_html_ga861a79090031b981c627107248cf2d14"><div class="ttname"><a href="group__rtdm__clock.html#ga861a79090031b981c627107248cf2d14">rtdm_clock_read_monotonic</a></div><div class="ttdeci">nanosecs_abs_t rtdm_clock_read_monotonic(void)</div><div class="ttdoc">Get monotonic time. </div></div> <div class="ttc" id="group__rtdm__clock_html_ga861a79090031b981c627107248cf2d14"><div class="ttname"><a href="group__rtdm__clock.html#ga861a79090031b981c627107248cf2d14">rtdm_clock_read_monotonic</a></div><div class="ttdeci">nanosecs_abs_t rtdm_clock_read_monotonic(void)</div><div class="ttdoc">Get monotonic time. </div></div>
<div class="ttc" id="group__rtdm__util_html_gab42031be84dba5825ac90dbf28606c54"><div class="ttname"><a href="group__rtdm__util.html#gab42031be84dba5825ac90dbf28606c54">rtdm_rt_capable</a></div><div class="ttdeci">int rtdm_rt_capable(struct rtdm_fd *fd)</div><div class="ttdoc">Test if the caller is capable of running in real-time context. </div></div> <div class="ttc" id="group__rtdm__util_html_gab42031be84dba5825ac90dbf28606c54"><div class="ttname"><a href="group__rtdm__util.html#gab42031be84dba5825ac90dbf28606c54">rtdm_rt_capable</a></div><div class="ttdeci">int rtdm_rt_capable(struct rtdm_fd *fd)</div><div class="ttdoc">Test if the caller is capable of running in real-time context. </div></div>
......
...@@ -92,7 +92,7 @@ Functions</h2></td></tr> ...@@ -92,7 +92,7 @@ Functions</h2></td></tr>
<tr class="memitem:gadd862461f55506485f04f4f98cdb6fb8"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__cobalt__core__synch.html#gadd862461f55506485f04f4f98cdb6fb8">xnsynch_destroy</a> (struct xnsynch *synch)</td></tr> <tr class="memitem:gadd862461f55506485f04f4f98cdb6fb8"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__cobalt__core__synch.html#gadd862461f55506485f04f4f98cdb6fb8">xnsynch_destroy</a> (struct xnsynch *synch)</td></tr>
<tr class="memdesc:gadd862461f55506485f04f4f98cdb6fb8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destroy a synchronization object. <a href="#gadd862461f55506485f04f4f98cdb6fb8">More...</a><br /></td></tr> <tr class="memdesc:gadd862461f55506485f04f4f98cdb6fb8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destroy a synchronization object. <a href="#gadd862461f55506485f04f4f98cdb6fb8">More...</a><br /></td></tr>
<tr class="separator:gadd862461f55506485f04f4f98cdb6fb8"><td class="memSeparator" colspan="2">&#160;</td></tr> <tr class="separator:gadd862461f55506485f04f4f98cdb6fb8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga51cec970cb57608abe882c98bee72347"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__cobalt__core__synch.html#ga51cec970cb57608abe882c98bee72347">xnsynch_sleep_on</a> (struct xnsynch *synch, xnticks_t timeout, xntmode_t timeout_mode)</td></tr> <tr class="memitem:ga51cec970cb57608abe882c98bee72347"><td class="memItemLeft" align="right" valign="top">int __must_check&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__cobalt__core__synch.html#ga51cec970cb57608abe882c98bee72347">xnsynch_sleep_on</a> (struct xnsynch *synch, xnticks_t timeout, xntmode_t timeout_mode)</td></tr>
<tr class="memdesc:ga51cec970cb57608abe882c98bee72347"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sleep on an ownerless synchronization object. <a href="#ga51cec970cb57608abe882c98bee72347">More...</a><br /></td></tr> <tr class="memdesc:ga51cec970cb57608abe882c98bee72347"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sleep on an ownerless synchronization object. <a href="#ga51cec970cb57608abe882c98bee72347">More...</a><br /></td></tr>
<tr class="separator:ga51cec970cb57608abe882c98bee72347"><td class="memSeparator" colspan="2">&#160;</td></tr> <tr class="separator:ga51cec970cb57608abe882c98bee72347"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga54162964059c62d7a7b45ef22911662f"><td class="memItemLeft" align="right" valign="top">struct xnthread *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__cobalt__core__synch.html#ga54162964059c62d7a7b45ef22911662f">xnsynch_wakeup_one_sleeper</a> (struct xnsynch *synch)</td></tr> <tr class="memitem:ga54162964059c62d7a7b45ef22911662f"><td class="memItemLeft" align="right" valign="top">struct xnthread *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__cobalt__core__synch.html#ga54162964059c62d7a7b45ef22911662f">xnsynch_wakeup_one_sleeper</a> (struct xnsynch *synch)</td></tr>
...@@ -101,10 +101,10 @@ Functions</h2></td></tr> ...@@ -101,10 +101,10 @@ Functions</h2></td></tr>
<tr class="memitem:ga8096364cd5d717dae816c74dcc05a8ac"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__cobalt__core__synch.html#ga8096364cd5d717dae816c74dcc05a8ac">xnsynch_wakeup_this_sleeper</a> (struct xnsynch *synch, struct xnthread *sleeper)</td></tr> <tr class="memitem:ga8096364cd5d717dae816c74dcc05a8ac"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__cobalt__core__synch.html#ga8096364cd5d717dae816c74dcc05a8ac">xnsynch_wakeup_this_sleeper</a> (struct xnsynch *synch, struct xnthread *sleeper)</td></tr>
<tr class="memdesc:ga8096364cd5d717dae816c74dcc05a8ac"><td class="mdescLeft">&#160;</td><td class="mdescRight">Unblock a particular thread from wait. <a href="#ga8096364cd5d717dae816c74dcc05a8ac">More...</a><br /></td></tr> <tr class="memdesc:ga8096364cd5d717dae816c74dcc05a8ac"><td class="mdescLeft">&#160;</td><td class="mdescRight">Unblock a particular thread from wait. <a href="#ga8096364cd5d717dae816c74dcc05a8ac">More...</a><br /></td></tr>
<tr class="separator:ga8096364cd5d717dae816c74dcc05a8ac"><td class="memSeparator" colspan="2">&#160;</td></tr> <tr class="separator:ga8096364cd5d717dae816c74dcc05a8ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga43fa3ecdc81f6ae157f840175c7ea091"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__cobalt__core__synch.html#ga43fa3ecdc81f6ae157f840175c7ea091">xnsynch_acquire</a> (struct xnsynch *synch, xnticks_t timeout, xntmode_t timeout_mode)</td></tr> <tr class="memitem:ga43fa3ecdc81f6ae157f840175c7ea091"><td class="memItemLeft" align="right" valign="top">int __must_check&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__cobalt__core__synch.html#ga43fa3ecdc81f6ae157f840175c7ea091">xnsynch_acquire</a> (struct xnsynch *synch, xnticks_t timeout, xntmode_t timeout_mode)</td></tr>
<tr class="memdesc:ga43fa3ecdc81f6ae157f840175c7ea091"><td class="mdescLeft">&#160;</td><td class="mdescRight">Acquire the ownership of a synchronization object. <a href="#ga43fa3ecdc81f6ae157f840175c7ea091">More...</a><br /></td></tr> <tr class="memdesc:ga43fa3ecdc81f6ae157f840175c7ea091"><td class="mdescLeft">&#160;</td><td class="mdescRight">Acquire the ownership of a synchronization object. <a href="#ga43fa3ecdc81f6ae157f840175c7ea091">More...</a><br /></td></tr>
<tr class="separator:ga43fa3ecdc81f6ae157f840175c7ea091"><td class="memSeparator" colspan="2">&#160;</td></tr> <tr class="separator:ga43fa3ecdc81f6ae157f840175c7ea091"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad5cad7eeaa18834c9ba8843511a67628"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__cobalt__core__synch.html#gad5cad7eeaa18834c9ba8843511a67628">xnsynch_try_acquire</a> (struct xnsynch *synch)</td></tr> <tr class="memitem:gad5cad7eeaa18834c9ba8843511a67628"><td class="memItemLeft" align="right" valign="top">int __must_check&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__cobalt__core__synch.html#gad5cad7eeaa18834c9ba8843511a67628">xnsynch_try_acquire</a> (struct xnsynch *synch)</td></tr>
<tr class="memdesc:gad5cad7eeaa18834c9ba8843511a67628"><td class="mdescLeft">&#160;</td><td class="mdescRight">Try acquiring the ownership of a synchronization object. <a href="#gad5cad7eeaa18834c9ba8843511a67628">More...</a><br /></td></tr> <tr class="memdesc:gad5cad7eeaa18834c9ba8843511a67628"><td class="mdescLeft">&#160;</td><td class="mdescRight">Try acquiring the ownership of a synchronization object. <a href="#gad5cad7eeaa18834c9ba8843511a67628">More...</a><br /></td></tr>
<tr class="separator:gad5cad7eeaa18834c9ba8843511a67628"><td class="memSeparator" colspan="2">&#160;</td></tr> <tr class="separator:gad5cad7eeaa18834c9ba8843511a67628"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad38fe2be85e02bf1298418674ab6386f"><td class="memItemLeft" align="right" valign="top">struct xnthread *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__cobalt__core__synch.html#gad38fe2be85e02bf1298418674ab6386f">xnsynch_release</a> (struct xnsynch *synch, struct xnthread *thread)</td></tr> <tr class="memitem:gad38fe2be85e02bf1298418674ab6386f"><td class="memItemLeft" align="right" valign="top">struct xnthread *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__cobalt__core__synch.html#gad38fe2be85e02bf1298418674ab6386f">xnsynch_release</a> (struct xnsynch *synch, struct xnthread *thread)</td></tr>
......
...@@ -72,7 +72,7 @@ $(document).ready(function(){initNavTree('xenomai_2init_8h_source.html','');}); ...@@ -72,7 +72,7 @@ $(document).ready(function(){initNavTree('xenomai_2init_8h_source.html','');});
<div class="title">init.h</div> </div> <div class="title">init.h</div> </div>
</div><!--header--> </div><!--header-->
<div class="contents"> <div class="contents">
<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> * Copyright (C) 2008 Philippe Gerum &lt;rpm@xenomai.org&gt;.</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * This library is free software; you can redistribute it and/or</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * modify it under the terms of the GNU Lesser General Public</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * License as published by the Free Software Foundation; either</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * version 2 of the License, or (at your option) any later version.</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * This library is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * Lesser General Public License for more details.</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"></span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * You should have received a copy of the GNU Lesser General Public</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * License along with this library; if not, write to the Free Software</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="preprocessor">#ifndef _XENOMAI_INIT_H</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="preprocessor">#define _XENOMAI_INIT_H</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="preprocessor">#include &lt;boilerplate/setup.h&gt;</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="preprocessor">#include &lt;boilerplate/ancillaries.h&gt;</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;</div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="keywordtype">void</span> xenomai_init(<span class="keywordtype">int</span> *argcp, <span class="keywordtype">char</span> *<span class="keyword">const</span> **argvp);</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="keywordtype">int</span> xenomai_main(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> *<span class="keyword">const</span> argv[]);</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="keywordtype">void</span> xenomai_usage(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="keywordtype">void</span> application_usage(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="keywordtype">void</span> application_version(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="keyword">extern</span> <span class="keyword">const</span> <span class="keywordtype">char</span> *xenomai_version_string;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="keyword">extern</span> <span class="keyword">const</span> <span class="keywordtype">int</span> xenomai_auto_bootstrap;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; </div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;}</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* _XENOMAI_INIT_H */</span><span class="preprocessor"></span></div></div><!-- fragment --></div><!-- contents --> <div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> * Copyright (C) 2008 Philippe Gerum &lt;rpm@xenomai.org&gt;.</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * This library is free software; you can redistribute it and/or</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * modify it under the terms of the GNU Lesser General Public</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * License as published by the Free Software Foundation; either</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * version 2 of the License, or (at your option) any later version.</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * This library is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * Lesser General Public License for more details.</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"></span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * You should have received a copy of the GNU Lesser General Public</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * License along with this library; if not, write to the Free Software</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="preprocessor">#ifndef _XENOMAI_INIT_H</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="preprocessor">#define _XENOMAI_INIT_H</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="preprocessor">#include &lt;boilerplate/setup.h&gt;</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="preprocessor">#include &lt;boilerplate/ancillaries.h&gt;</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;</div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="keywordtype">void</span> xenomai_init(<span class="keywordtype">int</span> *argcp, <span class="keywordtype">char</span> *<span class="keyword">const</span> **argvp);</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="keywordtype">void</span> xenomai_init_dso(<span class="keywordtype">int</span> *argcp, <span class="keywordtype">char</span> *<span class="keyword">const</span> **argvp);</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="keywordtype">int</span> xenomai_main(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> *<span class="keyword">const</span> argv[]);</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="keywordtype">void</span> xenomai_usage(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="keywordtype">void</span> application_usage(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="keywordtype">void</span> application_version(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="keyword">extern</span> <span class="keyword">const</span> <span class="keywordtype">char</span> *xenomai_version_string;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="keyword">extern</span> <span class="keyword">const</span> <span class="keywordtype">int</span> xenomai_auto_bootstrap;</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; </div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;}</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* _XENOMAI_INIT_H */</span><span class="preprocessor"></span></div></div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content --> </div><!-- doc-content -->
<!-- start footer part --> <!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
......
...@@ -2,12 +2,12 @@ ...@@ -2,12 +2,12 @@
.\" Title: dohell .\" Title: dohell
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author] .\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/> .\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 02/15/2017 .\" Date: 04/02/2017
.\" Manual: Xenomai Manual .\" Manual: Xenomai Manual
.\" Source: Xenomai 3.0.4 .\" Source: Xenomai 3.0.4
.\" Language: English .\" Language: English
.\" .\"
.TH "DOHELL" "1" "02/15/2017" "Xenomai 3\&.0\&.4" "Xenomai Manual" .TH "DOHELL" "1" "04/02/2017" "Xenomai 3\&.0\&.4" "Xenomai Manual"
.\" ----------------------------------------------------------------- .\" -----------------------------------------------------------------
.\" * Define some portability stuff .\" * Define some portability stuff
.\" ----------------------------------------------------------------- .\" -----------------------------------------------------------------
......
...@@ -43,7 +43,7 @@ xeno-config \- Retrieve Xenomai build flags and configuration ...@@ -43,7 +43,7 @@ xeno-config \- Retrieve Xenomai build flags and configuration
.sp .sp
\fBxeno\-config\fR \fB\-\-version\fR \fBxeno\-config\fR \fB\-\-version\fR
.sp .sp
\fBxeno\-config\fR [\fB\-\-cc\fR] [\fB\-\-ccld\fR] [\fB\-\-arch\fR] [\fB\-\-prefix\fR] [\fB\-\-posix|alchemy|rtdm|psos|vxworks|smokey\fR] [\fB\-\-compat\fR] [\fB\-\-auto\-init\fR|\fBno\-auto\-init\fR] [\fB\-\-auto\-init\-solib\fR] [\fB\-\-cflags\fR] [\fB\-\-ldflags\fR] [\fB\-\-library\-dir\fR|\fB\-\-libdir\fR|\fB\-\-user\-libdir\fR] \fBxeno\-config\fR [\fB\-\-cc\fR] [\fB\-\-ccld\fR] [\fB\-\-arch\fR] [\fB\-\-prefix\fR] [\fB\-\-posix|alchemy|rtdm|psos|vxworks|smokey\fR] [\fB\-\-compat\fR] [\fB\-\-auto\-init\fR|\fBno\-auto\-init\fR] [\fB\-\-auto\-init\-solib\fR] [\fB\-\-mode\-check\fR|\fBno\-mode\-check\fR] [\fB\-\-cflags\fR] [\fB\-\-ldflags\fR] [\fB\-\-library\-dir\fR|\fBlibdir\fR|\fBuser\-libdir\fR]
.SH "DESCRIPTION" .SH "DESCRIPTION"
.sp .sp
\fBxeno\-config\fR is a shell script which is aimed at retrieving the Xenomai build configuration data, such as the compiler and linker flags required for building applications\&. For this reason, \fBxeno\-config\fR is typically used in Makefiles\&. \fBxeno\-config\fR is a shell script which is aimed at retrieving the Xenomai build configuration data, such as the compiler and linker flags required for building applications\&. For this reason, \fBxeno\-config\fR is typically used in Makefiles\&.
...@@ -162,6 +162,17 @@ any real\-time service is invoked\&. ...@@ -162,6 +162,17 @@ any real\-time service is invoked\&.
.sp .sp
This flag makes sense when passed along with \-\-ldflags only\&. \fBxeno\-config\fR enables the Copperplate auto\-init feature by default\&. This flag makes sense when passed along with \-\-ldflags only\&. \fBxeno\-config\fR enables the Copperplate auto\-init feature by default\&.
.PP .PP
\fB\-\-mode\-check\fR, \fB\-\-no\-mode\-check\fR
.RS 4
Over Cobalt, a set of standard routines which may invoke regular Linux system calls can trigger an assertion failure on entry, if the caller must leave the real\-time mode (aka "secondary mode switch") to execute such routine\&.
.RE
.sp
The assertion failure is triggered if the calling thread has set the PTHREAD_WARNSW flag by a call to pthread_setmode_np()\&.
.sp
By default, the mode checking routines are substituted to the original ones using the symbol wrapping mechanism also used for interposing on POSIX services\&. \fB\-\-no\-mode\-check\fR disables such substitution\&.
.sp
These flags make sense when passed along with \-\-ldflags only\&.
.PP
\fB\-\-auto\-init\-solib\fR \fB\-\-auto\-init\-solib\fR
.RS 4 .RS 4
This switch enables the auto\-initialization feature described above for a shared library target instead of a pure executable\&. The main difference resides in a position\-independent (PIC) glue code being used for bootstrapping the initialization\&. This switch enables the auto\-initialization feature described above for a shared library target instead of a pure executable\&. The main difference resides in a position\-independent (PIC) glue code being used for bootstrapping the initialization\&.
......
...@@ -2,12 +2,12 @@ ...@@ -2,12 +2,12 @@
.\" Title: xeno-test .\" Title: xeno-test
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author] .\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/> .\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 02/15/2017 .\" Date: 04/02/2017
.\" Manual: Xenomai Manual .\" Manual: Xenomai Manual
.\" Source: Xenomai 3.0.4 .\" Source: Xenomai 3.0.4
.\" Language: English .\" Language: English
.\" .\"
.TH "XENO\-TEST" "1" "02/15/2017" "Xenomai 3\&.0\&.4" "Xenomai Manual" .TH "XENO\-TEST" "1" "04/02/2017" "Xenomai 3\&.0\&.4" "Xenomai Manual"
.\" ----------------------------------------------------------------- .\" -----------------------------------------------------------------
.\" * Define some portability stuff .\" * Define some portability stuff
.\" ----------------------------------------------------------------- .\" -----------------------------------------------------------------
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment