os_defines.h revision 117397
1238106Sdes// Specific definitions for IRIX -*- C++ -*- 2238106Sdes 3238106Sdes// Copyright (C) 2001, 2002 Free Software Foundation, Inc. 4238106Sdes// 5238106Sdes// This file is part of the GNU ISO C++ Library. This library is free 6238106Sdes// software; you can redistribute it and/or modify it under the 7238106Sdes// terms of the GNU General Public License as published by the 8238106Sdes// Free Software Foundation; either version 2, or (at your option) 9238106Sdes// any later version. 10238106Sdes 11238106Sdes// This library is distributed in the hope that it will be useful, 12238106Sdes// but WITHOUT ANY WARRANTY; without even the implied warranty of 13238106Sdes// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14238106Sdes// GNU General Public License for more details. 15238106Sdes 16238106Sdes// You should have received a copy of the GNU General Public License along 17238106Sdes// with this library; see the file COPYING. If not, write to the Free 18238106Sdes// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, 19238106Sdes// USA. 20238106Sdes 21238106Sdes// As a special exception, you may use this file as part of a free software 22238106Sdes// library without restriction. Specifically, if other files instantiate 23238106Sdes// templates or use macros or inline functions from this file, or you compile 24238106Sdes// this file and link it with other files to produce an executable, this 25238106Sdes// file does not by itself cause the resulting executable to be covered by 26238106Sdes// the GNU General Public License. This exception does not however 27238106Sdes// invalidate any other reasons why the executable file might be covered by 28238106Sdes// the GNU General Public License. 29238106Sdes 30238106Sdes#ifndef _GLIBCPP_OS_DEFINES 31238106Sdes#define _GLIBCPP_OS_DEFINES 1 32238106Sdes 33238106Sdes// System-specific #define, typedefs, corrections, etc, go here. This 34238106Sdes// file will come before all others. 35238106Sdes 36238106Sdes// We need large file support. There are two ways to turn it on: by 37238106Sdes// defining either _LARGEFILE64_SOURCE or _SGI_SOURCE. However, it 38238106Sdes// does not actually work to define only the former, as then 39238106Sdes// <sys/stat.h> is invalid: `st_blocks' is defined to be a macro, but 40238106Sdes// then used as a field name. So, we have to turn on _SGI_SOURCE. 41238106Sdes// That only works if _POSIX_SOURCE is turned off, so we have to 42238106Sdes// explicitly turn it off. (Some of the libio C files explicitly try 43238106Sdes// to turn it on.) _SGI_SOURCE is actually turned on implicitly via 44238106Sdes// the command-line. 45238106Sdes#undef _POSIX_SOURCE 46238106Sdes 47238106Sdes#define __off_t off_t 48238106Sdes#define __off64_t off64_t 49238106Sdes#define __ssize_t ssize_t 50238106Sdes 51238106Sdes// GCC does not use thunks on IRIX. 52238106Sdes#define _G_USING_THUNKS 0 53238106Sdes 54238106Sdes#endif 55238106Sdes 56238106Sdes