Changeset 1028


Ignore:
Timestamp:
Jan 24, 2004, 4:34:07 AM (22 years ago)
Author:
bird
Message:

Untested port of the GLIBC implementation of the POSIX spawn interface.

Location:
trunk/src/emx
Files:
5 added
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/emx/include/spawn.h

    • Property cvs2svn:cvs-rev changed from 1.1 to 1.2
    r1027 r1028  
    1818   02111-1307 USA.  */
    1919
     20/** @file
     21 * GLIBC 2.3.2
     22 * @changed bird: we don't have features.h, sched.h or the GLIBC standard definitions.
     23 */
     24
    2025#ifndef _SPAWN_H
    2126#define _SPAWN_H        1
    2227
     28#ifndef __EMX__                         /* bird */
    2329#include <features.h>
    2430#include <sched.h>
     31#endif                                  /* bird */
    2532#include <signal.h>
    2633#include <sys/types.h>
     34
     35/* bird - start */
     36#ifdef __EMX__
     37
     38#ifndef __THROW
     39#define __THROW
     40#endif
     41
     42/* GCC 2.95 and later have "__restrict"; C99 compilers have
     43   "restrict", and "configure" may have defined "restrict".  */
     44#ifndef __restrict
     45# if ! (2 < __GNUC__ || (2 == __GNUC__ && 95 <= __GNUC_MINOR__))
     46#  if defined restrict || 199901L <= __STDC_VERSION__
     47#   define __restrict restrict
     48#  else
     49#   define __restrict
     50#  endif
     51# endif
     52#endif
     53
     54/* GCC 3.1 and later support declaring arrays as non-overlapping
     55   using the syntax array_name[restrict]  */
     56#ifndef __restrict_arr
     57# if ! (3 < __GNUC__ || (3 == __GNUC__ && 1 <= __GNUC_MINOR__)) || defined (__GNUG__)
     58#  define __restrict_arr
     59# else
     60#  define __restrict_arr __restrict
     61# endif
     62#endif
     63
     64/** @todo implement sched.h */
     65struct sched_param {
     66        int     sched_priority;
     67};
     68#define SCHED_FIFO      1
     69#define SCHED_OTHER     2
     70#define SCHED_RR        3
     71
     72#endif
     73/* bird - end */
    2774
    2875
  • trunk/src/emx/src/lib/lgpl/posix/spawn_int.h

    • Property cvs2svn:cvs-rev changed from 1.1 to 1.2
    r1027 r1028  
    2828    } open_action;
    2929  } action;
     30
     31#ifdef __EMX__
     32  /* reserve space for saving the handle which we're closing / replacing. */
     33  int fd_saved;                         /* handle to the saved file. -1 if N/A. */
     34  int fd_saved_coe;                     /* original close on exec flag. */
     35#endif
    3036};
    3137
  • trunk/src/emx/src/lib/libc.def

    • Property cvs2svn:cvs-rev changed from 1.40 to 1.41
    r1027 r1028  
    964964    "___locale_C" @994
    965965    "___mempcpy" @995
    966 
     966    "_posix_spawn" @996
     967    "_posix_spawnattr_destroy" @997
     968    "_posix_spawnattr_getflags" @998
     969    "_posix_spawnattr_getpgroup" @999
     970    "_posix_spawnattr_getschedparam" @1000
     971    "_posix_spawnattr_getschedpolicy" @1001
     972    "_posix_spawnattr_getsigdefault" @1002
     973    "_posix_spawnattr_getsigmask" @1003
     974    "_posix_spawnattr_init" @1004
     975    "_posix_spawnattr_setflags" @1005
     976    "_posix_spawnattr_setpgroup" @1006
     977    "_posix_spawnattr_setschedparam" @1007
     978    "_posix_spawnattr_setschedpolicy" @1008
     979    "_posix_spawnattr_setsigdefault" @1009
     980    "_posix_spawnattr_setsigmask" @1010
     981    "_posix_spawn_file_actions_addclose" @1011
     982    "_posix_spawn_file_actions_adddup2" @1012
     983    "_posix_spawn_file_actions_addopen" @1013
     984    "_posix_spawn_file_actions_destroy" @1014
     985    "_posix_spawn_file_actions_init" @1015
     986    "_posix_spawnp" @1016
     987    "___posix_spawn_file_actions_realloc" @1017
     988    "___spawni" @1018
  • trunk/src/emx/src/lib/libc.smak

    • Property cvs2svn:cvs-rev changed from 1.30 to 1.31
    r1027 r1028  
    99
    1010# First of all, include all second-level libc submakefiles
    11 LIBC.SUBMAK := $(wildcard src/lib/*/*.smak) $(wildcard src/lib/bsd/*/*.smak)
     11LIBC.SUBMAK := $(wildcard src/lib/*/*.smak) $(wildcard src/lib/bsd/*/*.smak) $(wildcard src/lib/lgpl/*/*.smak)
    1212-include $(LIBC.SUBMAK)
    1313# Add to the list of genrules.smak dependencies
Note: See TracChangeset for help on using the changeset viewer.