[PATCH] libgloss: merge rl78 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 rl78-elf build shows installed objects & libs produce same code.
---
 libgloss/Makefile.am       |   3 +
 libgloss/Makefile.in       | 281 ++++++++++++++++++++++++++++---------
 libgloss/configure         |  19 ++-
 libgloss/configure.ac      |   5 +-
 libgloss/rl78/Makefile.in  | 161 ---------------------
 libgloss/rl78/Makefile.inc |  52 +++++++
 6 files changed, 288 insertions(+), 233 deletions(-)
 delete mode 100644 libgloss/rl78/Makefile.in
 create mode 100644 libgloss/rl78/Makefile.inc

diff --git a/libgloss/Makefile.am b/libgloss/Makefile.am
index 144c4b68c4f3..b2aaada002d5 100644
--- a/libgloss/Makefile.am
+++ b/libgloss/Makefile.am
@@ -123,6 +123,9 @@ endif
 if CONFIG_RISCV
 include riscv/Makefile.inc
 endif
+if CONFIG_RL78
+include rl78/Makefile.inc
+endif
 if CONFIG_RX
 include rx/Makefile.inc
 endif
diff --git a/libgloss/configure.ac b/libgloss/configure.ac
index 6d16936fbc1d..5518199aa6a9 100644
--- a/libgloss/configure.ac
+++ b/libgloss/configure.ac
@@ -195,8 +195,7 @@ case "${target}" in
 	config_libnosys=false
 	;;
   rl78*-*-elf)
-	AC_CONFIG_FILES([rl78/Makefile])
-	subdirs="$subdirs rl78"
+	config_rl78=true
 	;;
   rx*-*-elf)
 	config_rx=true
@@ -238,7 +237,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 rx v850 wince xstormy16 xtensa
+  nds32 nios2 riscv rl78 rx v850 wince xstormy16 xtensa
 ], [dnl
   AM_CONDITIONAL([CONFIG_]m4_toupper(SUBDIR), [test x$config_]SUBDIR = xtrue)
 ])
diff --git a/libgloss/rl78/Makefile.in b/libgloss/rl78/Makefile.in
deleted file mode 100644
index eb220f61ae43..000000000000
--- a/libgloss/rl78/Makefile.in
+++ /dev/null
@@ -1,161 +0,0 @@
-# Copyright (c) 2008, 2009, 2011 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/rl78.
-
-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)/rl78.ld $(srcdir)/rl78-sim.ld
-CRT = gcrt0.o crt0.o crtn.o
-SIM_BSP = libsim.a
-LIBNOSYS = ../libnosys/libnosys.a
-SIM_OBJS = \
-	sbrk.o \
-	exit.o \
-	open.o \
-	close.o \
-	read.o \
-	write.o \
-	swrite.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
-
-#### 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)/rl78-sys.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
-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/rl78/Makefile.inc b/libgloss/rl78/Makefile.inc
new file mode 100644
index 000000000000..44210f12a0c4
--- /dev/null
+++ b/libgloss/rl78/Makefile.inc
@@ -0,0 +1,52 @@
+## Copyright (c) 2008, 2009, 2011 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%/rl78.ld \
+	%D%/rl78-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%/exit.S \
+	%D%/open.S \
+	%D%/close.S \
+	%D%/read.S \
+	%D%/write.c \
+	%D%/swrite.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
-- 
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.