File: config.mk.in

package info (click to toggle)
blis 2.0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 41,904 kB
  • sloc: ansic: 351,996; fortran: 21,831; cpp: 10,947; sh: 9,392; makefile: 1,921; asm: 1,516; python: 695
file content (145 lines) | stat: -rw-r--r-- 5,845 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
#
#
#  BLIS
#  An object-based framework for developing high-performance BLAS-like
#  libraries.
#
#  Copyright (C) 2014, The University of Texas at Austin
#  Copyright (C) 2022, Advanced Micro Devices, Inc.
#  Copyright (C) 2023, Southern Methodist University
#
#  Redistribution and use in source and binary forms, with or without
#  modification, are permitted provided that the following conditions are
#  met:
#   - Redistributions of source code must retain the above copyright
#     notice, this list of conditions and the following disclaimer.
#   - Redistributions in binary form must reproduce the above copyright
#     notice, this list of conditions and the following disclaimer in the
#     documentation and/or other materials provided with the distribution.
#   - Neither the name(s) of the copyright holder(s) nor the names of its
#     contributors may be used to endorse or promote products derived
#     from this software without specific prior written permission.
#
#  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
#  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
#  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
#  A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
#  HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
#  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
#  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
#  DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
#  THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
#  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
#  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#
#

ifndef CONFIG_MK_PLUGIN_INCLUDED
CONFIG_MK_PLUGIN_INCLUDED := yes

# The installation prefix, exec_prefix, libdir, includedir, and shareddir
# values from configure tell us where to install the libraries, header files,
# and public makefile fragments. We must first assign each substituted
# @anchor@ to its own variable. Why? Because the subsitutions may contain
# unevaluated variable expressions. For example, '@libdir@' may be replaced
# with '${exec_prefix}/lib'. By assigning the anchors to variables first, and
# then assigning them to their final INSTALL_* variables, we allow prefix and
# exec_prefix to be used in the definitions of exec_prefix, libdir,
# includedir, and sharedir.
prefix            := @prefix@
exec_prefix       := @exec_prefix@
libdir            := @libdir@
includedir        := @includedir@
sharedir          := @sharedir@

# Override SHARE_PATH from common.mk so that e.g. make_defs.mk files from
# configurations are loaded from the installed share directory.
SHARE_PATH        := @sharedir@/blis

# Override the source path locations to point to the plugin source, rather
# than the default values which assume the BLIS builtin source tree.
FRAME_DIR         := .
DIST_PATH         := @plugin_dir@

# Define the name of the global config.mk makefile.
GLOB_CONFIG_MK_FILE := $(sharedir)/blis/config.mk

# Include the configuration file.
include $(GLOB_CONFIG_MK_FILE)

# The name of the plugin.
PLUGIN_NAME       := @plugin_name@

# This list contains some number of "kernel:config" pairs, where "config"
# specifies which configuration's compilation flags (CFLAGS) should be
# used to compile the source code for the kernel set named "kernel".
KCONFIG_MAP       := @kconfig_map@

# The C compiler.
CC_VENDOR         := @CC_VENDOR@
CC                := @CC@

# Important C compiler ranges.
GCC_OT_4_9_0      := @gcc_older_than_4_9_0@
GCC_OT_6_1_0      := @gcc_older_than_6_1_0@
GCC_OT_9_1_0      := @gcc_older_than_9_1_0@
GCC_OT_10_3_0     := @gcc_older_than_10_3_0@
CLANG_OT_9_0_0    := @clang_older_than_9_0_0@
CLANG_OT_12_0_0   := @clang_older_than_12_0_0@
AOCC_OT_2_0_0     := @aocc_older_than_2_0_0@
AOCC_OT_3_0_0     := @aocc_older_than_3_0_0@

# The C++ compiler.
CXX               := @CXX@

# The Fortran compiler.
FC                := @FC@

# Static library indexer.
RANLIB            := @RANLIB@

# Archiver.
AR                := @AR@

# Preset (required) CFLAGS, CXXFLAGS, and LDFLAGS. These variables capture the value
# of the CFLAGS, CXXFLAGS, and LDFLAGS environment variables at configure-time (and/or
# the value of CFLAGS/CXXFLAGS/LDFLAGS if any was specified on the command line).
# These flags are used in addition to the flags automatically determined
# by the build system.
CFLAGS_PRESET     := @cflags_preset@
CXXFLAGS_PRESET   := @cxxflags_preset@
LDFLAGS_PRESET    := @ldflags_preset@

# The level of debugging info to generate.
DEBUG_TYPE        := @debug_type@
ENABLE_DEBUG      := @enable_debug@

# Whether to compile and link the AddressSanitizer library.
MK_ENABLE_ASAN    := @enable_asan@

# Whether the compiler supports "#pragma omp simd" via the -fopenmp-simd option.
PRAGMA_OMP_SIMD   := @pragma_omp_simd@

# Whether to output verbose command-line feedback as the Makefile is
# processed.
ENABLE_VERBOSE    := @enable_verbose@

# Whether we need to employ an alternate method for passing object files to
# ar and/or the linker to work around a small value of ARG_MAX.
ARG_MAX_HACK      := @enable_arg_max_hack@

# Whether to build the static and shared libraries.
# NOTE: The "MK_" prefix, which helps differentiate these variables from
# their corresonding cpp macros that use the BLIS_ prefix.
MK_ENABLE_STATIC  := @mk_enable_static@
MK_ENABLE_SHARED  := @mk_enable_shared@

# Whether to use an install_name based on @rpath.
MK_ENABLE_RPATH   := @enable_rpath@

# Whether to export all symbols within the shared library, even those symbols
# that are considered to be for internal use only.
EXPORT_SHARED     := @export_shared@

# end of ifndef CONFIG_MK_PLUGIN_INCLUDED conditional block
endif