[PATCH] libgloss: merge rx into top-level Makefile

Mike Frysinger <[email protected]>
Newsgroups gmane.comp.lib.newlib
Message-ID <[email protected]>
Avoid a recursive make to speed things up a bit.
A rx-elf build shows installed objects & libs produce same code.
---
 libgloss/Makefile.am     |   3 +
 libgloss/Makefile.in     | 249 ++++++++++++++++++++++++++++++---------
 libgloss/configure       |  19 ++-
 libgloss/configure.ac    |   5 +-
 libgloss/rx/Makefile.in  | 164 --------------------------
 libgloss/rx/Makefile.inc |  54 +++++++++
 6 files changed, 265 insertions(+), 229 deletions(-)
 delete mode 100644 libgloss/rx/Makefile.in
 create mode 100644 libgloss/rx/Makefile.inc

diff --git a/libgloss/Makefile.am b/libgloss/Makefile.am
index a877e402aff7..144c4b68c4f3 100644
--- a/libgloss/Makefile.am
+++ b/libgloss/Makefile.am
@@ -123,6 +123,9 @@ endif
 if CONFIG_RISCV
 include riscv/Makefile.inc
 endif
+if CONFIG_RX
+include rx/Makefile.inc
+endif
 if CONFIG_WINCE
 include wince/Makefile.inc
 endif
diff --git a/libgloss/configure.ac b/libgloss/configure.ac
index 0ebc9b75b2fc..6d16936fbc1d 100644
--- a/libgloss/configure.ac
+++ b/libgloss/configure.ac
@@ -199,8 +199,7 @@ case "${target}" in
 	subdirs="$subdirs rl78"
 	;;
   rx*-*-elf)
-	AC_CONFIG_FILES([rx/Makefile])
-	subdirs="$subdirs rx"
+	config_rx=true
 	;;
   arm*-*-elf | arm*-*-coff | arm*-*-*)
 	config_arm=true
@@ -239,7 +238,7 @@ dnl the ports above will too!
 m4_foreach_w([SUBDIR], [
   aarch64 arc arm bfin csky d30v frv i386 i960 iq2000 libnosys lm32
   mcore mn10200 mn10300 moxie msp430
-  nds32 nios2 riscv v850 wince xstormy16 xtensa
+  nds32 nios2 riscv rx v850 wince xstormy16 xtensa
 ], [dnl
   AM_CONDITIONAL([CONFIG_]m4_toupper(SUBDIR), [test x$config_]SUBDIR = xtrue)
 ])
