[PATCH] libgloss: merge fr30 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 fr30-elf build shows installed objects & libs produce same code.

A lot of code seems like it hasn't been migrated, but that's because
it's all disabled/unused (i.e. all the test & mon code).  It looks
like a lot of copy & paste holdovers from the original port.
---
 libgloss/Makefile.am       |   3 +
 libgloss/Makefile.in       | 393 ++++++++++++++++++++-----------------
 libgloss/configure         |  19 +-
 libgloss/configure.ac      |   6 +-
 libgloss/fr30/Makefile.in  | 145 --------------
 libgloss/fr30/Makefile.inc |   8 +
 6 files changed, 241 insertions(+), 333 deletions(-)
 delete mode 100644 libgloss/fr30/Makefile.in
 create mode 100644 libgloss/fr30/Makefile.inc

diff --git a/libgloss/Makefile.am b/libgloss/Makefile.am
index e685be708abe..abd1fbbd1651 100644
--- a/libgloss/Makefile.am
+++ b/libgloss/Makefile.am
@@ -84,6 +84,9 @@ endif
 if CONFIG_EPIPHANY
 include epiphany/Makefile.inc
 endif
+if CONFIG_FR30
+include fr30/Makefile.inc
+endif
 if CONFIG_FRV
 include frv/Makefile.inc
 endif
diff --git a/libgloss/configure.ac b/libgloss/configure.ac
index 165e56b48237..30f4eea61d4f 100644
--- a/libgloss/configure.ac
+++ b/libgloss/configure.ac
@@ -133,8 +133,7 @@ case "${target}" in
 	config_d30v=true
 	;;
   fr30-*-*)
-	AC_CONFIG_FILES([fr30/Makefile])
-	subdirs="$subdirs fr30"
+	config_fr30=true
 	;;
   frv*-*-*)
 	config_frv=true
@@ -230,7 +229,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 epiphany frv i386 i960 iq2000 libnosys lm32
+  aarch64 arc arm bfin csky d30v epiphany fr30 frv i386 i960 iq2000
+  libnosys lm32
   m32r mcore mn10200 mn10300 moxie msp430
   nds32 nios2 or1k riscv rl78 rx v850 visium wince xstormy16 xtensa
 ], [dnl
diff --git a/libgloss/fr30/Makefile.in b/libgloss/fr30/Makefile.in
deleted file mode 100644
index 4c988efb7488..000000000000
--- a/libgloss/fr30/Makefile.in
+++ /dev/null
@@ -1,145 +0,0 @@
-#
-#
-
-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)
-
-INSTALL = @INSTALL@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_DATA = @INSTALL_DATA@
-
-# Multilib support variables.
-# TOP is used instead of MULTI{BUILD,SRC}TOP.
-MULTIDIRS =
-MULTISUBDIR =
-
-SHELL =	/bin/sh
-
-mkinstalldirs = $(SHELL) $(srcroot)/mkinstalldirs
-
-CC = @CC@
-
-AS = @AS@
-AR = @AR@
-LD = @LD@
-RANLIB = @RANLIB@
-
-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`
-
-OBJS		= putnum.o unlink.o
-CFLAGS		= -g
-SCRIPTS		= 
-
-# Here is all of the simulator stuff
-SIM_SCRIPTS	=
-SIM_LDFLAGS	=
-SIM_BSP		= libsim.a
-SIM_CRT0	= crt0.o
-SIM_OBJS	= syscalls.o
-SIM_TEST	= sim-test
-SIM_INSTALL	= install-sim
-
-# Here is all of the mon960 stuff
-MON_LDFLAGS	=
-MON_BSP		= libmon960.a
-MON_CRT0	= crt0.o
-MON_OBJS	= 
-MON_SCRIPTS	= mon960.ld
-MON_TEST	=
-MON_INSTALL	= install-mon
-
-# Host specific makefile fragment comes in here.
-@host_makefile_frag@
-
-#
-# build a test program for each target board. Just trying to get
-# it to link is a good test, so we ignore all the errors for now.
-#
-# all: ${MON_CRT0} ${MON_BSP}
-all: ${SIM_CRT0} ${SIM_BSP}
-
-#
-# here's where we build the board support packages for each target
-#
-${SIM_BSP}: ${OBJS} ${SIM_OBJS}
-	${AR} ${ARFLAGS} ${SIM_BSP} ${SIM_OBJS} ${OBJS}
-	${RANLIB} ${SIM_BSP}
-
-${MON_BSP}: ${OBJS} ${MON_OBJS}
-	${AR} ${ARFLAGS} ${MON_BSP} ${MON_OBJS} ${OBJS}
-	${RANLIB} ${MON_BSP}
-
-#
-# here's where we build the test programs for each target
-#
-.PHONY: test
-test:	${SIM_TEST} ${MVME_TEST} ${EVM_TEST} 
-
-sim-test:	sim-test.x sim-test.dis
-
-sim-test.x:	test.o ${SIM_CRT0} ${SIM_BSP}
-	${CC} ${LDFLAGS_FOR_TARGET} -L${objdir} \
-	${SIM_CRT0} test.o \
-	-o sim-test.x ${LIBS_FOR_TARGET} -lc ${SIM_BSP}
-
-sim-test.dis:	sim-test.x
-	${OBJDUMP} -d sim-test.x > sim-test.dis
-
-
-#
-#
-#
-.c.S:
-	${CC} ${CFLAGS_FOR_TARGET} -c $<
-
-simulator.o: simulator.S
-sim-crt0.o: sim-crt0.S
-mvme-crt0.o: mvme-crt0.S
-mvme-exit.o: mvme-exit.S
-mvme-inbyte.o: mvme-inbyte.S
-mvme-outbyte.o: mvme-outbyte.S
-
-clean mostlyclean:
-	rm -f a.out core *.i *.o *-test *.srec *.dis *.x $(SIM_BSP) $(MON_BSP)
-
-distclean maintainer-clean realclean: clean
-	rm -f Makefile *~
-
-.PHONY: install info install-info clean-info
-install: ${SIM_INSTALL}
-
-install-mon:
-	${mkinstalldirs} ${DESTDIR}${tooldir}/lib${MULTISUBDIR}
-	set -e; for x in ${MON_CRT0} ${MON_BSP}; do ${INSTALL_DATA} $$x $(DESTDIR)${tooldir}/lib${MULTISUBDIR}/$$x; done
-	set -e; for x in ${MON_SCRIPTS}; do ${INSTALL_DATA} ${srcdir}/$$x $(DESTDIR)${tooldir}/lib${MULTISUBDIR}/$$x; done
-
-install-sim:
-	${mkinstalldirs} ${DESTDIR}${tooldir}/lib
-	set -e; for x in ${SIM_CRT0} ${SIM_BSP} ${SIM_SCRIPTS}; do ${INSTALL_DATA} $$x $(DESTDIR)${tooldir}/lib/$$x; done
-
-doc:
-info:
-install-info:
-clean-info:
-
-Makefile: Makefile.in ../config.status
-	cd .. && $(SHELL) config.status
diff --git a/libgloss/fr30/Makefile.inc b/libgloss/fr30/Makefile.inc
new file mode 100644
index 000000000000..0ba7476c3f31
--- /dev/null
+++ b/libgloss/fr30/Makefile.inc
@@ -0,0 +1,8 @@
+multilibtool_DATA += %D%/crt0.o
+libobjs_a_SOURCES += %D%/crt0.s
+
+multilibtool_LIBRARIES += %D%/libsim.a
+%C%_libsim_a_SOURCES = \
+	%D%/syscalls.c \
+	putnum.c \
+	unlink.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.