Annotation of gcc/config/i386/linux.h, revision 1.1

1.1     ! root        1: /* Definitions for Intel 386 running Linux
        !             2:  * Copyright (C) 1992 Free Software Foundation, Inc.
        !             3:  *
        !             4:  * Written by H.J. Lu ([email protected])
        !             5:  *
        !             6:  * Linux is a POSIX.1 compatible UNIX clone for i386, which uses GNU
        !             7:  * stuffs as the native stuffs.
        !             8:  */
        !             9: 
        !            10: #if 0  /* The FSF has fixed the known bugs. But ....... */
        !            11: 
        !            12: /* Linux has a hacked gas 1.38.1, which can handle repz, repnz
        !            13:  * and fildll.
        !            14:  */
        !            15: 
        !            16: #define GOOD_GAS
        !            17: 
        !            18: #endif
        !            19: 
        !            20: /* This is tested by i386/gas.h.  */
        !            21: #define YES_UNDERSCORES
        !            22: 
        !            23: #include "i386/gstabs.h"
        !            24: 
        !            25: /* Specify predefined symbols in preprocessor.  */
        !            26: 
        !            27: #undef CPP_PREDEFINES
        !            28: #define CPP_PREDEFINES "-Dunix -Di386 -Dlinux"
        !            29: 
        !            30: #undef CPP_SPEC
        !            31: #if TARGET_CPU_DEFAULT == 2
        !            32: #define CPP_SPEC "%{!m386:-D__i486__} %{posix:-D_POSIX_SOURCE}"
        !            33: #else
        !            34: #define CPP_SPEC "%{m486:-D__i486__} %{posix:-D_POSIX_SOURCE}"
        !            35: #endif
        !            36: 
        !            37: #undef SIZE_TYPE
        !            38: #define SIZE_TYPE "unsigned int"
        !            39: 
        !            40: #undef PTRDIFF_TYPE
        !            41: #define PTRDIFF_TYPE "int"
        !            42: 
        !            43: #undef WCHAR_TYPE
        !            44: #define WCHAR_TYPE "long int"
        !            45: 
        !            46: #undef WCHAR_TYPE_SIZE
        !            47: #define WCHAR_TYPE_SIZE BITS_PER_WORD
        !            48: 
        !            49: #undef HAVE_ATEXIT
        !            50: #define HAVE_ATEXIT
        !            51: 
        !            52: /* Linux uses ctype from glibc.a. I am not sure how complete it is.
        !            53:  * For now, we play safe. It may change later.
        !            54:  */
        !            55: #if 0
        !            56: #undef MULTIBYTE_CHARS
        !            57: #define MULTIBYTE_CHARS        1
        !            58: #endif
        !            59: 
        !            60: #undef LIB_SPEC
        !            61: #define LIB_SPEC "%{g*:-lg} %{!g*:%{!p:%{!pg:-lc}}%{p:-lgmon -lc_p}%{pg:-lgmon -lc_p}}"
        !            62: 
        !            63: 
        !            64: #undef STARTFILE_SPEC
        !            65: #undef GPLUSPLUS_INCLUDE_DIR
        !            66: 
        !            67: #ifdef CROSS_COMPILE
        !            68: 
        !            69: /*
        !            70:  * For cross-compile, we just need to search `$(tooldir)/lib'
        !            71:  */
        !            72: 
        !            73: #define STARTFILE_SPEC  \
        !            74:   "%{g*:crt0.o%s -static} %{!g*:%{pg:gcrt0.o%s -static} %{!pg:%{p:gcrt0.o%s -static} %{!p:crt0.o%s %{!static:%{nojump:-nojump}} %{static:-static}}}}"
        !            75: 
        !            76: /*
        !            77:  *The cross-compile uses this.
        !            78:  */
        !            79: #define GPLUSPLUS_INCLUDE_DIR TOOLDIR"/g++-include"
        !            80: 
        !            81: #else
        !            82: 
        !            83: #define STARTFILE_SPEC  \
        !            84:   "%{g*:crt0.o%s -static} %{!g*:%{pg:gcrt0.o%s -static} %{!pg:%{p:gcrt0.o%s -static} %{!p:crt0.o%s %{!static:%{nojump:-nojump}} %{static:-static}}}}"
        !            85: 
        !            86: /*
        !            87:  *The native Linux system uses this.
        !            88:  */
        !            89: #define GPLUSPLUS_INCLUDE_DIR "/usr/g++-include"
        !            90: 
        !            91: #endif
        !            92: 
        !            93: /* There are conflicting reports about whether this system uses
        !            94:    a different assembler syntax.  [email protected] says # is right.  */
        !            95: #undef COMMENT_BEGIN
        !            96: #define COMMENT_BEGIN "#"
        !            97: 
        !            98: #undef ASM_APP_ON
        !            99: #define ASM_APP_ON "#APP\n"
        !           100: 
        !           101: #undef ASM_APP_OFF
        !           102: #define ASM_APP_OFF "#NO_APP\n"
        !           103: 
        !           104: /* Don't default to pcc-struct-return, because gcc is the only compiler, and
        !           105:    we want to retain compatibility with older gcc versions.  */
        !           106: #define DEFAULT_PCC_STRUCT_RETURN 0
        !           107: 
        !           108: /* We need that too. */
        !           109: #define HANDLE_SYSV_PRAGMA
        !           110: 
        !           111: #undef LINK_SPEC
        !           112: 
        !           113: /* We want to pass -v to linker */
        !           114: #if TARGET_CPU_DEFAULT == 2
        !           115: #define LINK_SPEC      "%{v:-dll-verbose} %{!m386:-m486}"
        !           116: #else
        !           117: #define LINK_SPEC      "%{v:-dll-verbose} %{m486:-m486}"
        !           118: #endif

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.