new date 20231021
[pcc.git] / configure.ac
blob34951d4f43d031671a5bebf7d47ba3b3ce9b418b
1                                                -*- Autoconf -*-
2 # Process this file with autoconf to produce a configure script.
4 AC_PREREQ(2.59)
5 AC_INIT([Portable C Compiler], [1.2.0.DEVEL], [pcc@lists.ludd.ltu.se], [pcc], [http://pcc.ludd.ltu.se/])
6 AC_CONFIG_HEADER([config.h])
8 AC_CANONICAL_TARGET
10 abi=unknown
11 endian=little
12 targosver=0
13 tls=no
14 gcccompat=yes
15 pccdebug=yes
16 stripping=yes
17 native=no
18 useyasm=no
19 stabs=no
20 dwarf=no
21 # allowed: UNSIGNED (4-char u_int), INT (4-char int), SHORT (2-char u_short)
22 wchar_type=INT
24 case "$target_os" in
26     apple)
27         targos=apple
28         abi=classic68k
29         stabs=yes
30         case "$target_cpu" in
31             m68k) targmach=m68k endian=big ;;
32         esac
33         ;;
35     bsd)
36         targos=bsd
37         abi=aout
38         case "$target_cpu" in
39             pdp11) targmach=pdp11 ;;
40             nova) targmach=nova ;;
41         esac
42         wchar_type=USHORT
43         ;;
45     darwin*)
46         targos=darwin
47         abi=macho
48         stabs=yes
49         case "$target_os" in
50             *10.*) targosver=10 ;;
51             *9.*) targosver=9 ;;
52             *8.*) targosver=8 ;;
53             *7.*) targosver=7 ;;
54         esac
55         case "$target_cpu" in
56             i?86) targmach=i386 ;;
57             powerpc) targmach=powerpc endian=big ;;
58             x86_64) targmach=amd64 ;;
59         esac
60         ;;
62     dragonfly*)
63         targos=dragonfly
64         abi=elf
65         stabs=yes
66         tls=yes
67         case "$target_cpu" in
68             i?86) targmach=i386 ;;
69             x86_64) targmach=amd64 ;;
70         esac
71         ;;
73     freebsd*)
74         targos=freebsd
75         abi=elf
76         stabs=yes
77         case "$target_os" in
78             *13.*) targosver=13 ;;
79             *12.*) targosver=12 ;;
80             *11.*) targosver=11 ;;
81             *10.*) targosver=10 ;;
82             *9.*) targosver=9 ;;
83             *8.*) targosver=8 ;;
84             *7.*) targosver=7 ;;
85             *6.*) targosver=6 ;;
86             *5.*) targosver=5 ;;
87             *4.*) targosver=4 ;;
88         esac
89         case "$target_cpu" in
90             i?86) targmach=i386 ;;
91             sparc64) targmach=sparc64 endian=big ;;
92             x86_64) targmach=amd64 ;;
93         esac
94         ;;
96     linux-android*)
97         targos=android
98         abi=elf
99         stabs=yes
100         case "$target_cpu" in
101             arm*) targmach=arm ;;
102             i?86) targmach=i386 ;;
103             mips64el) targmach=mips64 ;;
104             mips64) targmach=mips64 endian=big ;;
105             mipseb) targmach=mips endian=big ;;
106             mips*) targmach=mips ;;
107             x86_64) targmach=amd64 ;;
108         esac
109         ;;
111     linux*)
112         targos=linux
113         abi=elf
114         stabs=yes
115         case "$target_cpu" in
116             aarch64) targmach=aarch64 ;;
117             arm*) targmach=arm ;;
118             i?86) targmach=i386 ;;
119             m68k) targmach=m68k endian=big target_alias=m68k-linux-gnu ;;
120             mips64el) targmach=mips64 ;;
121             mips64) targmach=mips64 endian=big ;;
122             mipseb) targmach=mips endian=big ;;
123             mips*) targmach=mips ;;
124             powerpc*) targmach=powerpc endian=big ;;
125             x86_64) targmach=amd64 ;;
126         esac
127         case "$target_os" in
128             *-musl*) ADD_CPPFLAGS="$ADD_CPPFLAGS -DUSE_MUSL" ;;
129         esac
130         ;;
132     litebsd*)
133         targos=litebsd
134         abi=elf
135         case "$target_cpu" in
136             mips*) targmach=mips ;;
137         esac
138         ;;
140     midnightbsd*)
141         targos=midnightbsd
142         abi=elf
143         stabs=yes
144         case "$target_cpu" in
145             i?86) targmach=i386 ;;
146             sparc64) targmach=sparc64 endian=big ;;
147         esac
148         ;;
150     mingw*)
151         targos=win32
152         abi=pecoff
153         wchar_type=USHORT
154         targmach=i386
155         altincdir="c:/mingw/include"
156         altlibdir="c:/mingw/lib"
157         ;;
159    minix*)
160         targos=minix
161         targosver=`uname -v` 
162         stabs=yes
163         case "$targosver" in
164             # explicit setting
165             1.*)
166                 # pcc works for 3.1.6
167                 # not tested for 3.1.7 and 3.1.8
168                 targosver=3.1.x
169                 abi=aout ;;  
170            *3*)
171                 # Minix switched to ELF with 3.2
172                 targosver=3.2+
173                 abi=elf ;;
174             *)
175                 # default to elf
176                targosver=unknown
177                abi=elf ;;
178         esac     
179         case "$target_cpu" in
180             i86) targmach=i86 ;;
181             i?86) targmach=i386 ;;
182             arm*) targmach=arm ;;
183             x86_64) targmach=amd64 ;;
184         esac
185         ;; 
187     mirbsd*)
188         targos=mirbsd
189         abi=elf
190         stabs=yes
191         wchar_type=USHORT
192         case "$target_cpu" in
193             i?86) targmach=i386 ;;
194         esac
195         ;;
197     netbsd*)
198         targos=netbsd
199         abi=elf
200         stabs=yes
201         case "$target_os" in
202             *7.*) targosver=7 ;;
203             *6.*) targosver=6 ;;
204             *5.*) targosver=5 ;;
205             *4.*) targosver=4 ;;
206             *3.*) targosver=3 ;;
207             *2.*) targosver=2 ;;
208             *1.*) targosver=1 ;;
209         esac
210         case "$target_cpu" in
211             armeb) targmach=arm endian=big ;;
212             arm*) targmach=arm ;;
213             i?86) targmach=i386 ;;
214             m68k*) targmach=m68k endian=big ;;
215             mips64el) targmach=mips64 ;;
216             mips64) targmach=mips64 endian=big ;;
217             mipseb) targmach=mips endian=big ;;
218             mips*) targmach=mips ;;
219             pdp10) targmach=pdp10 ;;
220             powerpc) targmach=powerpc endian=big ;;
221             riscv32) targmach=riscv32 targmachdir=riscv ;;
222             riscv64) targmach=riscv64 targmachdir=riscv ;;
223             sparc64) targmach=sparc64 endian=big ;;
224             vax) targmach=vax ;;
225             x86_64) targmach=amd64 ;;
226         esac
227         ;;
229     nextstep*)
230         targos=nextstep
231         abi=macho
232         stabs=yes
233         case "$target_cpu" in
234             i?86) targmach=i386 ;;
235             sparc) targmach=sparc endian=big ;;
236             hppa) targmach=hppa endian=big ;;
237         esac
238         ;;
240     openbsd*)
241         targos=openbsd
242         abi=elf
243         stabs=yes
244         case "$target_cpu" in
245             i?86) targmach=i386 ;;
246             vax) targmach=vax ;;
247             mips64el) targmach=mips64 ;;
248             mips64) targmach=mips64 endian=big ;;
249             powerpc) targmach=powerpc endian=big ;;
250             sparc64) targmach=sparc64 endian=big ;;
251             m68k) targmach=m68k endian=big ;;
252             x86_64) targmach=amd64 ;;
253         esac
254         ;;
256     sysv4*)
257         targos=sysv4
258         abi=elf
259         case "$target_cpu" in
260             i?86) targmach=i386 ;;
261         esac
262         ;;
264     sunos*|solaris*)
265         targos=sunos
266         abi=elf
267         stabs=yes
268         case "$target_cpu" in
269             i?86) targmach=i386 ;;
270             sparc*) targmach=sparc64 endian=big ;;
271             x86_64) targmach=amd64 ;;
272         esac
273         ;;
275     windows*|pe*)
276         target_alias=i386-pe
277         targos=win32
278         abi=pecoff
279         wchar_type=USHORT
280         targmach=i386
281         ;;
283     *)
284         targos="$target_os"
285         case "$target_cpu" in
286             arm) targmach=arm targos=none abi=$target_os ;;
287             i86) targmach=i86 ;;
288             m16c) targmach=m16c ;;
289             m68k) targmach=m68k endian=big targos=none abi=$target_os ;;
290             nova) targmach=nova ;;
291             pdp7) targmach=pdp7 ;;
292         esac
293         ;;
294 esac
296 if test "X$targos" = X -o "X$targmach" = X ; then
297         AC_MSG_ERROR(['$target' is not (yet) supported by pcc.])
300 if test "X$targmachdir" = X ; then
301         targmachdir=$targmach
304 case "$host_os" in
306     apple)
307         hostos=apple
308         ;;
309     bsd)
310         hostos=bsd
311         ;;
312     darwin*)
313         hostos=darwin
314         ;;
315     dragonfly*)
316         hostos=dragonfly
317         ;;
318     freebsd*)
319         hostos=freebsd
320         ;;
321     linux*)
322         ADD_CPPFLAGS="$ADD_CPPFLAGS -D_DEFAULT_SOURCE"
323         hostos=linux
324         ;;
325     litebsd*)
326         hostos=litebsd
327         ;;
328     midnightbsd*)
329         hostos=midnightbsd
330         ;;
331     mingw*)
332         hostos=win32
333         ;;
334     minix*)
335         hostos=minix
336         ;;
337     mirbsd*)
338         hostos=mirbsd
339         ;;
340     netbsd*)
341         hostos=netbsd
342         ;;
343     nextstep*)
344         hostos=nextstep
345         ;;
346     openbsd*)
347         hostos=openbsd
348         ;;
349     sunos*|solaris*)
350         ADD_CPPFLAGS="$ADD_CPPFLAGS -D_XOPEN_SOURCE=600"
351         hostos=sunos
352         ;;
353     pe*|windows*)
354         # quick hack for cross-build to win32 host
355         hostos=win32
356         if "$prefix" = NONE; then
357                 prefix="c:/pcc"
358                 assembler="yasm.exe -p gnu -f win32"
359                 linker="link.exe /nologo"
360                 ADD_CPPFLAGS="$ADD_CPPFLAGS -DMSLINKER"
361         fi
362         ;;
364 esac
366 if test "X$endian" = "Xbig" ; then
367         AC_DEFINE(TARGET_BIG_ENDIAN, 1,
368                 [Define if target defaults to BIG endian])
369 else
370         AC_DEFINE(TARGET_LITTLE_ENDIAN, 1,
371                 [Define if target defaults to LITTLE endian])
374 case "$abi" in
375         elf*)           AC_DEFINE(ELFABI, 1, [Using ELF ABI]) ;;
376         aout)           AC_DEFINE(AOUTABI, 1, [Using a.out ABI]) ;;
377         macho)          AC_DEFINE(MACHOABI, 1, [Using Mach-O ABI]) ;;
378         coff)           AC_DEFINE(COFFABI, 1, [Using COFF ABI]) ;;
379         ecoff)          AC_DEFINE(ECOFFABI, 1, [Using ECOFF ABI]) ;;
380         pecoff)         AC_DEFINE(PECOFFABI, 1, [Using PE/COFF ABI]) ;;
381         classic68k)     AC_DEFINE(CLASSIC68K, 1, [Using Classic 68k ABI]) ;;
382 esac
384 if test "$stabs" = "yes"; then
385         AC_DEFINE(STABS, 1, [Enable STABS debugging output])
388 if test "$dwarf" = "yes"; then
389         AC_DEFINE(DWARF, 1, [Enable DWARF debugging output])
392 # Specify alternate assembler, linker, include and lib paths
393 AC_ARG_ENABLE(multiarch,
394         AS_HELP_STRING([--enable-multiarch=yes/no/auto/<triplet>],
395                 [Enable use of Linux Multi-Arch paths (default: auto)]),
396         [multiarch=$enableval], [multiarch=auto])
397 AC_ARG_WITH(incdir,
398         AS_HELP_STRING([--with-incdir=<path>],
399                 [Specify the default include path.]),
400         altincdir=$withval,
401         [])
402 AC_ARG_WITH(libdir,
403         AS_HELP_STRING([--with-libdir=<path>],
404                 [Specify the default library path.]),
405         altlibdir=$withval,
406         [])
407 AC_ARG_WITH(assembler,
408         AS_HELP_STRING([--with-assembler=<path>],
409                 [Specify alternate assember.]),
410         assembler=$withval,
411         [])
412 AC_ARG_WITH(linker,
413         AS_HELP_STRING([--with-linker=<path>],
414                 [Specify alternate linker.]),
415         linker=$withval,
416         [])
417 AC_ARG_WITH(libvmf,
418         AS_HELP_STRING([--with-libvmf=<path>],
419                 [Use libvmf.]),
420         libvmf=$withval,
421         libvmf=no)
422 AC_ARG_ENABLE(tls,
423         AS_HELP_STRING([--enable-tls],
424                 [Enable Thread-local storage (TLS).]),
425         [tls=$enableval], [])
426 if test "$tls" = "yes"; then
427         AC_DEFINE(TLS, 1, [Enable thread-local storage (TLS).])
429 AC_ARG_ENABLE(Werror,
430         AS_HELP_STRING([--enable-Werror],
431                 [Enable use of compiler -Werror flag]),
432         [werror=$enableval], [])
433 if test "$werror" = "yes"; then
434         ADD_CFLAGS="$ADD_CFLAGS -Werror"
436 AC_ARG_ENABLE(gcc-compat,
437         AS_HELP_STRING([--disable-gcc-compat],
438                 [Disable GCC compatibility]),
439         [gcccompat=$enableval], [])
440 if test "$gcccompat" = "yes"; then
441         ADD_CPPFLAGS="$ADD_CPPFLAGS -DGCC_COMPAT";
443 AC_ARG_ENABLE(pcc-debug,
444         AS_HELP_STRING([--disable-pcc-debug],
445                 [Disable PCC debugging]),
446         [pccdebug=$enableval], [])
447 if test "$pccdebug" = "yes"; then
448         ADD_CPPFLAGS="$ADD_CPPFLAGS -DPCC_DEBUG";
450 AC_ARG_ENABLE(twopass,
451         AS_HELP_STRING([--enable-twopass],
452                 [Link PCC as a two-pass compiler]),
453         [twopass=$enableval], [])
454 if test "$twopass" = "yes"; then
455         ADD_CPPFLAGS="$ADD_CPPFLAGS -DTWOPASS";
456         CCNAMES='$(BINPREFIX)cc0$(EXEEXT) $(BINPREFIX)cc1$(EXEEXT)'
457         CF0='-DPASS1'
458         CF1='-DPASS2'
459 else
460         CCNAMES='$(BINPREFIX)ccom$(EXEEXT)'
463 if test "$targmach" = "nova"; then
464         CCNAMES="`echo $CCNAMES` \$(BINPREFIX)cc2\$(EXEEXT)"
467 AC_ARG_ENABLE(stripping,
468         AS_HELP_STRING([--disable-stripping],
469                 [Disable stripping of symbols in installed binaries]),
470         [stripping=$enableval], [])
471 if test "$stripping" = "yes"; then
472         if test -z "$INSTALL_PROGRAM"; then
473                 INSTALL_PROGRAM='${INSTALL} -s'
474         else
475                 AC_MSG_WARN([Installed binaries may be unstripped])
476         fi
479 AC_ARG_WITH(yasm,
480         AS_HELP_STRING([--with-yasm], [Use yasm assembler]),
481         useyasm=$withval,
482         [])
483 if test "$useyasm" = "yes"; then
484         assembler="yasm"
485         ADD_CPPFLAGS="$ADD_CPPFLAGS -DUSE_YASM"
487 AC_ARG_ENABLE(native,
488         AS_HELP_STRING([--enable-native],
489                 [Build the compiler as a native rather than cross-build compiler]),
490         [native=$enableval], [])
492 # Setup for ubuntu multiarch
493 multiarch_path=
494 case x$multiarch in
495 xno)
496         ;;
497 xyes)
498         multiarch_path=`dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null` || multiarch_path=
499         case $multiarch_path in
500         *-*-*) ;;
501         *)
502                 AC_MSG_ERROR([Cannot determine Multi-Arch path '$multiarch_path'!])
503                 ;;
504         esac
505         ;;
506 xauto|x)
507         multiarch_path=`dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null` || multiarch_path=
508         case x$multiarch_path in
509         x*-*-*) ;;
510         x) ;;
511         *)
512                 AC_MSG_WARN([Ignoring unrecognised Multi-Arch path '$multiarch_path'!])
513                 multiarch_path=
514                 ;;
515         esac
516         ;;
517 x*-*-*)
518         multiarch_path=$multiarch
519         ;;
521         AC_MSG_ERROR([Ignoring unrecognised Multi-Arch path '$multiarch_path'!])
522         ;;
523 esac
524 if test -n "$multiarch_path"; then
525         AC_DEFINE_UNQUOTED([MULTIARCH_PATH], ["$multiarch_path"],
526                 [Define target Multi-Arch path])
527         multiarch="\"$multiarch_path\""
528 else
529         multiarch="(no)"
531 # setup for building a cross-compiler
532 if test "X$native" = "Xyes" -o "X$target_alias" = "X$host_alias" -o "X$target_alias" = "X"; then
533         BINPREFIX=""
534 else
535         BINPREFIX="${target_alias}-"
536         test "X$prefix" = XNONE && prefix="$ac_default_prefix"
537         test "X$exec_prefix" = XNONE && exec_prefix="${prefix}"
538         if test -z "$altincdir"; then
539                 altincdir=${exec_prefix}/${target_alias}/include
540         fi
541         if test -z "$altlibdir"; then
542                 altlibdir=${exec_prefix}/${target_alias}/lib
543         fi
544         if test -z "$assembler"; then
545                 assembler=${BINPREFIX}as
546         fi
547         if test -z  "$linker"; then
548                 linker=${BINPREFIX}ld
549         fi
550         preprocessor="${BINPREFIX}cpp"
551         compiler="${BINPREFIX}ccom"
552         cc2="${BINPREFIX}cc2"
553         AC_DEFINE(CROSS_COMPILING, 1, [Cross-compiling.])
555 AC_SUBST(BINPREFIX)
557 if test -n "$altincdir"; then
558         AC_DEFINE_UNQUOTED(STDINC, "$altincdir",
559                 [Define alternate standard include directory])
561 if test -n "$altlibdir"; then
562         AC_DEFINE_UNQUOTED(LIBDIR, "${altlibdir}/",
563                 [Define alternate standard lib directory])
565 if test -n "$assembler"; then
566         AC_DEFINE_UNQUOTED(ASSEMBLER, "$assembler",
567                 [Define path to alternate assembler])
569 if test -n "$linker"; then
570         AC_DEFINE_UNQUOTED(LINKER, "$linker",
571                 [Define path to alternate linker])
573 if test -n "$preprocessor"; then
574         AC_DEFINE_UNQUOTED(PREPROCESSOR, "$preprocessor",
575                 [Define path to alternate preprocessor])
577 if test -n "$compiler"; then
578         AC_DEFINE_UNQUOTED(COMPILER, "$compiler",
579                 [Define path to alternate compiler])
581 if test -n "$cc2"; then
582         AC_DEFINE_UNQUOTED(CC2, "$cc2",
583                 [Define path to alternate cc2])
586 case $wchar_type in
587 USHORT) wchar_size=2 ;;
588 UNSIGNED|INT) wchar_size=4 ;;
589 *) AC_MSG_ERROR([Unknown wchar_t '$wchar_type'.]) ;;
590 esac
592 AC_DEFINE_UNQUOTED(WCHAR_TYPE, $wchar_type, [Type to use for wide characters])
593 AC_DEFINE_UNQUOTED(WCHAR_SIZE, $wchar_size, [Size of wide-character type in chars])
595 # check for additional compiler flags
596 AC_PROG_CC
597 DESIRED_FLAGS="-Wall -Wmissing-prototypes -Wstrict-prototypes -Wshadow -Wsign-compare -Wtruncate"
598 for flag in $DESIRED_FLAGS
600         AC_MSG_CHECKING([whether $CC accepts $flag])
601         cflags="$CFLAGS"
602         CFLAGS="$CFLAGS $flag -Werror"
603         AC_COMPILE_IFELSE([
604             AC_LANG_PROGRAM([[]], [[]])
605           ], [
606             use_flag=yes
607           ], [
608             use_flag=no
609         ])
610         CFLAGS="$cflags"
612         AC_MSG_RESULT([$use_flag])
613         if test $use_flag = yes; then
614             ADD_CFLAGS="$ADD_CFLAGS $flag"
615         fi
616 done
618 # setup for cross-compiling mkext
619 AC_MSG_CHECKING([for a C compiler for mkext])
620 if test $cross_compiling = yes; then
621         AC_MSG_RESULT([cross compiling])
622         AC_CHECK_PROGS(CC_FOR_BUILD, [pcc clang gcc cc])
623 else
624         AC_MSG_RESULT([not cross compiling])
625         CC_FOR_BUILD=${CC-cc}
626         AC_SUBST(CC_FOR_BUILD)
629 AC_CACHE_CHECK([for C99 printf size specifiers], ac_cv_have_c99_format, [
630   AC_RUN_IFELSE([
631     AC_LANG_PROGRAM([AC_INCLUDES_DEFAULT], [[
632       char buf[64];
633       if (sprintf(buf, "%lld%hhd%jd%zd%td", (long long int)1, (char)2, (intmax_t)3, (size_t)4, (ptrdiff_t)5) != 5)
634         exit(1);
635       else if (strcmp(buf, "12345"))
636         exit(2);
637       ]])],
638     [ ac_cv_have_c99_format=yes ],
639     [ ac_cv_have_c99_format=no ],
640     [ ac_cv_have_c99_format=yes ])
642 if test $ac_cv_have_c99_format = yes; then
643   AC_DEFINE([HAVE_C99_FORMAT], 1,
644     [Define to 1 if printf supports C99 size specifiers])
647 AC_CHECK_SIZEOF([int *])
649 # Byteorder of host
650 AC_C_BIGENDIAN([AC_DEFINE(HOST_BIG_ENDIAN, 1, [Define if host is BIG endian])],
651         [AC_DEFINE(HOST_LITTLE_ENDIAN, 1, [Define if host is LITTLE endian])],
652         [])
654 # Checks for programs.
655 AC_PROG_MAKE_SET
656 AC_PROG_INSTALL
657 AC_PROG_YACC
658 AC_PROG_LEX
660 # Checks for libraries.
661 if test $libvmf != no ; then
662         LIBS=-lvmf
663         AC_DEFINE(LIBVMF, 1, [Use libvmf.])
664 if test $libvmf != yes ; then
665         LDFLAGS=-L$libvmf
669 # Checks for header files.
670 # AC_CHECK_HEADERS([fcntl.h stdlib.h string.h unistd.h])
671 AC_CHECK_HEADERS([string.h])
672 AC_HEADER_SYS_WAIT
674 # Checks for library functions.
675 ##  AC_FUNC_STRTOD
676 # AC_FUNC_VPRINTF
677 # AC_CHECK_FUNCS([memset strchr strdup strrchr strtol])
678 AC_CHECK_FUNCS([strtold vsnprintf snprintf mkstemp strlcat strlcpy getopt ffs vfork])
679 AC_FUNC_ALLOCA
681 AC_EXEEXT
683 AC_SUBST(targos)
684 AC_SUBST(targosver)
685 AC_SUBST(targmach)
686 AC_SUBST(targmachdir)
687 AC_SUBST(hostos)
688 AC_SUBST(prefix)
689 AC_SUBST(exec_prefix)
690 AC_SUBST(libexecdir)
691 AC_SUBST(includedir)
692 AC_SUBST(PACKAGE_VERSION)
693 AC_SUBST(ADD_CFLAGS)
694 AC_SUBST(ADD_CPPFLAGS)
695 AC_SUBST(CCNAMES)
696 AC_SUBST(CF0)
697 AC_SUBST(CF1)
698 AC_SUBST(LIBS)
699 AC_SUBST(LDFLAGS)
701 pcc_major=`echo $PACKAGE_VERSION | awk -F. '{print $1}'`
702 pcc_minor=`echo $PACKAGE_VERSION | awk -F. '{print $2}'`
703 pcc_minorminor=`echo $PACKAGE_VERSION | awk -F. '{print $3}'`
704 test -n "$MPVERSION" && MPVERSION=", $MPVERSION"
705 versstr="\"$PACKAGE_STRING `cat $srcdir/DATESTAMP` for $target$MPVERSION\""
706 targstr="\"$target$MPVERSION\""
708 AC_DEFINE_UNQUOTED(PCC_MAJOR, $pcc_major, [Major version no])
709 AC_DEFINE_UNQUOTED(PCC_MINOR, $pcc_minor, [Minor version no])
710 AC_DEFINE_UNQUOTED(PCC_MINORMINOR, $pcc_minorminor, [Minor minor version no])
711 AC_DEFINE_UNQUOTED(VERSSTR, $versstr, [Version string])
712 AC_DEFINE_UNQUOTED(TARGSTR, $targstr, [Target string])
714 AC_CONFIG_FILES([Makefile
715                 cc/Makefile
716                 cc/cc/Makefile
717                 cc/cpp/Makefile
718                 cc/ccom/Makefile
719                 cc/cxxcom/Makefile
720                 cc/driver/Makefile
721                 f77/Makefile
722                 f77/f77/Makefile
723                 f77/fcom/Makefile
725 AC_OUTPUT
727 eval "exec_prefix=$exec_prefix"
728 eval "bindir=$bindir"
729 eval "libexecdir=$libexecdir"
731 echo
732 echo "Target CPU is .................... ${targmach}"
733 echo "Target ABI is .................... ${abi}"
734 echo "Target OS is ..................... ${targos}"
735 echo "Compiler is called ............... ${BINPREFIX}pcc${EXEEXT}"
736 echo "Installing compiler into ......... ${bindir}"
737 echo "Installing pre-processor into .... ${libexecdir}"
738 echo "Using assembler .................. ${assembler-<default>}"
739 echo "Using linker ..................... ${linker-<default>}"
740 echo "Using Multi-Arch path ............ ${multiarch}"
741 echo "Using include path ............... ${altincdir-<default>}"
742 echo "Using library path ............... ${altlibdir-<default>}"
743 echo "Use libvmf ....................... $libvmf"
744 echo "Has TLS support .................. $tls"
745 echo "Has GCC compatibility ............ $gcccompat"
746 echo "Has PCC debugging ................ $pccdebug"
747 echo "Type of wchar_t is ............... ${wchar_type} (${wchar_size} chars)"
748 echo
749 echo "Configure finished.  Do 'make && make install' to compile and install.