public inbox for newlib@sourceware.org
 help / color / mirror / Atom feed
* [PATCH] newlib: libc: move configure into top-level
@ 2022-02-18  3:09 Mike Frysinger
  2022-02-25 14:53 ` Corinna Vinschen
  0 siblings, 1 reply; 2+ messages in thread
From: Mike Frysinger @ 2022-02-18  3:09 UTC (permalink / raw)
  To: newlib

This kills off the last configure script under libc/ and folds it
into the top newlib configure script.  The a lot of the logic was
already in the top configure script, so move what's left into a
libc/acinclude.m4 file.
---
 newlib/Makefile.in                            |   21 +-
 newlib/configure                              |  954 ++-
 newlib/configure.ac                           |    7 +-
 newlib/libc/Makefile.am                       |    3 -
 newlib/libc/Makefile.in                       |  110 +-
 newlib/libc/acinclude.m4                      |  182 +
 newlib/libc/aclocal.m4                        |  937 ---
 newlib/libc/argz/Makefile.in                  |   43 +-
 newlib/libc/configure                         | 6333 -----------------
 newlib/libc/configure.ac                      |  237 -
 newlib/libc/ctype/Makefile.in                 |   43 +-
 newlib/libc/errno/Makefile.in                 |   43 +-
 newlib/libc/iconv/Makefile.in                 |   41 +-
 newlib/libc/iconv/ccs/Makefile.in             |   43 +-
 newlib/libc/iconv/ccs/binary/Makefile.in      |   41 +-
 newlib/libc/iconv/ces/Makefile.in             |   43 +-
 newlib/libc/iconv/lib/Makefile.in             |   43 +-
 newlib/libc/locale/Makefile.in                |   43 +-
 newlib/libc/machine/a29k/Makefile.in          |   43 +-
 newlib/libc/machine/aarch64/Makefile.in       |   43 +-
 newlib/libc/machine/amdgcn/Makefile.in        |   43 +-
 newlib/libc/machine/arc/Makefile.in           |   43 +-
 newlib/libc/machine/arm/Makefile.in           |   43 +-
 newlib/libc/machine/bfin/Makefile.in          |   43 +-
 newlib/libc/machine/cr16/Makefile.in          |   43 +-
 newlib/libc/machine/cris/Makefile.in          |   43 +-
 newlib/libc/machine/crx/Makefile.in           |   43 +-
 newlib/libc/machine/csky/Makefile.in          |   43 +-
 newlib/libc/machine/d10v/Makefile.in          |   43 +-
 newlib/libc/machine/d30v/Makefile.in          |   43 +-
 newlib/libc/machine/epiphany/Makefile.in      |   43 +-
 newlib/libc/machine/fr30/Makefile.in          |   43 +-
 newlib/libc/machine/frv/Makefile.in           |   43 +-
 newlib/libc/machine/ft32/Makefile.in          |   43 +-
 newlib/libc/machine/h8300/Makefile.in         |   43 +-
 newlib/libc/machine/h8500/Makefile.in         |   43 +-
 newlib/libc/machine/hppa/Makefile.in          |   43 +-
 newlib/libc/machine/i386/Makefile.in          |   43 +-
 newlib/libc/machine/i960/Makefile.in          |   43 +-
 newlib/libc/machine/iq2000/Makefile.in        |   43 +-
 newlib/libc/machine/lm32/Makefile.in          |   43 +-
 newlib/libc/machine/m32c/Makefile.in          |   43 +-
 newlib/libc/machine/m32r/Makefile.in          |   43 +-
 newlib/libc/machine/m68hc11/Makefile.in       |   43 +-
 newlib/libc/machine/m68k/Makefile.in          |   43 +-
 newlib/libc/machine/m88k/Makefile.in          |   43 +-
 newlib/libc/machine/mep/Makefile.in           |   43 +-
 newlib/libc/machine/microblaze/Makefile.in    |   43 +-
 newlib/libc/machine/mips/Makefile.in          |   43 +-
 newlib/libc/machine/mn10200/Makefile.in       |   43 +-
 newlib/libc/machine/mn10300/Makefile.in       |   43 +-
 newlib/libc/machine/moxie/Makefile.in         |   43 +-
 newlib/libc/machine/msp430/Makefile.in        |   43 +-
 newlib/libc/machine/mt/Makefile.in            |   43 +-
 newlib/libc/machine/nds32/Makefile.in         |   43 +-
 newlib/libc/machine/necv70/Makefile.in        |   43 +-
 newlib/libc/machine/nios2/Makefile.in         |   43 +-
 newlib/libc/machine/nvptx/Makefile.in         |   43 +-
 newlib/libc/machine/or1k/Makefile.in          |   43 +-
 newlib/libc/machine/powerpc/Makefile.in       |   43 +-
 newlib/libc/machine/pru/Makefile.in           |   43 +-
 newlib/libc/machine/riscv/Makefile.in         |   43 +-
 newlib/libc/machine/rl78/Makefile.in          |   43 +-
 newlib/libc/machine/rx/Makefile.in            |   43 +-
 newlib/libc/machine/sh/Makefile.in            |   43 +-
 newlib/libc/machine/sparc/Makefile.in         |   43 +-
 newlib/libc/machine/spu/Makefile.in           |   43 +-
 newlib/libc/machine/tic4x/Makefile.in         |   43 +-
 newlib/libc/machine/tic6x/Makefile.in         |   43 +-
 newlib/libc/machine/tic80/Makefile.in         |   43 +-
 newlib/libc/machine/v850/Makefile.in          |   43 +-
 newlib/libc/machine/visium/Makefile.in        |   43 +-
 newlib/libc/machine/w65/Makefile.in           |   43 +-
 newlib/libc/machine/x86_64/Makefile.in        |   43 +-
 newlib/libc/machine/xc16x/Makefile.in         |   43 +-
 newlib/libc/machine/xstormy16/Makefile.in     |   43 +-
 newlib/libc/machine/z8k/Makefile.in           |   43 +-
 newlib/libc/misc/Makefile.in                  |   43 +-
 newlib/libc/posix/Makefile.in                 |   43 +-
 newlib/libc/reent/Makefile.in                 |   43 +-
 newlib/libc/search/Makefile.in                |   43 +-
 newlib/libc/signal/Makefile.in                |   43 +-
 newlib/libc/ssp/Makefile.in                   |   43 +-
 newlib/libc/stdio/Makefile.in                 |   43 +-
 newlib/libc/stdio64/Makefile.in               |   43 +-
 newlib/libc/stdlib/Makefile.in                |   43 +-
 newlib/libc/string/Makefile.in                |   43 +-
 newlib/libc/sys/a29khif/Makefile.in           |   43 +-
 newlib/libc/sys/amdgcn/Makefile.in            |   43 +-
 newlib/libc/sys/arm/Makefile.in               |   43 +-
 newlib/libc/sys/d10v/Makefile.in              |   43 +-
 newlib/libc/sys/epiphany/Makefile.in          |   43 +-
 newlib/libc/sys/h8300hms/Makefile.in          |   43 +-
 newlib/libc/sys/h8500hms/Makefile.in          |   43 +-
 newlib/libc/sys/m88kbug/Makefile.in           |   43 +-
 newlib/libc/sys/mmixware/Makefile.in          |   43 +-
 newlib/libc/sys/netware/Makefile.in           |   43 +-
 newlib/libc/sys/or1k/Makefile.in              |   43 +-
 newlib/libc/sys/phoenix/Makefile.in           |   43 +-
 newlib/libc/sys/phoenix/acinclude.m4          |    2 +-
 .../libc/sys/phoenix/machine/arm/Makefile.in  |   43 +-
 newlib/libc/sys/rdos/Makefile.in              |   43 +-
 newlib/libc/sys/rtems/Makefile.in             |   43 +-
 newlib/libc/sys/sh/Makefile.in                |   43 +-
 newlib/libc/sys/sysmec/Makefile.in            |   43 +-
 newlib/libc/sys/sysnec810/Makefile.in         |   43 +-
 newlib/libc/sys/sysnecv850/Makefile.in        |   43 +-
 newlib/libc/sys/sysvi386/Makefile.in          |   43 +-
 newlib/libc/sys/sysvnecv70/Makefile.in        |   43 +-
 newlib/libc/sys/tic80/Makefile.in             |   43 +-
 newlib/libc/sys/tirtos/Makefile.in            |   43 +-
 newlib/libc/sys/w65/Makefile.in               |   43 +-
 newlib/libc/sys/z8ksim/Makefile.in            |   43 +-
 newlib/libc/syscalls/Makefile.in              |   43 +-
 newlib/libc/time/Makefile.in                  |   43 +-
 newlib/libc/unix/Makefile.in                  |   43 +-
 newlib/libc/xdr/Makefile.in                   |   43 +-
 117 files changed, 4268 insertions(+), 9115 deletions(-)
 create mode 100644 newlib/libc/acinclude.m4
 delete mode 100644 newlib/libc/aclocal.m4
 delete mode 100755 newlib/libc/configure
 delete mode 100644 newlib/libc/configure.ac

diff --git a/newlib/configure.ac b/newlib/configure.ac
index b97d7a6008be..195d336f2dfa 100644
--- a/newlib/configure.ac
+++ b/newlib/configure.ac
@@ -216,6 +216,7 @@ AC_ARG_ENABLE(newlib-nano-malloc,
     *)   AC_MSG_ERROR(bad value ${enableval} for newlib-nano-malloc option) ;;
   esac
  fi], [newlib_nano_malloc=])dnl
+AM_CONDITIONAL(NEWLIB_NANO_MALLOC, test x$newlib_nano_malloc = xyes)
 
 dnl Support --disable-newlib-unbuf-stream-opt
 AC_ARG_ENABLE(newlib-unbuf-stream-opt,
@@ -245,12 +246,13 @@ dnl Support --enable-newlib-nano-formatted-io
 dnl This option is also read in libc/configure.in.  It is repeated
 dnl here so that it shows up in the help text.
 AC_ARG_ENABLE(newlib_nano_formatted_io,
-[  --enable-newlib-nano-formatted-io    Use nano version formatted IO],
+[  --enable-newlib-nano-formatted-io    Use small-footprint nano-formatted-IO implementation],
 [case "${enableval}" in
    yes) newlib_nano_formatted_io=yes ;;
    no)  newlib_nano_formatted_io=no ;;
    *) AC_MSG_ERROR(bad value ${enableval} for newlib-nano-formatted-io) ;;
  esac],[newlib_nano_formatted_io=no])
+AM_CONDITIONAL(NEWLIB_NANO_FORMATTED_IO, test x$newlib_nano_formatted_io = xyes)
 
 dnl Support --enable-retargetable-locking
 dnl This option is also read in libc/configure.in.  It is repeated
@@ -262,6 +264,7 @@ AC_ARG_ENABLE(newlib-retargetable-locking,
    no)  newlib_retargetable_locking=no ;;
    *) AC_MSG_ERROR(bad value ${enableval} for newlib-retargetable-locking) ;;
  esac],[newlib_retargetable_locking=no])
+AM_CONDITIONAL(NEWLIB_RETARGETABLE_LOCKING, test x$newlib_retargetable_locking = xyes)
 
 dnl Support --enable-newlib-long-time_t
 AC_ARG_ENABLE(newlib-long-time_t,
@@ -313,7 +316,7 @@ else
 fi
 AC_SUBST(CC_FOR_NEWLIB)
 
-AC_CONFIG_SUBDIRS(libc)
+m4_include([libc/acinclude.m4])
 m4_include([libm/acinclude.m4])
 
 if test -z "${with_multisubdir}"; then
diff --git a/newlib/libc/Makefile.am b/newlib/libc/Makefile.am
index b3ea976faac7..f4cdcf1b6e63 100644
--- a/newlib/libc/Makefile.am
+++ b/newlib/libc/Makefile.am
@@ -88,6 +88,3 @@ libc.a: $(SUBLIBS)
 	rm -rf tmp
 
 $(SUBLIBS): ; @true
-
-ACLOCAL_AMFLAGS = -I .. -I ../.. -I ../../config
-CONFIG_STATUS_DEPENDENCIES = $(newlib_basedir)/configure.host
diff --git a/newlib/libc/acinclude.m4 b/newlib/libc/acinclude.m4
new file mode 100644
index 000000000000..69c956cb4d00
--- /dev/null
+++ b/newlib/libc/acinclude.m4
@@ -0,0 +1,182 @@
+dnl For each directory which we may or may not want, we define a name
+dnl for the library and an automake conditional for whether we should
+dnl build the library.
+
+LIBC_SIGNAL_LIB=
+if test -n "${signal_dir}"; then
+  LIBC_SIGNAL_LIB=${signal_dir}/lib.a
+fi
+AC_SUBST(LIBC_SIGNAL_LIB)
+AM_CONDITIONAL(HAVE_SIGNAL_DIR, test x${signal_dir} != x)
+
+LIBC_STDIO_LIB=
+if test -n "${stdio_dir}"; then
+  LIBC_STDIO_LIB=${stdio_dir}/lib.a
+fi
+AC_SUBST(LIBC_STDIO_LIB)
+AM_CONDITIONAL(HAVE_STDIO_DIR, test x${stdio_dir} != x)
+
+LIBC_STDIO64_LIB=
+if test -n "${stdio64_dir}"; then
+  LIBC_STDIO64_LIB=${stdio64_dir}/lib.a
+fi
+AC_SUBST(LIBC_STDIO64_LIB)
+AM_CONDITIONAL(HAVE_STDIO64_DIR, test x${stdio64_dir} != x)
+
+LIBC_POSIX_LIB=
+if test -n "${posix_dir}"; then
+  LIBC_POSIX_LIB=${posix_dir}/lib.a
+fi
+AC_SUBST(LIBC_POSIX_LIB)
+AM_CONDITIONAL(HAVE_POSIX_DIR, test x${posix_dir} != x)
+
+LIBC_XDR_LIB=
+if test -n "${xdr_dir}"; then
+  LIBC_XDR_LIB=${xdr_dir}/lib.a
+fi
+AC_SUBST(LIBC_XDR_LIB)
+AM_CONDITIONAL(HAVE_XDR_DIR, test x${xdr_dir} != x)
+
+LIBC_SYSCALL_LIB=
+if test -n "${syscall_dir}"; then
+  LIBC_SYSCALL_LIB=${syscall_dir}/lib.a
+fi
+AC_SUBST(LIBC_SYSCALL_LIB)
+AM_CONDITIONAL(HAVE_SYSCALL_DIR, test x${syscall_dir} != x)
+
+LIBC_UNIX_LIB=
+if test -n "${unix_dir}"; then
+  LIBC_UNIX_LIB=${unix_dir}/lib.a
+fi
+AC_SUBST(LIBC_UNIX_LIB)
+AM_CONDITIONAL(HAVE_UNIX_DIR, test x${unix_dir} != x)
+
+dnl We always recur into sys and machine, and let them decide what to
+dnl do.  However, we do need to know whether they will produce a library.
+
+LIBC_SYS_LIB=
+if test -n "${sys_dir}"; then
+  case ${sys_dir} in
+    a29khif) AC_CONFIG_FILES([libc/sys/a29khif/Makefile]) ;;
+    amdgcn) AC_CONFIG_FILES([libc/sys/amdgcn/Makefile]) ;;
+    arm) AC_CONFIG_FILES([libc/sys/arm/Makefile]) ;;
+    d10v) AC_CONFIG_FILES([libc/sys/d10v/Makefile]) ;;
+    epiphany) AC_CONFIG_FILES([libc/sys/epiphany/Makefile]) ;;
+    h8300hms) AC_CONFIG_FILES([libc/sys/h8300hms/Makefile]) ;;
+    h8500hms) AC_CONFIG_FILES([libc/sys/h8500hms/Makefile]) ;;
+    m88kbug) AC_CONFIG_FILES([libc/sys/m88kbug/Makefile]) ;;
+    mmixware) AC_CONFIG_FILES([libc/sys/mmixware/Makefile]) ;;
+    netware) AC_CONFIG_FILES([libc/sys/netware/Makefile]) ;;
+    or1k) AC_CONFIG_FILES([libc/sys/or1k/Makefile]) ;;
+    phoenix) AC_CONFIG_FILES([libc/sys/phoenix/Makefile]) ;;
+    rdos) AC_CONFIG_FILES([libc/sys/rdos/Makefile]) ;;
+    rtems) AC_CONFIG_FILES([libc/sys/rtems/Makefile]) ;;
+    sh) AC_CONFIG_FILES([libc/sys/sh/Makefile]) ;;
+    sysmec) AC_CONFIG_FILES([libc/sys/sysmec/Makefile]) ;;
+    sysnec810) AC_CONFIG_FILES([libc/sys/sysnec810/Makefile]) ;;
+    sysnecv850) AC_CONFIG_FILES([libc/sys/sysnecv850/Makefile]) ;;
+    sysvi386) AC_CONFIG_FILES([libc/sys/sysvi386/Makefile]) ;;
+    sysvnecv70) AC_CONFIG_FILES([libc/sys/sysvnecv70/Makefile]) ;;
+    tic80) AC_CONFIG_FILES([libc/sys/tic80/Makefile]) ;;
+    tirtos) AC_CONFIG_FILES([libc/sys/tirtos/Makefile]) ;;
+    w65) AC_CONFIG_FILES([libc/sys/w65/Makefile]) ;;
+    z8ksim) AC_CONFIG_FILES([libc/sys/z8ksim/Makefile]) ;;
+    *) AC_MSG_ERROR([unsupported sys_dir "${sys_dir}"]) ;;
+  esac
+
+  SYS_DIR=sys/${sys_dir}
+  LIBC_SYS_LIB=${SYS_DIR}/lib.a
+fi
+AC_SUBST(SYS_DIR)
+AM_CONDITIONAL(HAVE_SYS_DIR, test x${sys_dir} != x)
+AC_SUBST(LIBC_SYS_LIB)
+
+AC_TYPE_LONG_DOUBLE
+AM_CONDITIONAL(HAVE_LONG_DOUBLE, test x"$ac_cv_type_long_double" = x"yes")
+
+dnl iconv library will be compiled if --enable-newlib-iconv option is enabled
+AM_CONDITIONAL(ENABLE_NEWLIB_ICONV, test x${newlib_iconv} != x)
+
+dnl We have to include these unconditionally since machines might want to use
+dnl AM_CONDITIONAL in their subdirs.
+m4_include([libc/machine/nds32/acinclude.m4])
+m4_include([libc/machine/powerpc/acinclude.m4])
+m4_include([libc/machine/sh/acinclude.m4])
+m4_include([libc/machine/spu/acinclude.m4])
+m4_include([libc/sys/phoenix/acinclude.m4])
+
+LIBC_MACHINE_LIB=
+if test -n "${machine_dir}"; then
+  case ${machine_dir} in
+    a29k) AC_CONFIG_FILES([libc/machine/a29k/Makefile]) ;;
+    aarch64) AC_CONFIG_FILES([libc/machine/aarch64/Makefile]) ;;
+    amdgcn) AC_CONFIG_FILES([libc/machine/amdgcn/Makefile]) ;;
+    arc) AC_CONFIG_FILES([libc/machine/arc/Makefile]) ;;
+    arm) AC_CONFIG_FILES([libc/machine/arm/Makefile]) ;;
+    bfin) AC_CONFIG_FILES([libc/machine/bfin/Makefile]) ;;
+    cr16) AC_CONFIG_FILES([libc/machine/cr16/Makefile]) ;;
+    cris) AC_CONFIG_FILES([libc/machine/cris/Makefile]) ;;
+    crx) AC_CONFIG_FILES([libc/machine/crx/Makefile]) ;;
+    csky) AC_CONFIG_FILES([libc/machine/csky/Makefile]) ;;
+    d10v) AC_CONFIG_FILES([libc/machine/d10v/Makefile]) ;;
+    d30v) AC_CONFIG_FILES([libc/machine/d30v/Makefile]) ;;
+    epiphany) AC_CONFIG_FILES([libc/machine/epiphany/Makefile]) ;;
+    fr30) AC_CONFIG_FILES([libc/machine/fr30/Makefile]) ;;
+    frv) AC_CONFIG_FILES([libc/machine/frv/Makefile]) ;;
+    ft32) AC_CONFIG_FILES([libc/machine/ft32/Makefile]) ;;
+    h8300) AC_CONFIG_FILES([libc/machine/h8300/Makefile]) ;;
+    h8500) AC_CONFIG_FILES([libc/machine/h8500/Makefile]) ;;
+    hppa) AC_CONFIG_FILES([libc/machine/hppa/Makefile]) ;;
+    i386) AC_CONFIG_FILES([libc/machine/i386/Makefile]) ;;
+    i960) AC_CONFIG_FILES([libc/machine/i960/Makefile]) ;;
+    iq2000) AC_CONFIG_FILES([libc/machine/iq2000/Makefile]) ;;
+    lm32) AC_CONFIG_FILES([libc/machine/lm32/Makefile]) ;;
+    m32c) AC_CONFIG_FILES([libc/machine/m32c/Makefile]) ;;
+    m32r) AC_CONFIG_FILES([libc/machine/m32r/Makefile]) ;;
+    m68hc11) AC_CONFIG_FILES([libc/machine/m68hc11/Makefile]) ;;
+    m68k) AC_CONFIG_FILES([libc/machine/m68k/Makefile]) ;;
+    m88k) AC_CONFIG_FILES([libc/machine/m88k/Makefile]) ;;
+    mep) AC_CONFIG_FILES([libc/machine/mep/Makefile]) ;;
+    microblaze) AC_CONFIG_FILES([libc/machine/microblaze/Makefile]) ;;
+    mips) AC_CONFIG_FILES([libc/machine/mips/Makefile]) ;;
+    riscv) AC_CONFIG_FILES([libc/machine/riscv/Makefile]) ;;
+    mn10200) AC_CONFIG_FILES([libc/machine/mn10200/Makefile]) ;;
+    mn10300) AC_CONFIG_FILES([libc/machine/mn10300/Makefile]) ;;
+    moxie) AC_CONFIG_FILES([libc/machine/moxie/Makefile]) ;;
+    msp430) AC_CONFIG_FILES([libc/machine/msp430/Makefile]) ;;
+    mt) AC_CONFIG_FILES([libc/machine/mt/Makefile]) ;;
+    nds32) AC_CONFIG_FILES([libc/machine/nds32/Makefile]) ;;
+    necv70) AC_CONFIG_FILES([libc/machine/necv70/Makefile]) ;;
+    nios2) AC_CONFIG_FILES([libc/machine/nios2/Makefile]) ;;
+    nvptx) AC_CONFIG_FILES([libc/machine/nvptx/Makefile]) ;;
+    or1k) AC_CONFIG_FILES([libc/machine/or1k/Makefile]) ;;
+    powerpc) AC_CONFIG_FILES([libc/machine/powerpc/Makefile]) ;;
+    pru) AC_CONFIG_FILES([libc/machine/pru/Makefile]) ;;
+    rl78) AC_CONFIG_FILES([libc/machine/rl78/Makefile]) ;;
+    rx) AC_CONFIG_FILES([libc/machine/rx/Makefile]) ;;
+    sh) AC_CONFIG_FILES([libc/machine/sh/Makefile]) ;;
+    sparc) AC_CONFIG_FILES([libc/machine/sparc/Makefile]) ;;
+    spu) AC_CONFIG_FILES([libc/machine/spu/Makefile]) ;;
+    tic4x) AC_CONFIG_FILES([libc/machine/tic4x/Makefile]) ;;
+    tic6x) AC_CONFIG_FILES([libc/machine/tic6x/Makefile]) ;;
+    tic80) AC_CONFIG_FILES([libc/machine/tic80/Makefile]) ;;
+    v850) AC_CONFIG_FILES([libc/machine/v850/Makefile]) ;;
+    visium) AC_CONFIG_FILES([libc/machine/visium/Makefile]) ;;
+    w65) AC_CONFIG_FILES([libc/machine/w65/Makefile]) ;;
+    x86_64) AC_CONFIG_FILES([libc/machine/x86_64/Makefile]) ;;
+    xc16x) AC_CONFIG_FILES([libc/machine/xc16x/Makefile]) ;;
+    xstormy16) AC_CONFIG_FILES([libc/machine/xstormy16/Makefile]) ;;
+    z8k) AC_CONFIG_FILES([libc/machine/z8k/Makefile]) ;;
+    *) AC_MSG_ERROR([unsupported machine_dir "${machine_dir}"]) ;;
+  esac
+
+  LIBC_MACHINE_DIR=machine/${machine_dir}
+  LIBC_MACHINE_LIB=${LIBC_MACHINE_DIR}/lib.a
+fi
+AM_CONDITIONAL(HAVE_LIBC_MACHINE_DIR, test "x${LIBC_MACHINE_DIR}" != x)
+AC_SUBST(LIBC_MACHINE_DIR)
+AC_SUBST(LIBC_MACHINE_LIB)
+
+AM_CONDITIONAL(MACH_ADD_SETJMP, test "x$mach_add_setjmp" = "xtrue")
+
+AC_CONFIG_FILES([libc/Makefile libc/argz/Makefile libc/ctype/Makefile libc/errno/Makefile libc/locale/Makefile libc/misc/Makefile libc/reent/Makefile libc/search/Makefile libc/stdio/Makefile libc/stdio64/Makefile libc/stdlib/Makefile libc/string/Makefile libc/time/Makefile libc/posix/Makefile libc/signal/Makefile libc/syscalls/Makefile libc/unix/Makefile libc/iconv/Makefile libc/iconv/ces/Makefile libc/iconv/ccs/Makefile libc/iconv/ccs/binary/Makefile libc/iconv/lib/Makefile libc/ssp/Makefile libc/xdr/Makefile])
diff --git a/newlib/libc/configure.ac b/newlib/libc/configure.ac
deleted file mode 100644
index 3a70e2986d2c..000000000000
--- a/newlib/libc/configure.ac
+++ /dev/null
@@ -1,237 +0,0 @@
-dnl This is the newlib/libc configure.in file.
-dnl Process this file with autoconf to produce a configure script.
-
-AC_INIT([newlib],[NEWLIB_VERSION])
-AC_CONFIG_SRCDIR([sys.tex])
-
-dnl Can't be done in NEWLIB_CONFIGURE because that confuses automake. 
-AC_CONFIG_AUX_DIR(../..)
-
-dnl Support --enable-newlib-io-pos-args used by libc/stdio
-AC_ARG_ENABLE(newlib-io-pos-args,
-[  --enable-newlib-io-pos-args enable printf-family positional arg support],
-[case "${enableval}" in
-  yes) newlib_io_pos_args=yes ;;
-  no)  newlib_io_pos_args=no ;;
-  *)   AC_MSG_ERROR(bad value ${enableval} for newlib-io-pos-args option) ;;
- esac], [newlib_io_pos_args=no])dnl
-
-dnl Support --enable-newlib-nano-malloc used by libc/stdlib
-AC_ARG_ENABLE(newlib_nano_malloc,
-[  --enable-newlib-nano-malloc    Use small-footprint nano-malloc implementation],
-[case "${enableval}" in
-   yes) newlib_nano_malloc=yes ;;
-   no)  newlib_nano_malloc=no ;;
-   *) AC_MSG_ERROR(bad value ${enableval} for newlib-nano-malloc) ;;
- esac],[newlib_nano_malloc=])
-
-dnl Support --enable-newlib-nano-formatted-io used by libc/stdio
-AC_ARG_ENABLE(newlib_nano_formatted_io,
-[  --enable-newlib-nano-formatted-io    Use small-footprint nano-formatted-IO implementation],
-[case "${enableval}" in
-   yes) newlib_nano_formatted_io=yes ;;
-   no)  newlib_nano_formatted_io=no ;;
-   *) AC_MSG_ERROR(bad value ${enableval} for newlib-nano-formatted-io) ;;
- esac],[newlib_nano_formatted_io=no])
-AM_CONDITIONAL(NEWLIB_NANO_FORMATTED_IO, test x$newlib_nano_formatted_io = xyes)
-
-dnl Support --enable-retargetable-locking used by libc/sys
-AC_ARG_ENABLE(newlib-retargetable-locking,
-[  --enable-newlib-retargetable-locking    Allow locking routines to be retargeted at link time],
-[case "${enableval}" in
-   yes) newlib_retargetable_locking=yes ;;
-   no)  newlib_retargetable_lock=no ;;
-   *) AC_MSG_ERROR(bad value ${enableval} for newlib-retargetable-locking) ;;
- esac],[newlib_retargetable_locking=no])
-AM_CONDITIONAL(NEWLIB_RETARGETABLE_LOCKING, test x$newlib_retargetable_locking = xyes)
-
-NEWLIB_CONFIGURE(..)
-
-AM_CONDITIONAL(NEWLIB_NANO_MALLOC, test x$newlib_nano_malloc = xyes)
-
-dnl For each directory which we may or may not want, we define a name
-dnl for the library and an automake conditional for whether we should
-dnl build the library.
-
-LIBC_SIGNAL_LIB=
-if test -n "${signal_dir}"; then
-  LIBC_SIGNAL_LIB=${signal_dir}/lib.a
-fi
-AC_SUBST(LIBC_SIGNAL_LIB)
-AM_CONDITIONAL(HAVE_SIGNAL_DIR, test x${signal_dir} != x)
-
-LIBC_STDIO_LIB=
-if test -n "${stdio_dir}"; then
-  LIBC_STDIO_LIB=${stdio_dir}/lib.a
-fi
-AC_SUBST(LIBC_STDIO_LIB)
-AM_CONDITIONAL(HAVE_STDIO_DIR, test x${stdio_dir} != x)
-
-LIBC_STDIO64_LIB=
-if test -n "${stdio64_dir}"; then
-  LIBC_STDIO64_LIB=${stdio64_dir}/lib.a
-fi
-AC_SUBST(LIBC_STDIO64_LIB)
-AM_CONDITIONAL(HAVE_STDIO64_DIR, test x${stdio64_dir} != x)
-
-LIBC_POSIX_LIB=
-if test -n "${posix_dir}"; then
-  LIBC_POSIX_LIB=${posix_dir}/lib.a
-fi
-AC_SUBST(LIBC_POSIX_LIB)
-AM_CONDITIONAL(HAVE_POSIX_DIR, test x${posix_dir} != x)
-
-LIBC_XDR_LIB=
-if test -n "${xdr_dir}"; then
-  LIBC_XDR_LIB=${xdr_dir}/lib.a
-fi
-AC_SUBST(LIBC_XDR_LIB)
-AM_CONDITIONAL(HAVE_XDR_DIR, test x${xdr_dir} != x)
-
-LIBC_SYSCALL_LIB=
-if test -n "${syscall_dir}"; then
-  LIBC_SYSCALL_LIB=${syscall_dir}/lib.a
-fi
-AC_SUBST(LIBC_SYSCALL_LIB)
-AM_CONDITIONAL(HAVE_SYSCALL_DIR, test x${syscall_dir} != x)
-
-LIBC_UNIX_LIB=
-if test -n "${unix_dir}"; then
-  LIBC_UNIX_LIB=${unix_dir}/lib.a
-fi
-AC_SUBST(LIBC_UNIX_LIB)
-AM_CONDITIONAL(HAVE_UNIX_DIR, test x${unix_dir} != x)
-
-dnl We always recur into sys and machine, and let them decide what to
-dnl do.  However, we do need to know whether they will produce a library.
-
-LIBC_SYS_LIB=
-if test -n "${sys_dir}"; then
-  case ${sys_dir} in
-    a29khif) AC_CONFIG_FILES([sys/a29khif/Makefile]) ;;
-    amdgcn) AC_CONFIG_FILES([sys/amdgcn/Makefile]) ;;
-    arm) AC_CONFIG_FILES([sys/arm/Makefile]) ;;
-    d10v) AC_CONFIG_FILES([sys/d10v/Makefile]) ;;
-    epiphany) AC_CONFIG_FILES([sys/epiphany/Makefile]) ;;
-    h8300hms) AC_CONFIG_FILES([sys/h8300hms/Makefile]) ;;
-    h8500hms) AC_CONFIG_FILES([sys/h8500hms/Makefile]) ;;
-    m88kbug) AC_CONFIG_FILES([sys/m88kbug/Makefile]) ;;
-    mmixware) AC_CONFIG_FILES([sys/mmixware/Makefile]) ;;
-    netware) AC_CONFIG_FILES([sys/netware/Makefile]) ;;
-    or1k) AC_CONFIG_FILES([sys/or1k/Makefile]) ;;
-    phoenix) AC_CONFIG_FILES([sys/phoenix/Makefile]) ;;
-    rdos) AC_CONFIG_FILES([sys/rdos/Makefile]) ;;
-    rtems) AC_CONFIG_FILES([sys/rtems/Makefile]) ;;
-    sh) AC_CONFIG_FILES([sys/sh/Makefile]) ;;
-    sysmec) AC_CONFIG_FILES([sys/sysmec/Makefile]) ;;
-    sysnec810) AC_CONFIG_FILES([sys/sysnec810/Makefile]) ;;
-    sysnecv850) AC_CONFIG_FILES([sys/sysnecv850/Makefile]) ;;
-    sysvi386) AC_CONFIG_FILES([sys/sysvi386/Makefile]) ;;
-    sysvnecv70) AC_CONFIG_FILES([sys/sysvnecv70/Makefile]) ;;
-    tic80) AC_CONFIG_FILES([sys/tic80/Makefile]) ;;
-    tirtos) AC_CONFIG_FILES([sys/tirtos/Makefile]) ;;
-    w65) AC_CONFIG_FILES([sys/w65/Makefile]) ;;
-    z8ksim) AC_CONFIG_FILES([sys/z8ksim/Makefile]) ;;
-    *) AC_MSG_ERROR([unsupported sys_dir "${sys_dir}"]) ;;
-  esac
-
-  SYS_DIR=sys/${sys_dir}
-  LIBC_SYS_LIB=${SYS_DIR}/lib.a
-fi
-AC_SUBST(SYS_DIR)
-AM_CONDITIONAL(HAVE_SYS_DIR, test x${sys_dir} != x)
-AC_SUBST(LIBC_SYS_LIB)
-AC_SUBST(sys_dir)
-
-AC_TYPE_LONG_DOUBLE
-AM_CONDITIONAL(HAVE_LONG_DOUBLE, test x"$ac_cv_type_long_double" = x"yes")
-
-dnl iconv library will be compiled if --enable-newlib-iconv option is enabled
-AM_CONDITIONAL(ENABLE_NEWLIB_ICONV, test x${newlib_iconv} != x)
-
-dnl We have to include these unconditionally since machines might want to use
-dnl AM_CONDITIONAL in their subdirs.
-m4_include([machine/nds32/acinclude.m4])
-m4_include([machine/powerpc/acinclude.m4])
-m4_include([machine/sh/acinclude.m4])
-m4_include([machine/spu/acinclude.m4])
-m4_include([sys/phoenix/acinclude.m4])
-
-LIBC_MACHINE_LIB=
-if test -n "${machine_dir}"; then
-  case ${machine_dir} in
-    a29k) AC_CONFIG_FILES([machine/a29k/Makefile]) ;;
-    aarch64) AC_CONFIG_FILES([machine/aarch64/Makefile]) ;;
-    amdgcn) AC_CONFIG_FILES([machine/amdgcn/Makefile]) ;;
-    arc) AC_CONFIG_FILES([machine/arc/Makefile]) ;;
-    arm) AC_CONFIG_FILES([machine/arm/Makefile]) ;;
-    bfin) AC_CONFIG_FILES([machine/bfin/Makefile]) ;;
-    cr16) AC_CONFIG_FILES([machine/cr16/Makefile]) ;;
-    cris) AC_CONFIG_FILES([machine/cris/Makefile]) ;;
-    crx) AC_CONFIG_FILES([machine/crx/Makefile]) ;;
-    csky) AC_CONFIG_FILES([machine/csky/Makefile]) ;;
-    d10v) AC_CONFIG_FILES([machine/d10v/Makefile]) ;;
-    d30v) AC_CONFIG_FILES([machine/d30v/Makefile]) ;;
-    epiphany) AC_CONFIG_FILES([machine/epiphany/Makefile]) ;;
-    fr30) AC_CONFIG_FILES([machine/fr30/Makefile]) ;;
-    frv) AC_CONFIG_FILES([machine/frv/Makefile]) ;;
-    ft32) AC_CONFIG_FILES([machine/ft32/Makefile]) ;;
-    h8300) AC_CONFIG_FILES([machine/h8300/Makefile]) ;;
-    h8500) AC_CONFIG_FILES([machine/h8500/Makefile]) ;;
-    hppa) AC_CONFIG_FILES([machine/hppa/Makefile]) ;;
-    i386) AC_CONFIG_FILES([machine/i386/Makefile]) ;;
-    i960) AC_CONFIG_FILES([machine/i960/Makefile]) ;;
-    iq2000) AC_CONFIG_FILES([machine/iq2000/Makefile]) ;;
-    lm32) AC_CONFIG_FILES([machine/lm32/Makefile]) ;;
-    m32c) AC_CONFIG_FILES([machine/m32c/Makefile]) ;;
-    m32r) AC_CONFIG_FILES([machine/m32r/Makefile]) ;;
-    m68hc11) AC_CONFIG_FILES([machine/m68hc11/Makefile]) ;;
-    m68k) AC_CONFIG_FILES([machine/m68k/Makefile]) ;;
-    m88k) AC_CONFIG_FILES([machine/m88k/Makefile]) ;;
-    mep) AC_CONFIG_FILES([machine/mep/Makefile]) ;;
-    microblaze) AC_CONFIG_FILES([machine/microblaze/Makefile]) ;;
-    mips) AC_CONFIG_FILES([machine/mips/Makefile]) ;;
-    riscv) AC_CONFIG_FILES([machine/riscv/Makefile]) ;;
-    mn10200) AC_CONFIG_FILES([machine/mn10200/Makefile]) ;;
-    mn10300) AC_CONFIG_FILES([machine/mn10300/Makefile]) ;;
-    moxie) AC_CONFIG_FILES([machine/moxie/Makefile]) ;;
-    msp430) AC_CONFIG_FILES([machine/msp430/Makefile]) ;;
-    mt) AC_CONFIG_FILES([machine/mt/Makefile]) ;;
-    nds32) AC_CONFIG_FILES([machine/nds32/Makefile]) ;;
-    necv70) AC_CONFIG_FILES([machine/necv70/Makefile]) ;;
-    nios2) AC_CONFIG_FILES([machine/nios2/Makefile]) ;;
-    nvptx) AC_CONFIG_FILES([machine/nvptx/Makefile]) ;;
-    or1k) AC_CONFIG_FILES([machine/or1k/Makefile]) ;;
-    powerpc) AC_CONFIG_FILES([machine/powerpc/Makefile]) ;;
-    pru) AC_CONFIG_FILES([machine/pru/Makefile]) ;;
-    rl78) AC_CONFIG_FILES([machine/rl78/Makefile]) ;;
-    rx) AC_CONFIG_FILES([machine/rx/Makefile]) ;;
-    sh) AC_CONFIG_FILES([machine/sh/Makefile]) ;;
-    sparc) AC_CONFIG_FILES([machine/sparc/Makefile]) ;;
-    spu) AC_CONFIG_FILES([machine/spu/Makefile]) ;;
-    tic4x) AC_CONFIG_FILES([machine/tic4x/Makefile]) ;;
-    tic6x) AC_CONFIG_FILES([machine/tic6x/Makefile]) ;;
-    tic80) AC_CONFIG_FILES([machine/tic80/Makefile]) ;;
-    v850) AC_CONFIG_FILES([machine/v850/Makefile]) ;;
-    visium) AC_CONFIG_FILES([machine/visium/Makefile]) ;;
-    w65) AC_CONFIG_FILES([machine/w65/Makefile]) ;;
-    x86_64) AC_CONFIG_FILES([machine/x86_64/Makefile]) ;;
-    xc16x) AC_CONFIG_FILES([machine/xc16x/Makefile]) ;;
-    xstormy16) AC_CONFIG_FILES([machine/xstormy16/Makefile]) ;;
-    z8k) AC_CONFIG_FILES([machine/z8k/Makefile]) ;;
-    *) AC_MSG_ERROR([unsupported machine_dir "${machine_dir}"]) ;;
-  esac
-
-  LIBC_MACHINE_DIR=machine/${machine_dir}
-  LIBC_MACHINE_LIB=${LIBC_MACHINE_DIR}/lib.a
-fi
-AM_CONDITIONAL(HAVE_LIBC_MACHINE_DIR, test "x${LIBC_MACHINE_DIR}" != x)
-AC_SUBST(LIBC_MACHINE_DIR)
-AC_SUBST(LIBC_MACHINE_LIB)
-AC_SUBST(machine_dir)
-AC_SUBST(shared_machine_dir)
-
-AM_CONDITIONAL(MACH_ADD_SETJMP, test "x$mach_add_setjmp" = "xtrue")
-
-AC_CONFIG_FILES([Makefile argz/Makefile ctype/Makefile errno/Makefile locale/Makefile misc/Makefile reent/Makefile search/Makefile stdio/Makefile stdio64/Makefile stdlib/Makefile string/Makefile time/Makefile posix/Makefile signal/Makefile syscalls/Makefile unix/Makefile iconv/Makefile iconv/ces/Makefile iconv/ccs/Makefile iconv/ccs/binary/Makefile iconv/lib/Makefile ssp/Makefile xdr/Makefile])
-AC_OUTPUT
diff --git a/newlib/libc/sys/phoenix/acinclude.m4 b/newlib/libc/sys/phoenix/acinclude.m4
index fac0f6f20de2..6f04b82485e5 100644
--- a/newlib/libc/sys/phoenix/acinclude.m4
+++ b/newlib/libc/sys/phoenix/acinclude.m4
@@ -2,7 +2,7 @@ AS_IF([test "$sys_dir" = "phoenix"], [dnl
   m4_foreach_w([MACHINE], [
     arm
   ], [dnl
-    AS_IF(test "${machine_dir}" = MACHINE, AC_CONFIG_FILES([sys/phoenix/machine/]MACHINE[/Makefile]))
+    AS_IF(test "${machine_dir}" = MACHINE, AC_CONFIG_FILES([libc/sys/phoenix/machine/]MACHINE[/Makefile]))
   ])
 
   PHOENIX_MACHINE_DIR=machine/${machine_dir}
-- 
2.34.1


^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [PATCH] newlib: libc: move configure into top-level
  2022-02-18  3:09 [PATCH] newlib: libc: move configure into top-level Mike Frysinger
@ 2022-02-25 14:53 ` Corinna Vinschen
  0 siblings, 0 replies; 2+ messages in thread
From: Corinna Vinschen @ 2022-02-25 14:53 UTC (permalink / raw)
  To: newlib

On Feb 17 22:09, Mike Frysinger wrote:
> This kills off the last configure script under libc/ and folds it
> into the top newlib configure script.  The a lot of the logic was
> already in the top configure script, so move what's left into a
> libc/acinclude.m4 file.

Looks good, and fortunately I already had pushed 8bb6821c7ac5 :)


Thx,
Corinna


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2022-02-25 14:53 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-02-18  3:09 [PATCH] newlib: libc: move configure into top-level Mike Frysinger
2022-02-25 14:53 ` Corinna Vinschen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).