libgloss: merge frv into top-level Makefile

Message ID 20231227033006.27353-1-vapier@gentoo.org
State New
Headers
Series libgloss: merge frv into top-level Makefile |

Commit Message

Mike Frysinger Dec. 27, 2023, 3:30 a.m. UTC
  Avoid a recursive make to speed things up a bit.
A frv-elf build shows installed objects & libs produce same code.
---
 libgloss/Makefile.am      |   3 +
 libgloss/Makefile.in      | 279 +++++++++++++++++++++++++-------------
 libgloss/configure        |  19 ++-
 libgloss/configure.ac     |   7 +-
 libgloss/frv/Makefile.in  | 125 -----------------
 libgloss/frv/Makefile.inc |  33 +++++
 6 files changed, 242 insertions(+), 224 deletions(-)
 delete mode 100644 libgloss/frv/Makefile.in
 create mode 100644 libgloss/frv/Makefile.inc
  

Patch

diff --git a/libgloss/Makefile.am b/libgloss/Makefile.am
index 6bfff4bd2e1e..aed0ee462dbe 100644
--- a/libgloss/Makefile.am
+++ b/libgloss/Makefile.am
@@ -81,6 +81,9 @@  endif
 if CONFIG_D30V
 include d30v/Makefile.inc
 endif
+if CONFIG_FRV
+include frv/Makefile.inc
+endif
 if CONFIG_I960
 include i960/Makefile.inc
 endif
diff --git a/libgloss/configure.ac b/libgloss/configure.ac
index a3b191a71e18..9ca179c34045 100644
--- a/libgloss/configure.ac
+++ b/libgloss/configure.ac
@@ -146,8 +146,7 @@  case "${target}" in
 	subdirs="$subdirs fr30"
 	;;
   frv*-*-*)
-	AC_CONFIG_FILES([frv/Makefile])
-	subdirs="$subdirs frv"
+	config_frv=true
 	;;
   ft32*-*-*)
 	AC_CONFIG_FILES([ft32/Makefile])
@@ -246,8 +245,8 @@  AC_SUBST(subdirs)
 dnl These subdirs have converted to non-recursive make.  Hopefully someday all
 dnl the ports above will too!
 m4_foreach_w([SUBDIR], [
-  aarch64 arc arm bfin csky d30v i960 iq2000 libnosys lm32 moxie msp430 nios2
-  riscv v850 wince xtensa
+  aarch64 arc arm bfin csky d30v frv i960 iq2000 libnosys lm32 moxie msp430
+  nios2 riscv v850 wince xtensa
 ], [dnl
   AM_CONDITIONAL([CONFIG_]m4_toupper(SUBDIR), [test x$config_]SUBDIR = xtrue)
 ])
