Annotation of GNUtools/cc/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: #ifndef LINUX_ELF
        !            24: #include "i386/gstabs.h"
        !            25: #endif
        !            26: 
        !            27: /* Specify predefined symbols in preprocessor.  */
        !            28: 
        !            29: #undef CPP_PREDEFINES
        !            30: #define CPP_PREDEFINES "-Dunix -Di386 -Dlinux -Asystem(unix) -Asystem(posix) -Acpu(i386) -Amachine(i386)"
        !            31: 
        !            32: #undef CPP_SPEC
        !            33: #if TARGET_CPU_DEFAULT == 2
        !            34: #define CPP_SPEC "%{!m386:-D__i486__} %{posix:-D_POSIX_SOURCE}"
        !            35: #else
        !            36: #define CPP_SPEC "%{m486:-D__i486__} %{posix:-D_POSIX_SOURCE}"
        !            37: #endif
        !            38: 
        !            39: #undef SIZE_TYPE
        !            40: #define SIZE_TYPE "unsigned int"
        !            41: 
        !            42: #undef PTRDIFF_TYPE
        !            43: #define PTRDIFF_TYPE "int"
        !            44: 
        !            45: #undef WCHAR_TYPE
        !            46: #define WCHAR_TYPE "long int"
        !            47: 
        !            48: #undef WCHAR_TYPE_SIZE
        !            49: #define WCHAR_TYPE_SIZE BITS_PER_WORD
        !            50: 
        !            51: #undef HAVE_ATEXIT
        !            52: #define HAVE_ATEXIT
        !            53: 
        !            54: /* Linux uses ctype from glibc.a. I am not sure how complete it is.
        !            55:  * For now, we play safe. It may change later.
        !            56:  */
        !            57: #if 0
        !            58: #undef MULTIBYTE_CHARS
        !            59: #define MULTIBYTE_CHARS        1
        !            60: #endif
        !            61: 
        !            62: #undef LIB_SPEC
        !            63: #define LIB_SPEC "%{mieee-fp:-lieee} %{p:-lgmon -lc_p} %{pg:-lgmon -lc_p} %{!p:%{!pg:%{!g*:-lc} %{g*:-lg}}}"
        !            64: 
        !            65: 
        !            66: #undef STARTFILE_SPEC
        !            67: #undef GPLUSPLUS_INCLUDE_DIR
        !            68: 
        !            69: #ifdef CROSS_COMPILE
        !            70: 
        !            71: /*
        !            72:  * For cross-compile, we just need to search `$(tooldir)/lib'
        !            73:  */
        !            74: 
        !            75: #define STARTFILE_SPEC  \
        !            76:   "%{pg:gcrt0.o%s -static} %{!pg:%{p:gcrt0.o%s -static} %{!p:crt0.o%s %{g*:-static} %{!static:%{nojump:-nojump}} %{static:-static}}} -L"TOOLDIR"/lib"
        !            77: 
        !            78: /*
        !            79:  *The cross-compile uses this.
        !            80:  */
        !            81: #define GPLUSPLUS_INCLUDE_DIR TOOLDIR"/g++-include"
        !            82: 
        !            83: #else
        !            84: 
        !            85: #define STARTFILE_SPEC  \
        !            86:   "%{pg:gcrt0.o%s -static} %{!pg:%{p:gcrt0.o%s -static} %{!p:crt0.o%s %{g*:-static}%{!static:%{nojump:-nojump}} %{static:-static}}}"
        !            87: 
        !            88: /*
        !            89:  *The native Linux system uses this.
        !            90:  */
        !            91: #define GPLUSPLUS_INCLUDE_DIR "/usr/g++-include"
        !            92: 
        !            93: #endif
        !            94: 
        !            95: /* There are conflicting reports about whether this system uses
        !            96:    a different assembler syntax.  [email protected] says # is right.  */
        !            97: #undef COMMENT_BEGIN
        !            98: #define COMMENT_BEGIN "#"
        !            99: 
        !           100: #undef ASM_APP_ON
        !           101: #define ASM_APP_ON "#APP\n"
        !           102: 
        !           103: #undef ASM_APP_OFF
        !           104: #define ASM_APP_OFF "#NO_APP\n"
        !           105: 
        !           106: /* Don't default to pcc-struct-return, because gcc is the only compiler, and
        !           107:    we want to retain compatibility with older gcc versions.  */
        !           108: #define DEFAULT_PCC_STRUCT_RETURN 0
        !           109: 
        !           110: /* We need that too. */
        !           111: #define HANDLE_SYSV_PRAGMA
        !           112: 
        !           113: #undef LINK_SPEC
        !           114: 
        !           115: /* We want to pass -v to linker */
        !           116: #if TARGET_CPU_DEFAULT == 2
        !           117: #define LINK_SPEC      "%{v:-dll-verbose} %{!m386:-m486}"
        !           118: #else
        !           119: #define LINK_SPEC      "%{v:-dll-verbose} %{m486:-m486}"
        !           120: #endif

unix.superglobalmegacorp.com

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