Add Socket Libraries.

Add Posix functions for porting compatibility.
Fix compliance issues with ISO/IEC 9899:199409
New Functions:
  setenv(), fparseln(), GetFileNameFromPath(), rename(),
  realpath(), setprogname(), getprogname(), strlcat(), strlcpy(),
  strsep(), setitimer(), getitimer(), timegm(), getopt(), basename(),
  mkstemp(), ffs(), vsnprintf(), snprintf(), getpass(), usleep(), select(),
  writev(), strcasecmp(), getcwd(), chdir(), tcgetpgrp(), getpgrp(), gettimeofday(),
  bcopy(), 


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12061 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
darylm503
2011-07-30 00:30:44 +00:00
parent f766dd76fd
commit d7ce700605
199 changed files with 36115 additions and 686 deletions

View File

@ -41,10 +41,12 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
/** The type va_list is a type suitable for holding information needed by the
macros va_start, va_arg, and va_end.
This implementation aliases va_list to VA_LIST, declared in MdePkg/Base.h.
**/
#if defined(__GNUC__)
typedef __builtin_va_list va_list;
#else
#define va_list VA_LIST
#endif
/** The va_start macro shall be invoked before any access to the unnamed arguments.
The va_start macro initializes ap for subsequent use by va_arg and va_end.
@ -63,11 +65,12 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
is not compatible with the type that results after
application of the default argument promotions, the
behavior is undefined.
This implementation aliases va_start to VA_START, declared in MdePkg/Base.h.
**/
//#define va_start(ap, ParamN) VA_START(ap, ParamN)
#if defined(__GNUC__)
#define va_start __builtin_va_start
#else
#define va_start VA_START
#endif
/** The va_arg macro expands to an expression that has the type and value of
the next argument in the call. The parameter ap shall be the same as the
@ -90,11 +93,12 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
va_start macro returns the value of the argument after that
specified by paramN. Successive invocations return the values
of the remaining arguments in succession.
This implementation aliases va_arg to VA_ARG, declared in MdePkg/Base.h.
**/
//#define va_arg(ap, type) VA_ARG(ap, type)
#if defined(__GNUC__)
#define va_arg __builtin_va_arg
#else
#define va_arg VA_ARG
#endif
/** The va_end macro facillitates a normal return from the function whose
variable argument list was referred to by the expansion of va_start that
@ -109,13 +113,18 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@param ap An object of type va_list, initialized by a prior
invocation of va_start, that will no longer be referenced.
This implementation aliases va_end to VA_END, declared in MdePkg/Base.h.
**/
//#define va_end(ap) VA_END(ap)
#if defined(__GNUC__)
#define va_end __builtin_va_end
#else
#define va_end VA_END
#endif
/** For BSD compatibility. **/
#if defined(__GNUC__)
#define va_copy __builtin_va_copy
#else
#define va_copy(s,d) (s) = (d)
#endif
#endif /* _STDARG_H */