libflame revision_anchor
FLAME.h
Go to the documentation of this file.
1/*
2
3 Copyright (C) 2014, The University of Texas at Austin
4
5 This file is part of libflame and is available under the 3-Clause
6 BSD license, which can be found in the LICENSE file at the top-level
7 directory, or at http://opensource.org/licenses/BSD-3-Clause
8
9*/
10
11#ifndef FLAME_H
12#define FLAME_H
13
14// Allow C++ users to include this header file in their source code. However,
15// we make the extern "C" conditional on whether we're using a C++ compiler,
16// since regular C compilers don't understand the extern "C" construct.
17#ifdef __cplusplus
18extern "C" {
19#endif
20
21 // Include autoconf-related preprocessor defines.
22 #include "FLA_config.h"
23 #include "FLA_config_check.h"
24
25 // Include standard C header files.
26 #include <stdio.h>
27 #include <stdlib.h>
28 #include <stdarg.h>
29 #include <string.h>
30 #ifdef FLA_ENABLE_WINDOWS_BUILD
31 #include <windows.h>
32 #else
33 #ifndef FLA_ENABLE_TIDSP
34 // TI CG does not support POSIX
35 #include <unistd.h>
36 #include <fcntl.h>
37 #include <sys/types.h>
38 #endif
39 #endif
40 #include <math.h>
41 #include <float.h>
42 #include <signal.h>
43
44 // Include prototypes for BLAS-like interfaces.
45 #ifndef BLIS1_FROM_LIBFLAME
46 #define BLIS1_FROM_LIBFLAME
47 #endif
48 #include "blis1.h"
49
50 // Include f2c definitions.
51 #include "FLA_f2c.h"
52
53 // Include general FLAME macro and _PTR macro definitions.
54 #include "FLA_macro_defs.h"
55 #include "FLA_macro_ptr_defs.h"
56
57 // Include general FLAME type definitions, including those for FLA_Obj.
58 #include "FLA_type_defs.h"
59
60 // Include "extern" definitions for global FLAME scalar constants.
61 #include "FLA_extern_defs.h"
62
63 // Include control tree structure definitions, utility prototypes, and
64 // initialization prototypes.
65 #include "FLA_Cntl.h"
66 #include "FLA_Cntl_init.h"
67
68 // Include prototypes for base FLAME routines.
69 #include "FLA_main_prototypes.h"
72
73 // Include prototypes for FLAME interfaces to BLAS and LAPACK operations.
74 #include "FLA_blas1_prototypes.h"
75 #include "FLA_blas2_prototypes.h"
76 #include "FLA_blas3_prototypes.h"
78
79 // Include prototypes for FLAME implementations of BLAS and LAPACK operations.
82
83 // Include FLASH headers.
84 #include "FLASH.h"
85
86 // Include SuperMatrix headers.
87 #include "FLASH_Queue.h"
88
89 // Include Fortran name-mangling macro (if not already defined).
91
92 // Include prototypes for LAPACK routines.
94
95 // Include prototypes for LAPACK routines.
96 //#include "FLA_lapack_f77_macro_defs.h"
97
98// End extern "C" construct block.
99#ifdef __cplusplus
100}
101#endif
102
103#endif
104