summaryrefslogtreecommitdiffstats
path: root/cpukit/sapi/include/rtems/extension.h (unfollow)
Commit message (Collapse)AuthorFilesLines
2018-01-25Remove make preinstallChris Johns1-245/+0
A speciality of the RTEMS build system was the make preinstall step. It copied header files from arbitrary locations into the build tree. The header files were included via the -Bsome/build/tree/path GCC command line option. This has at least seven problems: * The make preinstall step itself needs time and disk space. * Errors in header files show up in the build tree copy. This makes it hard for editors to open the right file to fix the error. * There is no clear relationship between source and build tree header files. This makes an audit of the build process difficult. * The visibility of all header files in the build tree makes it difficult to enforce API barriers. For example it is discouraged to use BSP-specifics in the cpukit. * An introduction of a new build system is difficult. * Include paths specified by the -B option are system headers. This may suppress warnings. * The parallel build had sporadic failures on some hosts. This patch removes the make preinstall step. All installed header files are moved to dedicated include directories in the source tree. Let @RTEMS_CPU@ be the target architecture, e.g. arm, powerpc, sparc, etc. Let @RTEMS_BSP_FAMILIY@ be a BSP family base directory, e.g. erc32, imx, qoriq, etc. The new cpukit include directories are: * cpukit/include * cpukit/score/cpu/@RTEMS_CPU@/include * cpukit/libnetworking The new BSP include directories are: * bsps/include * bsps/@RTEMS_CPU@/include * bsps/@RTEMS_CPU@/@RTEMS_BSP_FAMILIY@/include There are build tree include directories for generated files. The include directory order favours the most general header file, e.g. it is not possible to override general header files via the include path order. The "bootstrap -p" option was removed. The new "bootstrap -H" option should be used to regenerate the "headers.am" files. Update #3254.
2017-01-26sapi: Add rtems_task_terminate_extensionSebastian Huber1-0/+1
2015-12-24api: Remove deprecated NotepadsAun-Ali Zaidi1-3/+1
Notepads where a feature of RTEMS' tasks that simply functioned in the same way as POSIX keys or threaded local storage (TLS). They were introduced well before per task variables, which are also deprecated, and were barely used in favor of their POSIX alternatives. In addition to their scarce usage, Notepads took up unnecessary memory. For each task: - 16 32-bit integers were allocated. - A total of 64 bytes per task per thread. This is especially critical in low memory and safety-critical applications. They are also defined as uint32_t, and therefore are not guaranteed to hold a pointer. Lastly, they are not portable solutions for SMP and uniprocessor systems, like POSIX keys and TLS. updates #2493.
2015-10-26basdefs.h: Add and use RTEMS_DEPRECATEDSebastian Huber1-1/+1
2014-03-21Change all references of rtems.com to rtems.org.Chris Johns1-1/+1
2013-07-23sapi: Create extension implementation headerSebastian Huber1-17/+0
Move implementation specific parts of extension.h and extension.inl into new header file extensionimpl.h. The extension.h contains now only the application visible API.
2013-01-10cpukit: Use Consistent Beginning of Doxygen Group NotationJoel Sherrill1-2/+1
This is the result of a sed script which converts all uses of @{ into a consistent form.
2013-01-08sapi: Doxygen Clean Up Task #1Alex Ivanov1-4/+2
2012-12-07sapi misc: Clean up Doxygen GCI task #1Christopher Kerl1-0/+5
http://www.google-melange.com/gci/task/view/google/gci2012/8011204
2012-11-15sapi: Add rtems_fatal_source and rtems_fatal_codeSebastian Huber1-0/+4
2012-05-11Remove All CVS Id Strings Possible Using a ScriptJoel Sherrill1-2/+0
Script does what is expected and tries to do it as smartly as possible. + remove occurrences of two blank comment lines next to each other after Id string line removed. + remove entire comment blocks which only exited to contain CVS Ids + If the processing left a blank line at the top of a file, it was removed.
2011-03-102011-03-10 Sebastian Huber <sebastian.huber@embedded-brains.de>Sebastian Huber1-1/+1
* sapi/include/rtems/extension.h: Documentation.
2010-01-26User extension API: add const to some params, inline ↵Thomas Doerfler1-6/+6
_User_extensions_Add_API_set
2009-11-29Whitespace removal.Ralf Corsepius1-4/+4
2009-09-252009-09-25 Sebastian Huber <Sebastian.Huber@embedded-brains.de>Joel Sherrill1-67/+184
* sapi/include/rtems/extension.h, sapi/src/extensiondelete.c, sapi/src/extensionident.c, sapi/src/extensioncreate.c, sapi/inline/rtems/extension.inl, score/include/rtems/score/userext.h, score/src/userextthreaddelete.c, score/src/userext.c, score/src/userextthreadcreate.c, score/src/userextremoveset.c, score/src/userextthreadbegin.c, score/src/userextaddset.c, score/src/userextthreadstart.c, score/src/userextthreadswitch.c, score/src/userextthreadrestart.c: Documentation. The types User_extensions_routine and rtems_extension are now deprecated. Removed unused types User_extensions_thread_post_switch_extension and rtems_task_post_switch_extension. Renamed _User_extensions_Add_API_set() in _User_extensions_Add_set(). Renamed _User_extensions_Add_set() in _User_extensions_Add_set_with_table(). * score/src/userextaddapiset.c: Removed file. * score/Makefile.am: Update.
2008-12-172008-12-17 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill1-4/+2
* sapi/include/rtems/extension.h, sapi/include/rtems/io.h, sapi/src/exinit.c, sapi/src/extension.c, sapi/src/io.c, score/include/rtems/score/mpci.h, score/include/rtems/score/object.h, score/include/rtems/score/thread.h, score/include/rtems/score/tod.h, score/include/rtems/score/userext.h, score/include/rtems/score/wkspace.h, score/src/coretod.c, score/src/mpci.c, score/src/object.c, score/src/thread.c, score/src/userext.c, score/src/wkspace.c: Convert SAPI manager and SuperCore Handler initialization routines to directly pull parameters from configuration table.
2007-05-21Split Classic API data instantiation into individual files. This reduces ↵Joel Sherrill1-4/+8
the size of the BSS section when an optional manageer stub is used. Some tests showed about a 600 byte reduction in BSS size. Also eliminated the variables _RTEMS_tasks_User_initialization_tasks and _RTEMS_tasks_Number_of_initialization_tasks because they were only used in one place after initialized. It was a waste of space.
2005-01-28New header guard.Ralf Corsepius1-2/+2
2004-11-21Add doxygen preamble.Ralf Corsepius1-2/+5
2004-03-292004-03-29 Ralf Corsepius <ralf_corsepius@rtems.org>Ralf Corsepius1-1/+1
* sapi/include/confdefs.h, sapi/include/rtems/config.h, sapi/include/rtems/extension.h, sapi/include/rtems/fatal.h, sapi/include/rtems/init.h, sapi/include/rtems/io.h, sapi/src/exinit.c, sapi/src/extension.c, sapi/src/fatal.c, sapi/src/io.c: Convert to using c99 fixed size types.
2003-09-042003-09-04 Joel Sherrill <joel@OARcorp.com>Joel Sherrill1-1/+1
* include/confdefs.h, include/rtems/config.h, include/rtems/extension.h, include/rtems/fatal.h, include/rtems/init.h, include/rtems/io.h, include/rtems/mptables.h, include/rtems/sptables.h, include/rtems/sptables.h.in, inline/rtems/extension.inl, macros/rtems/extension.inl, src/debug.c, src/exinit.c, src/extension.c, src/extensioncreate.c, src/extensiondelete.c, src/extensionident.c, src/fatal.c, src/io.c, src/itronapi.c, src/posixapi.c, src/rtemsapi.c: URL for license changed.
1999-11-17Updated copyright notice.Joel Sherrill1-2/+1
1998-02-17updated copyright to 1998Joel Sherrill1-1/+1
1997-10-08Fixed typo in the pointer to the license terms.Joel Sherrill1-2/+2
1997-07-09Added postswitch extension.Joel Sherrill1-0/+2
1997-04-22headers updated to reflect new style copyright notice as partJoel Sherrill1-5/+5
of switching to the modified GNU GPL.
1996-05-28split the inclusion of "EXTERN" data based on whether it was sapi,Joel Sherrill1-1/+1
score, rtems api, or posix api related.
1996-03-06Removed prototyes for static inline routines and moved the comments intoJoel Sherrill1-53/+2
the inline implementation. The impetus for this was twofold. First, it is incorrect to have static inline prototypes when using the macro implementation. Second, this reduced the number of lines in the include files seen by rtems.h by about 2000 lines. Next we restricted visibility for the inline routines to inside the executive itself EXCEPT for a handful of objects. This reduced the number of include files included by rtems.h by 40 files and reduced the lines in the include files seen by rtems.h by about 6000 lines. In total, these reduced the compile time of the entire RTEMS tree by 20%. This results in about 8 minutes savings on the SparcStation 10 morgana.
1996-02-13changed post task extension from user set to api set and added flagJoel Sherrill1-2/+0
in each thread which must be set when the post switch extension is to be run.
1995-09-26posix support initially addedJoel Sherrill1-2/+2
1995-09-11The word "RTEMS" almost completely removed from the core.Joel Sherrill1-5/+24
Configuration Table Template file added and all tests modified to use this. All gvar.h and conftbl.h files removed from test directories. Configuration parameter maximum_devices added. Core semaphore and mutex handlers added and RTEMS API Semaphore Manager updated to reflect this. Initialization sequence changed to invoke API specific initialization routines. Initialization tasks table now owned by RTEMS Tasks Manager. Added user extension for post-switch. Utilized user extensions to implement API specific functionality like signal dispatching. Added extensions to the System Initialization Thread so that an API can register a function to be invoked while the system is being initialized. These are largely equivalent to the pre-driver and post-driver hooks. Added the Modules file oar-go32_p5, modified oar-go32, and modified the file make/custom/go32.cfg to look at an environment varable which determines what CPU model is being used. All BSPs updated to reflect named devices and clock driver's IOCTL used by the Shared Memory Driver. Also merged clock isr into main file and removed ckisr.c where possible. Updated spsize to reflect new and moved variables. Makefiles for the executive source and include files updated to show break down of files into Core, RTEMS API, and Neither. Header and inline files installed into subdirectory based on whether logically in the Core or a part of the RTEMS API.
1995-08-23Support for variable length names added to Object Handler. This supportsJoel Sherrill1-2/+3
both fixed length "raw" names and strings from the API's point of view. Both inline and macro implementations were tested.