blob: 0006b227c648ab66c3ad5537ebb536bc0fc42e64 [file] [log] [blame]
Wolfgang Denk4646d2a2006-05-30 15:56:48 +02001/**
2 * ============================================================================
3 * = COPYRIGHT
4 *
5 * @par
6 * IXP400 SW Release version 2.0
7 *
8 * -- Copyright Notice --
9 *
10 * @par
11 * Copyright 2001-2005, Intel Corporation.
12 * All rights reserved.
13 *
14 * @par
Wolfgang Denkc57eadc2013-07-28 22:12:47 +020015 * SPDX-License-Identifier: BSD-3-Clause
Wolfgang Denk4646d2a2006-05-30 15:56:48 +020016 * @par
17 * -- End of Copyright Notice --
18 * = PRODUCT
19 * Intel(r) IXP425 Software Release
20 *
21 * = FILENAME
22 * ix_symbols.h
23 *
24 * = DESCRIPTION
25 * This file declares all the global preprocessor symbols required by
26 * the IXA SDK Framework API.
27 *
28 * = AUTHOR
29 * Intel Corporation
30 *
31 * = CHANGE HISTORY
32 * 4/23/2002 10:41:13 AM - creation time
33 * ============================================================================
34 */
35
36#if !defined(__IX_SYMBOLS_H__)
37#define __IX_SYMBOLS_H__
38
39
40#if defined(__cplusplus)
41extern "C"
42{
43#endif /* end defined(__cplusplus) */
44
45/**
46 * The IX_EXPORT_FUNCTION symbol will be used for compilation on different platforms.
47 * We are planning to provide a simulation version of the library that should work
48 * with the Transactor rather than the hardware. This implementation will be done on
49 * WIN32 in the form of a DLL that will need to export functions and symbols.
50 */
51#if (_IX_OS_TYPE_ == _IX_OS_WIN32_)
52# if defined(_IX_LIB_INTERFACE_IMPLEMENTATION_)
53# define IX_EXPORT_FUNCTION __declspec( dllexport )
54# elif defined(_IX_LIB_INTERFACE_IMPORT_DLL_)
55# define IX_EXPORT_FUNCTION __declspec( dllimport )
56# else
57# define IX_EXPORT_FUNCTION extern
58# endif
59#elif (_IX_OS_TYPE_ == _IX_OS_WINCE_)
60# define IX_EXPORT_FUNCTION __declspec(dllexport)
61#else
62# define IX_EXPORT_FUNCTION extern
63#endif
64
65
66/**
67 * This symbols should be defined when we want to build for a multithreaded environment
68 */
69#define _IX_MULTI_THREADED_ 1
70
71
72/**
73 * This symbol should be defined in the case we to buils for a multithreaded environment
74 * but we want that our modules to work as if they are used in a single threaded environment.
75 */
76/* #define _IX_RM_EXPLICIT_SINGLE_THREADED_ 1 */
77
78#if defined(__cplusplus)
79}
80#endif /* end defined(__cplusplus) */
81
82#endif /* end !defined(__IX_SYMBOLS_H__) */