Chameleon

Chameleon Svn Source Tree

Root/tags/2.0/i386/include/i386/types.h

Source at commit 1808 created 12 years 4 months ago.
By blackosx, Revise layout of package installer 'Welcome' file so it looks cleaner. Change the copyright notice to begin from 2009 as seen in the Chameleon 2.0 r431 installer. Should this date be set earlier?
1/*
2 * Copyright (c) 2000-2008 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28/*
29 * Copyright 1995 NeXT Computer, Inc. All rights reserved.
30 */
31/*
32 * Copyright (c) 1990, 1993
33 *The Regents of the University of California. All rights reserved.
34 *
35 * Redistribution and use in source and binary forms, with or without
36 * modification, are permitted provided that the following conditions
37 * are met:
38 * 1. Redistributions of source code must retain the above copyright
39 * notice, this list of conditions and the following disclaimer.
40 * 2. Redistributions in binary form must reproduce the above copyright
41 * notice, this list of conditions and the following disclaimer in the
42 * documentation and/or other materials provided with the distribution.
43 * 3. All advertising materials mentioning features or use of this software
44 * must display the following acknowledgement:
45 *This product includes software developed by the University of
46 *California, Berkeley and its contributors.
47 * 4. Neither the name of the University nor the names of its contributors
48 * may be used to endorse or promote products derived from this software
49 * without specific prior written permission.
50 *
51 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
52 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
53 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
54 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
55 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
56 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
57 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
58 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
59 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
60 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
61 * SUCH DAMAGE.
62 *
63 *@(#)types.h8.3 (Berkeley) 1/5/94
64 */
65
66#ifndef_MACHTYPES_H_
67#define_MACHTYPES_H_
68
69#include <i386/types.h>
70
71
72#ifndef __ASSEMBLER__
73#include <i386/_types.h>
74#include <sys/cdefs.h>
75/*
76 * Basic integral types. Omit the typedef if
77 * not possible for a machine/compiler combination.
78 */
79#ifndef _INT8_T
80#define _INT8_T
81typedef__signed charint8_t;
82#endif
83typedefunsigned charu_int8_t;
84#ifndef _INT16_T
85#define _INT16_T
86typedefshortint16_t;
87#endif
88typedefunsigned shortu_int16_t;
89#ifndef _INT32_T
90#define _INT32_T
91typedefintint32_t;
92#endif
93typedefunsigned intu_int32_t;
94#ifndef _INT64_T
95#define _INT64_T
96typedeflong longint64_t;
97#endif
98typedefunsigned long longu_int64_t;
99
100#if __LP64__
101typedef int64_tregister_t;
102#else
103typedef int32_tregister_t;
104#endif
105
106#ifndef _INTPTR_T
107#define _INTPTR_T
108typedef __darwin_intptr_tintptr_t;
109#endif
110#ifndef _UINTPTR_T
111#define _UINTPTR_T
112typedef unsigned longuintptr_t;
113#endif
114
115#if !defined(_ANSI_SOURCE) && (!defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE))
116/* These types are used for reserving the largest possible size. */
117typedef u_int64_tuser_addr_t;
118typedef u_int64_tuser_size_t;
119typedef int64_tuser_ssize_t;
120typedef int64_tuser_long_t;
121typedef u_int64_tuser_ulong_t;
122typedef int64_tuser_time_t;
123typedef int64_tuser_off_t;
124#define USER_ADDR_NULL((user_addr_t) 0)
125#define CAST_USER_ADDR_T(a_ptr) ((user_addr_t)((uintptr_t)(a_ptr)))
126
127
128#endif /* !_ANSI_SOURCE && (!_POSIX_C_SOURCE || _DARWIN_C_SOURCE) */
129
130/* This defines the size of syscall arguments after copying into the kernel: */
131typedef u_int64_tsyscall_arg_t;
132
133#ifndef __offsetof
134#define __offsetof(type, field) ((size_t)(&((type *)0)->field))
135#endif
136
137#endif /* __ASSEMBLER__ */
138#endif/* _MACHTYPES_H_ */
139

Archive Download this file

Revision: 1808