Changeset 94 for trunk/src/emx/include


Ignore:
Timestamp:
May 5, 2003, 8:48:59 PM (22 years ago)
Author:
zap
Message:

This is the start of work on making EMX C runtime EMX-independent ;-)
The first signs of a GNU Make-based build system.
Fixed a lot of .s files to comply with new GAS syntax.
Added a lot of submakefiles for every sub-library.
Replaced EM's getopt.h with the one from libiberty (which supports
getopt_long). The old getopt.h has moved to include/emx, so if
some tool needs it (and you don't want to fix it to use the new getopt),
replace #include <getopt.h> with #include <emx/getopt.h>. Did so in
most EMX tools.

Location:
trunk/src/emx/include
Files:
1 added
4 edited

Legend:

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

    • Property cvs2svn:cvs-rev changed from 1.1 to 1.2
    r93 r94  
    132132/* Copied from aout64.h of BFD */
    133133#define N_WEAKU 0x0d            /* Weak undefined symbol.  */
     134#define N_WEAKA 0x0e            /* Weak absolute symbol.  */
     135#define N_WEAKT 0x0f            /* Weak text symbol.  */
     136#define N_WEAKD 0x10            /* Weak data symbol.  */
     137#define N_WEAKB 0x11            /* Weak bss symbol.  */
    134138/* emx */
    135139#define N_IMP1  0x68            /* Import definition symbol */
  • trunk/src/emx/include/emx/asm386.h

    • Property cvs2svn:cvs-rev changed from 1.1 to 1.2
    r93 r94  
    33#include <sys/errno.h>
    44
    5 #define _xam fxam; fstsww %ax; andb $0x45, %ah
     5#define _xam fxam; fstsw %ax; andb $0x45, %ah
    66
    77#define j_nan cmpb $0x01, %ah; je
  • trunk/src/emx/include/getopt.h

    • Property cvs2svn:cvs-rev changed from 1.1 to 1.2
    r93 r94  
    1 /* getopt (emx+gcc) */
     1/* Declarations for getopt.
     2   Copyright (C) 1989,90,91,92,93,94,96,97 Free Software Foundation, Inc.
     3
     4   NOTE: The canonical source of this file is maintained with the GNU C Library.
     5   Bugs can be reported to bug-glibc@gnu.org.
     6
     7   This program is free software; you can redistribute it and/or modify it
     8   under the terms of the GNU General Public License as published by the
     9   Free Software Foundation; either version 2, or (at your option) any
     10   later version.
     11
     12   This program is distributed in the hope that it will be useful,
     13   but WITHOUT ANY WARRANTY; without even the implied warranty of
     14   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     15   GNU General Public License for more details.
     16
     17   You should have received a copy of the GNU General Public License
     18   along with this program; if not, write to the Free Software
     19   Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
     20   USA.  */
    221
    322#ifndef _GETOPT_H
    4 #define _GETOPT_H
     23#define _GETOPT_H 1
    524
    6 #if defined (__cplusplus)
     25#ifdef  __cplusplus
    726extern "C" {
    827#endif
    928
    10 extern char *optarg;       /* argument of current option                    */
    11 extern int optind;         /* index of next argument; default=0: initialize */
    12 extern int opterr;         /* 0=disable error messages; default=1: enable   */
    13 extern int optopt;         /* option character which caused the error       */
    14 extern char *optswchar;    /* characters introducing options; default="-"   */
     29/* For communication from `getopt' to the caller.
     30   When `getopt' finds an option that takes an argument,
     31   the argument value is returned here.
     32   Also, when `ordering' is RETURN_IN_ORDER,
     33   each non-option ARGV-element is returned here.  */
    1534
    16 extern enum _optmode
     35extern char *optarg;
     36
     37/* Index in ARGV of the next element to be scanned.
     38   This is used for communication to and from the caller
     39   and for communication between successive calls to `getopt'.
     40
     41   On entry to `getopt', zero means this is the first call; initialize.
     42
     43   When `getopt' returns -1, this is the index of the first of the
     44   non-option elements that the caller should itself scan.
     45
     46   Otherwise, `optind' communicates from one call to the next
     47   how much of ARGV has been scanned so far.  */
     48
     49extern int optind;
     50
     51/* Callers store zero here to inhibit the error message `getopt' prints
     52   for unrecognized options.  */
     53
     54extern int opterr;
     55
     56/* Set to an option character which was unrecognized.  */
     57
     58extern int optopt;
     59
     60/* Describe the long-named options requested by the application.
     61   The LONG_OPTIONS argument to getopt_long or getopt_long_only is a vector
     62   of `struct option' terminated by an element containing a name which is
     63   zero.
     64
     65   The field `has_arg' is:
     66   no_argument          (or 0) if the option does not take an argument,
     67   required_argument    (or 1) if the option requires an argument,
     68   optional_argument    (or 2) if the option takes an optional argument.
     69
     70   If the field `flag' is not NULL, it points to a variable that is set
     71   to the value given in the field `val' when the option is found, but
     72   left unchanged if the option is not found.
     73
     74   To have a long-named option do something other than set an `int' to
     75   a compiled-in constant, such as set a value from `optarg', set the
     76   option's `flag' field to zero and its `val' field to a nonzero
     77   value (the equivalent single-letter option character, if there is
     78   one).  For long options that have a zero `flag' field, `getopt'
     79   returns the contents of the `val' field.  */
     80
     81struct option
    1782{
    18   GETOPT_UNIX,             /* options at start of argument list (default)   */
    19   GETOPT_ANY,              /* move non-options to the end                   */
    20   GETOPT_KEEP              /* return options in order                       */
    21 } optmode;
     83#if defined (__STDC__) && __STDC__
     84  const char *name;
     85#else
     86  char *name;
     87#endif
     88  /* has_arg can't be an enum because some compilers complain about
     89     type mismatches in all the code that assumes it is an int.  */
     90  int has_arg;
     91  int *flag;
     92  int val;
     93};
    2294
     95/* Names for the values of the `has_arg' field of `struct option'.  */
    2396
    24 /* Note: The 2nd argument is not const as GETOPT_ANY reorders the
    25    array pointed to. */
     97#define no_argument             0
     98#define required_argument       1
     99#define optional_argument       2
    26100
    27 int getopt (int, char **, __const__ char *);
     101#if defined (__STDC__) && __STDC__
     102#ifdef __GNU_LIBRARY__
     103/* Many other libraries have conflicting prototypes for getopt, with
     104   differences in the consts, in stdlib.h.  To avoid compilation
     105   errors, only prototype getopt for the GNU C library.  */
     106extern int getopt (int argc, char *const *argv, const char *shortopts);
     107#else /* not __GNU_LIBRARY__ */
     108extern int getopt ();
     109#endif /* __GNU_LIBRARY__ */
     110extern int getopt_long (int argc, char *const *argv, const char *shortopts,
     111                        const struct option *longopts, int *longind);
     112extern int getopt_long_only (int argc, char *const *argv,
     113                             const char *shortopts,
     114                             const struct option *longopts, int *longind);
    28115
    29 #if defined (__cplusplus)
     116/* Internal only.  Users should not call this directly.  */
     117extern int _getopt_internal (int argc, char *const *argv,
     118                             const char *shortopts,
     119                             const struct option *longopts, int *longind,
     120                             int long_only);
     121#else /* not __STDC__ */
     122extern int getopt ();
     123extern int getopt_long ();
     124extern int getopt_long_only ();
     125
     126extern int _getopt_internal ();
     127#endif /* __STDC__ */
     128
     129#ifdef  __cplusplus
    30130}
    31131#endif
    32132
    33 #endif /* not _GETOPT_H */
     133#endif /* getopt.h */
  • trunk/src/emx/include/os2.h

    • Property cvs2svn:cvs-rev changed from 1.1 to 1.2
    r93 r94  
    88#endif
    99
     10#ifndef _Cdecl
    1011#define _Cdecl
     12#endif
     13#ifndef _Far16
    1114#define _Far16
     15#endif
     16#ifndef _Optlink
    1217#define _Optlink
     18#endif
     19#ifndef _Pascal
    1320#define _Pascal
     21#endif
     22#ifndef _Seg16
    1423#define _Seg16
     24#endif
     25#ifndef _System
    1526#define _System
     27#endif
    1628
    1729#if defined (USE_OS2_TOOLKIT_HEADERS)
Note: See TracChangeset for help on using the changeset viewer.