summaryrefslogtreecommitdiffstats
path: root/cpukit/libcsupport/Makefile.am (follow)
Commit message (Collapse)AuthorAgeFilesLines
* build: Remove EXTRA_DISTSebastian Huber2018-04-041-1/+0
| | | | | A "make dist" is not supported. So, it makes no sense to have pure "make dist" related stuff in the Makefile.am.
* Add a simple task console driverSebastian Huber2018-03-061-0/+2
| | | | Close #3320.
* Remove make preinstallChris Johns2018-01-251-26/+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.
* cpukit: Add _arc4random_getentropy_fail.Christian Mauderer2017-11-171-1/+2
| | | | | | | Add a default implementation of _arc4random_getentropy_fail with an internal error. Update #3239.
* score: Change _Timecounter_Time_uptime to int32_tSebastian Huber2017-11-091-0/+1
| | | | | | | Move basic timecounter API shared with BSD network stack to <machine/_timecounter.h>. Update #3185.
* Add simple console driverSebastian Huber2017-11-061-0/+1
| | | | | Update #3170. Update #3199.
* rtems: Add rtems_print_printer_fprintf_putc()Sebastian Huber2017-10-281-0/+1
| | | | | Update #3170. Update #3199.
* Implement clock()Sebastian Huber2017-09-071-0/+1
| | | | | | | | | | | Newlib uses _times_r() in clock(). The problem is that the _times_r() clock frequency is defined by sysconf(_SC_CLK_TCK). The clock frequency of clock() is the constant CLOCKS_PER_SEC. FreeBSD uses getrusage() for clock(). Since RTEMS has only one process, the implementation can be simplified. Update #3121.
* Provide kernel space headers used by NewlibSebastian Huber2017-06-071-0/+2
| | | | Update #2833.
* termios: Synchronize with latest FreeBSD headersKevin Kirspel2017-03-221-1/+1
| | | | | | | | | | | Adding modified FreeBSD headers to synchronize RTEMS termios with FreeBSD. Modify termios to support dedicated input and output baud for termios structure. Updated BSPs to use dedicated input and output baud in termios structure. Updated tools to use dedicated input and output baud in termios structure. Updated termios testsuites to use dedicated input and output baud in termios structure. Close #2897.
* configure: Remove envlock supportSebastian Huber2017-01-131-1/+1
| | | | This is provided by Newlib itself.
* Add and use rtems_assoc_thread_states_to_string()Sebastian Huber2017-01-121-0/+1
|
* Add rtems_assoc_32_to_string()Sebastian Huber2017-01-121-0/+1
|
* Add support for posix_devctl()Joel Sherrill2017-01-111-1/+2
|
* Provide kernel space header filesSebastian Huber2016-11-081-0/+5
| | | | | These kernel space header files must be provided for Newlib 172e2050d95b41861db858dd9bc43a3fb4a28987.
* libcsupport: Add dummy for setgroups().Christian Mauderer2016-06-281-1/+1
| | | | | The dummy for setgroups() allows applications using it to build (for example civetweb webserver).
* Add printer taskSebastian Huber2016-06-221-0/+1
|
* cpukit, testsuite: Add rtems_printf and rtems_printer support.Chris Johns2016-05-251-0/+2
| | | | | | | | | | | | | | | | | | | This change adds rtems_printf and related functions and wraps the RTEMS print plugin support into a user API. All references to the plugin are removed and replaced with the rtems_printer interface. Printk and related functions are made to return a valid number of characters formatted and output. The function attribute to check printf functions has been added to rtems_printf and printk. No changes to remove warrnings are part of this patch set. The testsuite has been moved over to the rtems_printer. The testsuite has a mix of rtems_printer access and direct print control via the tmacros.h header file. The support for begink/endk has been removed as it served no purpose and only confused the code base. The testsuite has not been refactored to use rtems_printf. This is future work.
* Move various driver interface definition headers file libcsupport/ to include/Joel Sherrill2016-03-301-5/+1
| | | | | | | | | | | These were in libcsupport for historical reasons and the placement no longer made sense. As part of this move, some of the files were placed under subdirectories which reflect their installed location. Thank you git for allowing us to move files. Years of CVS resulted in files being somewhere they no longer belonged.
* malloc: Add _Malloc_System_state()Sebastian Huber2016-02-251-1/+1
| | | | | | | | | | Replace malloc_is_system_state_OK() with _Malloc_System_state() to allow early allocations, e.g. in bsp_start(). Here the _Thread_Executing is NULL, thus an _API_Mutex_Lock() would lead to a NULL pointer access. Move malloc() support code to general case rtems_heap_allocate_aligned_with_boundary(). Use rtems_heap_allocate_aligned_with_boundary() to avoid duplicated code.
* Use linker set for libio initializationSebastian Huber2016-02-031-1/+0
| | | | Update #2408.
* Delete empty libc_init()Sebastian Huber2015-11-271-1/+1
|
* libcsupport: Workaround for GCC 5.1 and laterSebastian Huber2015-07-151-2/+6
| | | | | Disable an optimization which would lead to a recursive calloc() call in calloc().
* Move contents of libcsupport/include/zilog into libbsp/sharedJoel Sherrill2015-03-091-7/+0
| | | | Only a few BSPs use this and it should not have been in libcsupport.
* Remove unused cpukit/libcsupport/include/zilog/z8536.hJoel Sherrill2015-03-091-8/+0
|
* Filesystem: Delete node type operationSebastian Huber2015-01-221-1/+0
| | | | Use the fstat handler instead.
* libcsupport: Delete malloc statisticsSebastian Huber2014-11-281-4/+3
| | | | | | | Use the heap handler statistics instead. Add heap walk option to MALLOC shell command. close #1367
* rtems: Add rtems_cache_coherent_allocate()Sebastian Huber2014-11-271-0/+1
| | | | Add rtems_cache_coherent_free() and rtems_cache_coherent_add_area().
* rtems: Move rtems_cache_aligned_malloc()Sebastian Huber2014-11-251-0/+1
| | | | | | Make sure also the size is cache aligned since otherwise we may have some overlap with the next allocation block. A cache invalidate on this area would be fatal.
* Add supplementary groups to user environmentSebastian Huber2014-11-201-0/+1
|
* libcsupport: Use POSIX key for getgrent()Sebastian Huber2014-11-201-0/+1
|
* libcsupport: Split passwd/group supportSebastian Huber2014-11-201-1/+3
|
* ilibcsupport: Add realpath call.Chris Johns2014-10-241-1/+1
|
* tod.h -> libcsupport like other driver and helper prototype filesJoel Sherrill2014-09-161-0/+1
| | | | | This rippled into the handful of files that should have been using <rtems/tod.h>.
* Use correct prototype of benchmark_timer_read()Joel Sherrill2014-09-161-1/+0
| | | | | | | | | | | | | | This change starts with removing the effectively empty file timerdrv.h. The prototypes for benchmark_timer_XXX() were in btimer.h which was not universally used. Thus every use of timerdrv.h had to be changed to btimer.h. Then the prototypes for benchmark_timer_read() had to be adjusted to return benchmark_timer_t rather than int or uint32_t. I took this opportunity to also correct the file headers to separate the copyright from the file description comments which is needed to ensure the copyright isn't propagated into Doxygen output.
* termios: Add rtems_termios_set_best_baud()Sebastian Huber2014-07-091-1/+1
|
* libcsupport: Refactor rtems_deviceio_errnoDaniel Ramirez2014-01-081-1/+0
| | | | | | Renames rtems_deviceio_errno to rtems_status_code_to_errno and integrates it into the Classic API Status Handler. This function can now be called by including status.h
* libcsupport: implemented termios functions cfsetspeed and cfmakerawDaniel Ramirez2014-01-071-1/+2
|
* libcsupport: Delete libc_wrapup()Sebastian Huber2013-04-261-0/+1
| | | | | | | Add and use rtems_libio_exit_helper. Add rtems_libio_exit(). The fclose(stdin) etc. makes no sense during exit. This would use the _REENT structure of the thread calling _exit().
* libcsupport: Make LibIO helper constSebastian Huber2013-04-261-0/+1
| | | | | Add and use rtems_libio_helper function type. Add and use rtems_libio_helper_null() instead of NULL pointer.
* libcsupport: Add rtems_resource_snapshot_take()Sebastian Huber2012-12-211-0/+1
| | | | | | Add rtems_resource_rtems_api, rtems_resource_posix_api, rtems_resource_snapshot, rtems_resource_snapshot_equal(), and rtems_resource_snapshot_check().
* score: Work area initialization API changeSebastian Huber2012-10-251-1/+3
| | | | | | | | | | | | The work areas (RTEMS work space and C program heap) will be initialized now in a separate step and are no longer part of rtems_initialize_data_structures(). Initialization is performed with tables of Heap_Area entries. This allows usage of scattered memory areas present on various small scale micro-controllers. The sbrk() support API changes also. The bsp_sbrk_init() must now deal with a minimum size for the first memory chunk to take the configured work space size into account.
* libcsupport: Add and use rtems_putc()Sebastian Huber2012-08-201-0/+1
| | | | This reduces code size and provides a function similar to fputc().
* libcsupport: Add rtems_printf_plugin()Sebastian Huber2012-06-041-0/+1
|
* Filesystem: Add shared device IO supportSebastian Huber2012-05-151-0/+3
| | | | | The device IO file system support in IMFS, devFS, and RFS uses now a shared implementation.
* Remove All CVS Id Strings Possible Using a ScriptJoel Sherrill2012-05-111-4/+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.
* Revert: Remove CVS IdsJoel Sherrill2012-05-071-0/+4
| | | | | See http://www.rtems.org/pipermail/rtems-devel/2012-May/001006.html for details.
* Remove CVS-Ids.Ralf Corsépius2012-05-041-4/+0
|
* networking: socket to/from file descriptorSebastian Huber2012-04-031-4/+0
| | | | | | | | | | o Move rtems_bsdnet_fdToSocket() and rtems_bsdnet_makeFdForSocket() to "cpukit/libnetworking/rtems/rtems_syscall.c". o The rtems_bsdnet_makeFdForSocket() function is now static. o Check in rtems_bsdnet_fdToSocket() function that the file descriptor uses the socket handlers, otherwise an error status will be returned and errno set to ENOTSOCK. o New test libtests/syscall01.
* Filesystem: Reference counting for locationsSebastian Huber2012-03-131-4/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | o A new data structure rtems_filesystem_global_location_t was introduced to be used for o the mount point location in the mount table entry, o the file system root location in the mount table entry, o the root directory location in the user environment, and o the current directory location in the user environment. During the path evaluation global start locations are obtained to ensure that the current file system instance will be not unmounted in the meantime. o The user environment uses now reference counting and is protected from concurrent access. o The path evaluation process was completely rewritten and simplified. The IMFS, RFS, NFS, and DOSFS use now a generic path evaluation method. Recursive calls in the path evaluation have been replaced with iteration to avoid stack overflows. Only the evaluation of symbolic links is recursive. No dynamic memory allocations and intermediate buffers are used in the high level path evaluation. No global locks are held during the file system instance specific path evaluation process. o Recursive symbolic link evaluation is now limited by RTEMS_FILESYSTEM_SYMLOOP_MAX. Applications can retrieve this value via sysconf(). o The device file system (devFS) uses now no global variables and allocation from the workspace. Node names are allocated from the heap. o The upper layer lseek() performs now some parameter checks. o The upper layer ftruncate() performs now some parameter checks. o unmask() is now restricted to the RWX flags and protected from concurrent access. o The fchmod_h and rmnod_h file system node handlers are now a file system operation. o The unlink_h operation has been removed. All nodes are now destroyed with the rmnod_h operation. o New lock_h, unlock_h, clonenod_h, and are_nodes_equal_h file system operations. o The path evaluation and file system operations are now protected by per file system instance lock and unlock operations. o Fix and test file descriptor duplicate in fcntl(). o New test fstests/fsnofs01.