diff --git a/libgloss/rx/Makefile.in b/libgloss/rx/Makefile.in
deleted file mode 100644
index d730451bcdf4..000000000000
--- a/libgloss/rx/Makefile.in
+++ /dev/null
@@ -1,164 +0,0 @@
-# Copyright (c) 2008, 2009 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/rx.
-
-VPATH = @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`
-
-SCRIPTS = $(srcdir)/rx.ld $(srcdir)/rx-sim.ld
-CRT = gcrt0.o crt0.o crtn.o
-SIM_BSP = libsim.a
-LIBNOSYS = ../libnosys/libnosys.a
-SIM_OBJS = \
-	sbrk.o \
-	heaptop.o \
-	exit.o \
-	open.o \
-	close.o \
-	read.o \
-	write.o \
-	lseek.o \
-	unlink.o \
-	getpid.o \
-	kill.o \
-	fstat.o \
-	argvlen.o \
-	argv.o \
-	chdir.o \
-	stat.o \
-	chmod.o \
-	utime.o \
-	time.o \
-	gettimeofday.o \
-	times.o \
-	link.o \
-	isatty.o \
-	abort.o \
-	mcount.o \
-	sigprocmask.o \
-	sleep.o
-
-#### Host specific Makefile fragment comes in here.
-@host_makefile_frag@
-
-
-# Override .S.o rule to pass assembler debugging flags
-.S.o:
-	$(CC) -Wa,-gdwarf2 -Wa,-I$(srcdir) $(CFLAGS_FOR_TARGET) $(INCLUDES) $(CFLAGS) -c $<
-
-all: $(CRT) $(SIM_BSP) copy_scripts_to_objdir
-
-$(SIM_BSP): $(SIM_OBJS)
-	$(AR) $(ARFLAGS) $@ $?
-	$(RANLIB) $@
-
-copy_scripts_to_objdir: $(SCRIPTS)
-	cp $(SCRIPTS) $(objdir)
-
-# Dependencies
-
-SDEPS = $(srcdir)/rxsys.h $(srcdir)/../syscall.h
-
-abort.o : $(SDEPS)
-argv.o : $(SDEPS)
-argvlen.o : $(SDEPS)
-chdir.o : $(SDEPS)
-chmod.o : $(SDEPS)
-close.o : $(SDEPS)
-exit.o : $(SDEPS)
-fstat.o : $(SDEPS)
-getpid.o : $(SDEPS)
-gettimeofday.o : $(SDEPS)
-gcrt0.o: gcrt0.S crt0.S
-heaptop.o : $(SDEPS)
-kill.o : $(SDEPS)
-link.o : $(SDEPS)
-lseek.o : $(SDEPS)
-mcount.o : $(SDEPS)
-open.o : $(SDEPS)
-read.o : $(SDEPS)
-sigprocmask.o : $(SDEPS)
-sleep.o : $(SDEPS)
-stat.o : $(SDEPS)
-time.o : $(SDEPS)
-times.o : $(SDEPS)
-unlink.o : $(SDEPS)
-utime.o : $(SDEPS)
-write.o : $(SDEPS)
-
-install: $(CRT) $(SIM_BSP) $(SCRIPTS)
-	${mkinstalldirs} ${DESTDIR}${tooldir}/lib${MULTISUBDIR}
-	for c in $(CRT) $(SIM_BSP); do \
-	  $(INSTALL_DATA) $$c $(DESTDIR)$(tooldir)/lib${MULTISUBDIR}/$$c ;\
-	done
-	for c in $(SCRIPTS); do \
-	  b=`basename $$c`; \
-	  $(INSTALL_DATA) $$c $(DESTDIR)$(tooldir)/lib${MULTISUBDIR}/$$b ;\
-	done
-
-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/rx/Makefile.inc b/libgloss/rx/Makefile.inc
new file mode 100644
index 000000000000..3ca121fd755f
--- /dev/null
+++ b/libgloss/rx/Makefile.inc
@@ -0,0 +1,54 @@
+## Copyright (c) 2008, 2009 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%/rx.ld \
+	%D%/rx-sim.ld
+
+multilibtool_DATA += \
+	%D%/gcrt0.o \
+	%D%/crt0.o \
+	%D%/crtn.o
+libobjs_a_SOURCES += \
+	%D%/gcrt0.S \
+	%D%/crt0.S \
+	%D%/crtn.S
+
+multilibtool_LIBRARIES += %D%/libsim.a
+%C%_libsim_a_SOURCES = \
+	%D%/sbrk.c \
+	%D%/heaptop.S \
+	%D%/exit.S \
+	%D%/open.S \
+	%D%/close.S \
+	%D%/read.S \
+	%D%/write.S \
+	%D%/lseek.S \
+	%D%/unlink.S \
+	%D%/getpid.S \
+	%D%/kill.S \
+	%D%/fstat.S \
+	%D%/argvlen.S \
+	%D%/argv.S \
+	%D%/chdir.S \
+	%D%/stat.S \
+	%D%/chmod.S \
+	%D%/utime.S \
+	%D%/time.S \
+	%D%/gettimeofday.S \
+	%D%/times.S \
+	%D%/link.S \
+	%D%/isatty.S \
+	%D%/abort.S \
+	%D%/mcount.c \
+	%D%/sigprocmask.S \
+	%D%/sleep.S
-- 
2.43.0
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.