From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp.gentoo.org (smtp.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) by sourceware.org (Postfix) with ESMTP id A8D343858D37 for ; Sat, 12 Feb 2022 10:20:17 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org A8D343858D37 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=gentoo.org Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gentoo.org Received: by smtp.gentoo.org (Postfix, from userid 559) id 7FF40342EF8; Sat, 12 Feb 2022 10:20:14 +0000 (UTC) From: Mike Frysinger To: newlib@sourceware.org Subject: [PATCH] libgloss: merge mips configure script up a level Date: Sat, 12 Feb 2022 05:20:16 -0500 Message-Id: <20220212102016.13047-1-vapier@gentoo.org> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20220211125054.12397-1-vapier@gentoo.org> References: <20220211125054.12397-1-vapier@gentoo.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-11.6 required=5.0 tests=BAYES_00, GIT_PATCH_0, KAM_DMARC_STATUS, SPF_HELO_PASS, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: newlib@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Newlib mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 12 Feb 2022 10:20:19 -0000 Move the minor mips-specific logic to a dedicated file & namespace them so we can merge its configure logic up a level. --- libgloss/Makefile.in | 10 +- libgloss/aclocal.m4 | 59 +- libgloss/configure | 136 +- libgloss/configure.ac | 5 +- libgloss/mips/Makefile.in | 33 +- libgloss/mips/acinclude.m4 | 47 + libgloss/mips/aclocal.m4 | 384 ---- libgloss/mips/configure | 3990 ------------------------------------ libgloss/mips/configure.ac | 103 - 9 files changed, 149 insertions(+), 4618 deletions(-) create mode 100644 libgloss/mips/acinclude.m4 delete mode 100644 libgloss/mips/aclocal.m4 delete mode 100755 libgloss/mips/configure delete mode 100644 libgloss/mips/configure.ac diff --git a/libgloss/configure.ac b/libgloss/configure.ac index f9d037066bc3..eb3110e0427d 100644 --- a/libgloss/configure.ac +++ b/libgloss/configure.ac @@ -99,7 +99,9 @@ case "${target}" in config_wince=true ;; mips*-*-*) - AC_CONFIG_SUBDIRS([mips]) + AC_CONFIG_FILES([mips/Makefile]) + subdirs="$subdirs mips" + target_makefile_frag=${srcdir}/config/mips.mt ;; riscv*-*-*) AC_CONFIG_FILES([riscv/Makefile]) @@ -343,6 +345,7 @@ m4_include([i386/acinclude.m4]) m4_include([libnosys/acinclude.m4]) m4_include([m68k/acinclude.m4]) m4_include([mcore/acinclude.m4]) +m4_include([mips/acinclude.m4]) m4_include([mn10300/acinclude.m4]) m4_include([moxie/acinclude.m4]) diff --git a/libgloss/mips/Makefile.in b/libgloss/mips/Makefile.in index d96478d933ac..4213a1d1f513 100644 --- a/libgloss/mips/Makefile.in +++ b/libgloss/mips/Makefile.in @@ -64,31 +64,31 @@ OBJCOPY = `if [ -f ${objroot}/../binutils/objcopy ] ; \ then echo ${objroot}/../binutils/objcopy ; \ else t='$(program_transform_name)'; echo objcopy | sed -e $$t ; fi` -CRT0 = @crt0@ -PCRT0 = @pcrt0@ +CRT0 = @MIPS_CRT0@ +PCRT0 = pcrt0.o GENOBJS = syscalls.o fstat.o getpid.o isatty.o kill.o \ lseek.o print.o putnum.o stat.o unlink.o GENOBJS2 = open.o close.o read.o write.o -IDTOBJS = idtmon.o @part_specific_obj@ ${GENOBJS} -PMONOBJS = pmon.o @part_specific_obj@ ${GENOBJS} -LSIOBJS = lsipmon.o @part_specific_obj@ ${GENOBJS} -DVEOBJS = dvemon.o @part_specific_obj@ ${GENOBJS} ${GENOBJS2} -JMR3904OBJS = jmr3904-io.o @part_specific_obj@ ${GENOBJS} ${GENOBJS2} -CFEOBJS = cfe.o cfe_api.o cfe_mem.o @part_specific_obj@ ${GENOBJS} ${GENOBJS2} -CYGMONOBJS = open.o close.o cygmon.o @part_specific_obj@ ${GENOBJS} +IDTOBJS = idtmon.o @MIPS_PART_SPECIFIC_OBJ@ ${GENOBJS} +PMONOBJS = pmon.o @MIPS_PART_SPECIFIC_OBJ@ ${GENOBJS} +LSIOBJS = lsipmon.o @MIPS_PART_SPECIFIC_OBJ@ ${GENOBJS} +DVEOBJS = dvemon.o @MIPS_PART_SPECIFIC_OBJ@ ${GENOBJS} ${GENOBJS2} +JMR3904OBJS = jmr3904-io.o @MIPS_PART_SPECIFIC_OBJ@ ${GENOBJS} ${GENOBJS2} +CFEOBJS = cfe.o cfe_api.o cfe_mem.o @MIPS_PART_SPECIFIC_OBJ@ ${GENOBJS} ${GENOBJS2} +CYGMONOBJS = open.o close.o cygmon.o @MIPS_PART_SPECIFIC_OBJ@ ${GENOBJS} # Nullmon cannot support read and write, but the test cases pull them in via libs -NULLMONOBJS = nullmon.o @part_specific_obj@ ${GENOBJS} +NULLMONOBJS = nullmon.o @MIPS_PART_SPECIFIC_OBJ@ ${GENOBJS} CFLAGS = -g GCC_LDFLAGS = `if [ -d ${objroot}/../gcc ] ; \ then echo -L${objroot}/../gcc ; fi` -SCRIPTS = @script_list@ -BSP = @bsp_list@ +SCRIPTS = @MIPS_SCRIPT_LIST@ +BSP = @MIPS_BSP_LIST@ -PART_SPECIFIC_DEFINES = @part_specific_defines@ +PART_SPECIFIC_DEFINES = @MIPS_PART_SPECIFIC_DEFINES@ # Host specific makefile fragment comes in here. @host_makefile_frag@ @@ -253,8 +253,5 @@ syscalls.o: ${srcdir}/syscalls.c # target specific makefile fragment comes in here. @target_makefile_frag@ -Makefile: Makefile.in config.status @host_makefile_frag_path@ @target_makefile_frag_path@ - $(SHELL) config.status - -config.status: configure - $(SHELL) config.status --recheck +Makefile: Makefile.in ../config.status + cd .. && $(SHELL) config.status diff --git a/libgloss/mips/acinclude.m4 b/libgloss/mips/acinclude.m4 new file mode 100644 index 000000000000..6061d8dd1a35 --- /dev/null +++ b/libgloss/mips/acinclude.m4 @@ -0,0 +1,47 @@ +MIPS_PART_SPECIFIC_OBJ= +MIPS_PART_SPECIFIC_DEFINES= +MIPS_SCRIPT_LIST= +MIPS_BSP_LIST= +MIPS_CRT0=crt0.o + +case "${target}" in + mips*-tx39*-*|mipstx39*-*-*) + MIPS_SCRIPT_LIST="dve idt jmr3904app jmr3904dram jmr3904dram-java jmr3904app-java sde32 sde64 mti32 mti64 mti64_n32 mti64_64" + MIPS_BSP_LIST="libdve.a libidt.a libjmr3904.a" + ;; + mipsisa32-*-* | mipsisa32el-*-* | \ + mipsisa32r2-*-* | mipsisa32r2el-*-* | \ + mipsisa64*-*-*) + MIPS_CRT0="crt0_cfe.o crt0_cygmon.o crt0.o" + MIPS_SCRIPT_LIST="idt32 idt64 cfe" + MIPS_BSP_LIST="libcygmon.a libidt.a libcfe.a" + ;; + mips*-lsi*-*) + MIPS_PART_SPECIFIC_OBJ="entry.o" + MIPS_SCRIPT_LIST="lsi" + MIPS_BSP_LIST=liblsi.a + ;; + mips64vr5*-*-*) + MIPS_PART_SPECIFIC_OBJ="vr5xxx.o cma101.o" + MIPS_PART_SPECIFIC_DEFINES=-DR5000 + MIPS_SCRIPT_LIST="idt pmon ddb ddb-kseg0 lsi idtecoff nullmon" + MIPS_BSP_LIST="libidt.a libpmon.a liblsi.a libnullmon.a" + ;; + mips64vr-*-* | mips64vrel-*-*) + MIPS_PART_SPECIFIC_OBJ="vr5xxx.o cma101.o" + MIPS_SCRIPT_LIST="ddb ddb-kseg0 nullmon" + MIPS_BSP_LIST="libpmon.a libnullmon.a" + ;; + mips*) + MIPS_CRT0="crt0_cfe.o crt0.o" + MIPS_PART_SPECIFIC_OBJ="vr4300.o cma101.o" + MIPS_SCRIPT_LIST="idt pmon ddb ddb-kseg0 lsi cfe idtecoff nullmon sde32 sde64 mti32 mti64 mti64_n32 mti64_64" + MIPS_BSP_LIST="libidt.a libpmon.a liblsi.a libcfe.a libnullmon.a" + ;; +esac + +AC_SUBST(MIPS_PART_SPECIFIC_OBJ) +AC_SUBST(MIPS_PART_SPECIFIC_DEFINES) +AC_SUBST(MIPS_SCRIPT_LIST) +AC_SUBST(MIPS_BSP_LIST) +AC_SUBST(MIPS_CRT0) diff --git a/libgloss/mips/configure.ac b/libgloss/mips/configure.ac deleted file mode 100644 index ca99c7287635..000000000000 --- a/libgloss/mips/configure.ac +++ /dev/null @@ -1,103 +0,0 @@ -# Copyright (c) 1995, 1996, 1997, 1998, 1999, 2000, 2002 Cygnus Support -# -# The authors hereby grant permission to use, copy, modify, distribute, -# and license this software and its documentation for any purpose, provided -# that existing copyright notices are retained in all copies and that this -# notice is included verbatim in any distributions. No written agreement, -# license, or royalty fee is required for any of the authorized uses. -# Modifications to this software may be copyrighted by their authors -# and need not follow the licensing terms described here, provided that -# the new terms are clearly indicated on the first page of each file where -# they apply. -# -# Process this file with autoconf to produce a configure script. -# -AC_INIT(crt0.S) - -AC_CONFIG_AUX_DIR(../..) - -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 - -crt0=crt0.o -pcrt0=pcrt0.o - -case "${target}" in - mips*-tx39*-*|mipstx39*-*-*) - part_specific_obj= - part_specific_defines= - script_list="dve idt jmr3904app jmr3904dram jmr3904dram-java jmr3904app-java sde32 sde64 mti32 mti64 mti64_n32 mti64_64" - bsp_list="libdve.a libidt.a libjmr3904.a" - ;; - mipsisa32-*-* | mipsisa32el-*-* | \ - mipsisa32r2-*-* | mipsisa32r2el-*-* | \ - mipsisa64*-*-*) - crt0="crt0_cfe.o crt0_cygmon.o crt0.o" - pcrt0="pcrt0.o" - part_specific_obj= - part_specific_defines= - script_list="idt32 idt64 cfe" - bsp_list="libcygmon.a libidt.a libcfe.a" - ;; - mips*-lsi*-*) - part_specific_obj=entry.o - part_specific_defines= - script_list="lsi" - bsp_list=liblsi.a - ;; - mips64vr5*-*-*) - part_specific_obj="vr5xxx.o cma101.o" - part_specific_defines=-DR5000 - script_list="idt pmon ddb ddb-kseg0 lsi idtecoff nullmon" - bsp_list="libidt.a libpmon.a liblsi.a libnullmon.a" - ;; - mips64vr-*-* | mips64vrel-*-*) - part_specific_obj="vr5xxx.o cma101.o" - script_list="ddb ddb-kseg0 nullmon" - bsp_list="libpmon.a libnullmon.a" - ;; - *) - crt0="crt0_cfe.o crt0.o" - part_specific_obj="vr4300.o cma101.o" - part_specific_defines= - script_list="idt pmon ddb ddb-kseg0 lsi cfe idtecoff nullmon sde32 sde64 mti32 mti64 mti64_n32 mti64_64" - bsp_list="libidt.a libpmon.a liblsi.a libcfe.a libnullmon.a" - ;; -esac - -host_makefile_frag=${srcdir}/../config/default.mh -target_makefile_frag=${srcdir}/../config/mips.mt - -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) -target_makefile_frag_path=$target_makefile_frag -AC_SUBST(target_makefile_frag_path) -AC_SUBST_FILE(target_makefile_frag) -AC_SUBST(part_specific_obj) -AC_SUBST(part_specific_defines) -AC_SUBST(script_list) -AC_SUBST(bsp_list) -AC_SUBST(crt0) -AC_SUBST(pcrt0) - -AM_ENABLE_MULTILIB(, ../..) - -AC_CONFIG_FILES([Makefile]) -AC_OUTPUT -- 2.34.1