This is the mail archive of the
newlib@sourceware.org
mailing list for the newlib project.
[PATCH, AArch64] Add configury files to the cpu-init subdir
- From: Yufeng Zhang <Yufeng dot Zhang at arm dot com>
- To: newlib at sourceware dot org
- Date: Thu, 01 Nov 2012 15:56:27 +0000
- Subject: [PATCH, AArch64] Add configury files to the cpu-init subdir
Hi,
This patch adds configuration files to 'libgloss/aarch64/cpu-init'. The
'cpu-init' subdir previouly only had 'Makefile.in' and it relied on its
parent's configuration file to config certain variables.
An issue had been identified that '@host_makefile_frag_path@' in
'cpu-init/Makefile.in' may not get expanded correctly especially when
'srcdir' is not an absolute path.
This patch fixes this issue by adding 'configure.in' and its friends to
the 'cpu-init' subdir so that 'host_makefile_frag_path' can be set properly.
Is it OK to commit?
Thanks,
Yufeng
libgloss/
2012-10-30 Yufeng Zhang <yufeng.zhang@arm.com>
* aarch64/configure.in: Replace the direct generation of
cpu-init/Makefile.in with AC_CONFIG_SUBDIRS(cpu-init).
* aarch64/configure: Re-generate.
* aarch64/cpu-init/Makefile.in (objtype): Remove.
(Makefile, config.status): Update the rules.
* aarch64/cpu-init/aclocal.m4: New file (generated).
* aarch64/cpu-init/configure.in: New file.
* aarch64/cpu-init/configure: New file (generated).
diff --git a/libgloss/aarch64/configure.in b/libgloss/aarch64/configure.in
index bd3fbc9..73d11b5 100644
--- a/libgloss/aarch64/configure.in
+++ b/libgloss/aarch64/configure.in
@@ -49,15 +49,7 @@ AC_SUBST_FILE(host_makefile_frag)
# Configure cpu init plug-ins
if test -d "${srcdir}/cpu-init"; then
subdirs="${subdirs} cpu-init"
- AC_CONFIG_FILES(cpu-init/Makefile,
- . ${libgloss_topdir}/config-ml.in,
- srcdir=${srcdir}
- target=${target}
- with_multisubdir=${with_multisubdir}
- ac_configure_args="${ac_configure_args} --enable-multilib"
- CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
- libgloss_topdir=${libgloss_topdir}
- )
+ AC_CONFIG_SUBDIRS(cpu-init)
AC_SUBST(subdirs)
fi
diff --git a/libgloss/aarch64/cpu-init/Makefile.in b/libgloss/aarch64/cpu-init/Makefile.in
index 79fce75..753df3f 100644
--- a/libgloss/aarch64/cpu-init/Makefile.in
+++ b/libgloss/aarch64/cpu-init/Makefile.in
@@ -40,8 +40,6 @@ bindir = @bindir@
libdir = @libdir@
tooldir = $(exec_prefix)/$(target_alias)
-objtype = @objtype@
-
INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@
@@ -103,8 +101,8 @@ info:
install-info:
clean-info:
-Makefile: Makefile.in ../config.status @host_makefile_frag_path@
- $(SHELL) ../config.status --file cpu-init/Makefile
+Makefile: Makefile.in config.status @host_makefile_frag_path@
+ $(SHELL) config.status
-../config.status: ../configure
- $(SHELL) ../config.status --recheck
+config.status: configure
+ $(SHELL) config.status --recheck
diff --git a/libgloss/aarch64/cpu-init/configure.in b/libgloss/aarch64/cpu-init/configure.in
new file mode 100644
index 0000000..03e0b22
--- /dev/null
+++ b/libgloss/aarch64/cpu-init/configure.in
@@ -0,0 +1,50 @@
+dnl Process this file with autoconf to produce a configure script.
+AC_PREREQ(2.59)
+AC_INIT(Makefile.in)
+
+if test "$srcdir" = "." ; then
+ if test "${with_target_subdir}" != "." ; then
+ libgloss_topdir="${srcdir}/${with_multisrctop}../../.."
+ else
+ libgloss_topdir="${srcdir}/${with_multisrctop}../.."
+ fi
+else
+ libgloss_topdir="${srcdir}/../../.."
+fi
+AC_CONFIG_AUX_DIR($libgloss_topdir)
+
+AC_CANONICAL_SYSTEM
+AC_ARG_PROGRAM
+
+AC_PROG_INSTALL
+
+LIB_AC_PROG_CC
+AS=${AS-as}
+AC_SUBST(AS)
+AR=${AR-ar}
+AC_SUBST(AR)
+LD=${LD-ld}
+AC_SUBST(LD)
+AC_PROG_RANLIB
+LIB_AM_PROG_AS
+
+host_makefile_frag=${srcdir}/../../config/default.mh
+
+dnl We have to assign the same value to other variables because autoconf
+dnl doesn't provide a mechanism to substitute a replacement keyword with
+dnl arbitrary data or pathnames.
+dnl
+host_makefile_frag_path=$host_makefile_frag
+AC_SUBST(host_makefile_frag_path)
+AC_SUBST_FILE(host_makefile_frag)
+
+AC_CONFIG_FILES(Makefile,
+. ${libgloss_topdir}/config-ml.in,
+srcdir=${srcdir}
+target=${target}
+with_multisubdir=${with_multisubdir}
+ac_configure_args="${ac_configure_args} --enable-multilib"
+CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
+libgloss_topdir=${libgloss_topdir}
+)
+AC_OUTPUT