diff --git a/libgloss/frv/Makefile.in b/libgloss/frv/Makefile.in
deleted file mode 100644
index cf3b8b43774f..000000000000
--- a/libgloss/frv/Makefile.in
+++ /dev/null
@@ -1,125 +0,0 @@ 
-# Copyright (c) 2002 Red Hat, Inc
-#
-# 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.
-
-# Makefile for libgloss/frv. This is the board support
-# code for the various frv targets.
-
-DESTDIR =
-VPATH = @srcdir@ @srcdir@/..
-srcdir = @srcdir@
-objdir = .
-srcroot = $(srcdir)/../..
-objroot = $(objdir)/../..
-
-prefix = @prefix@
-exec_prefix = @exec_prefix@
-
-host_alias = @host_alias@
-target_alias = @target_alias@
-
-bindir = @bindir@
-libdir = @libdir@
-tooldir = $(exec_prefix)/$(target_alias)
-
-# Multilib support variables.
-# TOP is used instead of MULTI{BUILD,SRC}TOP.
-MULTIDIRS =
-MULTISUBDIR =
-MULTIDO = true
-MULTICLEAN = true
-
-INSTALL = @INSTALL@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_DATA = @INSTALL_DATA@
-
-SHELL = /bin/sh
-
-mkinstalldirs = $(SHELL) $(srcroot)/mkinstalldirs
-
-CC = @CC@
-
-AS = @AS@
-AR = @AR@
-LD = @LD@
-RANLIB = @RANLIB@
-AR_FLAGS = rc
-
-OBJDUMP = `if [ -f ${objroot}/../binutils/objdump ] ; \
-	then echo ${objroot}/../binutils/objdump ; \
-	else t='$(program_transform_name)'; echo objdump | sed -e $$t ; fi`
-OBJCOPY = `if [ -f ${objroot}/../binutils/objcopy ] ; \
-	then echo ${objroot}/../binutils/objcopy ; \
-	else t='$(program_transform_name)'; echo objcopy | sed -e $$t ; fi`
-
-CRT0 = crt0.o
-SIM_BSP = libsim.a
-SIM_OBJS = fstat.o \
-	   getpid.o \
-	   isatty.o \
-	   kill.o \
-	   putnum.o \
-	   sbrk.o \
-	   sim-close.o \
-	   sim-exit.o \
-	   sim-inbyte.o \
-	   sim-lseek.o \
-	   sim-open.o \
-	   sim-read.o \
-	   sim-time.o \
-	   sim-unlink.o \
-	   sim-write.o \
-	   stat.o
-
-#### Host specific Makefile fragment comes in here.
-@host_makefile_frag@
-
-all: $(CRT0) $(SIM_BSP)
-
-$(SIM_BSP): $(SIM_OBJS)
-	$(AR) $(ARFLAGS) $@ $?
-	$(RANLIB) $@
-
-fstat.o: $(srcdir)/fstat.c
-getpid.o: $(srcdir)/getpid.c
-isatty.o: $(srcdir)/isatty.c
-kill.o: $(srcdir)/kill.c
-putnum.o: $(srcdir)/putnum.c
-sbrk.o: $(srcdir)/sbrk.c
-sim-close.o: $(srcdir)/sim-close.S
-sim-exit.o: $(srcdir)/sim-exit.S
-sim-inbyte.o: $(srcdir)/sim-inbyte.c
-sim-lseek.o: $(srcdir)/sim-lseek.S
-sim-open.o: $(srcdir)/sim-open.S
-sim-read.o: $(srcdir)/sim-read.S
-sim-time.o: $(srcdir)/sim-time.c
-sim-unlink.o: $(srcdir)/sim-unlink.S
-sim-write.o: $(srcdir)/sim-write.S
-stat.o: $(srcdir)/stat.c
-
-install: $($(CPU)_INSTALL)
-	${mkinstalldirs} ${DESTDIR}${tooldir}/lib${MULTISUBDIR}
-	$(INSTALL_DATA) $(CRT0) $(DESTDIR)$(tooldir)/lib${MULTISUBDIR}/$(CRT0)
-	$(INSTALL_DATA) $(SIM_BSP) $(DESTDIR)$(tooldir)/lib${MULTISUBDIR}/$(SIM_BSP)
-
-clean mostlyclean:
-	rm -f *.o *.a
-
-distclean maintainer-clean realclean: clean
-	rm -f Makefile
-
-.PHONY: info dvi doc install-info clean-info
-info doc dvi:
-install-info:
-clean-info:
-
-Makefile: Makefile.in ../config.status
-	cd .. && $(SHELL) config.status
diff --git a/libgloss/frv/Makefile.inc b/libgloss/frv/Makefile.inc
new file mode 100644
index 000000000000..44a44b5c3fa5
--- /dev/null
+++ b/libgloss/frv/Makefile.inc
@@ -0,0 +1,33 @@ 
+## Copyright (c) 2002 Red Hat, Inc
+##
+## 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.
+
+multilibtool_DATA += %D%/crt0.o
+libobjs_a_SOURCES += %D%/crt0.S
+
+multilibtool_LIBRARIES += %D%/libsim.a
+%C%_libsim_a_SOURCES = \
+	%D%/fstat.c \
+	%D%/getpid.c \
+	%D%/isatty.c \
+	%D%/kill.c \
+	%D%/putnum.c \
+	%D%/sbrk.c \
+	%D%/sim-close.S \
+	%D%/sim-exit.S \
+	%D%/sim-inbyte.c \
+	%D%/sim-lseek.S \
+	%D%/sim-open.S \
+	%D%/sim-read.S \
+	%D%/sim-time.c \
+	%D%/sim-unlink.S \
+	%D%/sim-write.S \
+	%D%/stat.c