]>
Commit | Line | Data |
---|---|---|
1a5557ea FW |
1 | # =========================================================================== |
2 | # https://www.gnu.org/software/autoconf-archive/ax_prog_cc_for_build.html | |
3 | # =========================================================================== | |
4 | # | |
5 | # SYNOPSIS | |
6 | # | |
7 | # AX_PROG_CC_FOR_BUILD | |
8 | # | |
9 | # DESCRIPTION | |
10 | # | |
11 | # This macro searches for a C compiler that generates native executables, | |
12 | # that is a C compiler that surely is not a cross-compiler. This can be | |
13 | # useful if you have to generate source code at compile-time like for | |
14 | # example GCC does. | |
15 | # | |
16 | # The macro sets the CC_FOR_BUILD and CPP_FOR_BUILD macros to anything | |
17 | # needed to compile or link (CC_FOR_BUILD) and preprocess (CPP_FOR_BUILD). | |
18 | # The value of these variables can be overridden by the user by specifying | |
19 | # a compiler with an environment variable (like you do for standard CC). | |
20 | # | |
21 | # It also sets BUILD_EXEEXT and BUILD_OBJEXT to the executable and object | |
22 | # file extensions for the build platform, and GCC_FOR_BUILD to `yes' if | |
23 | # the compiler we found is GCC. All these variables but GCC_FOR_BUILD are | |
24 | # substituted in the Makefile. | |
25 | # | |
26 | # LICENSE | |
27 | # | |
28 | # Copyright (c) 2008 Paolo Bonzini <bonzini@gnu.org> | |
29 | # | |
30 | # Copying and distribution of this file, with or without modification, are | |
31 | # permitted in any medium without royalty provided the copyright notice | |
32 | # and this notice are preserved. This file is offered as-is, without any | |
33 | # warranty. | |
34 | ||
35 | #serial 9 | |
36 | ||
37 | AU_ALIAS([AC_PROG_CC_FOR_BUILD], [AX_PROG_CC_FOR_BUILD]) | |
38 | AC_DEFUN([AX_PROG_CC_FOR_BUILD], [dnl | |
39 | AC_REQUIRE([AC_PROG_CC])dnl | |
40 | AC_REQUIRE([AC_PROG_CPP])dnl | |
41 | AC_REQUIRE([AC_EXEEXT])dnl | |
42 | AC_REQUIRE([AC_CANONICAL_HOST])dnl | |
43 | ||
44 | dnl Use the standard macros, but make them use other variable names | |
45 | dnl | |
46 | pushdef([ac_cv_prog_CPP], ac_cv_build_prog_CPP)dnl | |
47 | pushdef([ac_cv_prog_gcc], ac_cv_build_prog_gcc)dnl | |
48 | pushdef([ac_cv_prog_cc_works], ac_cv_build_prog_cc_works)dnl | |
49 | pushdef([ac_cv_prog_cc_cross], ac_cv_build_prog_cc_cross)dnl | |
50 | pushdef([ac_cv_prog_cc_g], ac_cv_build_prog_cc_g)dnl | |
51 | pushdef([ac_cv_exeext], ac_cv_build_exeext)dnl | |
52 | pushdef([ac_cv_objext], ac_cv_build_objext)dnl | |
53 | pushdef([ac_exeext], ac_build_exeext)dnl | |
54 | pushdef([ac_objext], ac_build_objext)dnl | |
55 | pushdef([CC], CC_FOR_BUILD)dnl | |
56 | pushdef([CPP], CPP_FOR_BUILD)dnl | |
57 | pushdef([CFLAGS], CFLAGS_FOR_BUILD)dnl | |
58 | pushdef([CPPFLAGS], CPPFLAGS_FOR_BUILD)dnl | |
59 | pushdef([LDFLAGS], LDFLAGS_FOR_BUILD)dnl | |
60 | pushdef([host], build)dnl | |
61 | pushdef([host_alias], build_alias)dnl | |
62 | pushdef([host_cpu], build_cpu)dnl | |
63 | pushdef([host_vendor], build_vendor)dnl | |
64 | pushdef([host_os], build_os)dnl | |
65 | pushdef([ac_cv_host], ac_cv_build)dnl | |
66 | pushdef([ac_cv_host_alias], ac_cv_build_alias)dnl | |
67 | pushdef([ac_cv_host_cpu], ac_cv_build_cpu)dnl | |
68 | pushdef([ac_cv_host_vendor], ac_cv_build_vendor)dnl | |
69 | pushdef([ac_cv_host_os], ac_cv_build_os)dnl | |
70 | pushdef([ac_cpp], ac_build_cpp)dnl | |
71 | pushdef([ac_compile], ac_build_compile)dnl | |
72 | pushdef([ac_link], ac_build_link)dnl | |
73 | ||
74 | save_cross_compiling=$cross_compiling | |
75 | save_ac_tool_prefix=$ac_tool_prefix | |
76 | cross_compiling=no | |
77 | ac_tool_prefix= | |
78 | ||
79 | AC_PROG_CC | |
80 | AC_PROG_CPP | |
81 | AC_EXEEXT | |
82 | ||
83 | ac_tool_prefix=$save_ac_tool_prefix | |
84 | cross_compiling=$save_cross_compiling | |
85 | ||
86 | dnl Restore the old definitions | |
87 | dnl | |
88 | popdef([ac_link])dnl | |
89 | popdef([ac_compile])dnl | |
90 | popdef([ac_cpp])dnl | |
91 | popdef([ac_cv_host_os])dnl | |
92 | popdef([ac_cv_host_vendor])dnl | |
93 | popdef([ac_cv_host_cpu])dnl | |
94 | popdef([ac_cv_host_alias])dnl | |
95 | popdef([ac_cv_host])dnl | |
96 | popdef([host_os])dnl | |
97 | popdef([host_vendor])dnl | |
98 | popdef([host_cpu])dnl | |
99 | popdef([host_alias])dnl | |
100 | popdef([host])dnl | |
101 | popdef([LDFLAGS])dnl | |
102 | popdef([CPPFLAGS])dnl | |
103 | popdef([CFLAGS])dnl | |
104 | popdef([CPP])dnl | |
105 | popdef([CC])dnl | |
106 | popdef([ac_objext])dnl | |
107 | popdef([ac_exeext])dnl | |
108 | popdef([ac_cv_objext])dnl | |
109 | popdef([ac_cv_exeext])dnl | |
110 | popdef([ac_cv_prog_cc_g])dnl | |
111 | popdef([ac_cv_prog_cc_cross])dnl | |
112 | popdef([ac_cv_prog_cc_works])dnl | |
113 | popdef([ac_cv_prog_gcc])dnl | |
114 | popdef([ac_cv_prog_CPP])dnl | |
115 | ||
116 | dnl Finally, set Makefile variables | |
117 | dnl | |
118 | BUILD_EXEEXT=$ac_build_exeext | |
119 | BUILD_OBJEXT=$ac_build_objext | |
120 | AC_SUBST(BUILD_EXEEXT)dnl | |
121 | AC_SUBST(BUILD_OBJEXT)dnl | |
122 | AC_SUBST([CFLAGS_FOR_BUILD])dnl | |
123 | AC_SUBST([CPPFLAGS_FOR_BUILD])dnl | |
124 | AC_SUBST([LDFLAGS_FOR_BUILD])dnl | |
125 | ]) |