public inbox for newlib@sourceware.org
 help / color / mirror / Atom feed
* [PATCH] libgloss: merge cr16 into top-level Makefile
@ 2024-01-21  4:50 Mike Frysinger
  2024-01-23  8:54 ` Corinna Vinschen
  0 siblings, 1 reply; 2+ messages in thread
From: Mike Frysinger @ 2024-01-21  4:50 UTC (permalink / raw)
  To: newlib

Avoid a recursive make to speed things up a bit.
A cr16-elf build shows installed objects & libs produce same code.

The test targets were dropped as they didn't actually work -- there
is no test.o rule in here.
---
 libgloss/Makefile.am       |   3 +
 libgloss/Makefile.in       | 634 +++++++++++++++++++++++--------------
 libgloss/configure         |  19 +-
 libgloss/configure.ac      |   5 +-
 libgloss/cr16/Makefile.in  | 158 ---------
 libgloss/cr16/Makefile.inc |  40 +++
 6 files changed, 455 insertions(+), 404 deletions(-)
 delete mode 100644 libgloss/cr16/Makefile.in
 create mode 100644 libgloss/cr16/Makefile.inc

diff --git a/libgloss/Makefile.am b/libgloss/Makefile.am
index 333ff846aea8..8210c2ecacbe 100644
--- a/libgloss/Makefile.am
+++ b/libgloss/Makefile.am
@@ -92,6 +92,9 @@ endif
 if CONFIG_BFIN
 include bfin/Makefile.inc
 endif
+if CONFIG_CR16
+include cr16/Makefile.inc
+endif
 if CONFIG_CSKY
 include csky/Makefile.inc
 endif
diff --git a/libgloss/configure.ac b/libgloss/configure.ac
index 55f4261d1ab8..594d2bfcb398 100644
--- a/libgloss/configure.ac
+++ b/libgloss/configure.ac
@@ -116,8 +116,7 @@ case "${target}" in
 	config_bfin=true
 	;;
   cr16-*-*)
-	AC_CONFIG_FILES([cr16/Makefile])
-	subdirs="$subdirs cr16"
+	config_cr16=true
 	;;
   cris-*-* | crisv32-*-*)
 	AC_CONFIG_FILES([cris/Makefile])
@@ -219,7 +218,7 @@ 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 fr30 frv ft32 i386 i960 iq2000
+  aarch64 arc arm bfin cr16 csky d30v epiphany fr30 frv ft32 i386 i960 iq2000
   libnosys lm32
   m32r mcore microblaze mn10200 mn10300 moxie msp430
   nds32 nios2 or1k riscv rl78 rx sparc sparc_leon tic6x v850 visium wince
diff --git a/libgloss/cr16/Makefile.in b/libgloss/cr16/Makefile.in
deleted file mode 100644
index 5416651880e8..000000000000
--- a/libgloss/cr16/Makefile.in
+++ /dev/null
@@ -1,158 +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`
-
-# Here is all of the handlers stuff
-H_SCRIPTS	=
-H_BSP	= libh.a
-H_OBJS	= intable.o dvz_hndl.o flg_hndl.o iad_hndl.o svc_hndl.o und_hndl.o
-H_TEST	= hndl-test
-H_INSTALL	= install-hndl
-
-# Here is all of the simulator stuff
-SIM_SCRIPTS	= sim.ld
-SIM_BSP	= libsim.a
-SIM_OBJS = _exit.o close.o _getenv.o lseek.o open.o read.o \
-	_rename.o sbrk.o time.o unlink.o write.o \
-	stat.o putnum.o kill.o getpid.o isatty.o fstat.o
-SIM_TEST	= sim-test
-SIM_INSTALL	= install-sim
-
-# Here is all of the CRT stuff
-CRT	= crti.o crtn.o crt1.o
-CRT_INSTALL = install-crt
-
-# 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: ${CRT} ${SIM_BSP} ${H_BSP}
-
-#
-# here's where we build the board support packages for each target
-#
-${H_BSP}: ${H_OBJS}
-	${AR} ${ARFLAGS} ${H_BSP} ${H_OBJS}
-	${RANLIB} ${H_BSP}
-
-${SIM_BSP}: ${SIM_OBJS}
-	${AR} ${ARFLAGS} ${SIM_BSP} ${SIM_OBJS}
-	${RANLIB} ${SIM_BSP}
-
-#
-# here's where we build the test programs for each target
-#
-.PHONY: test
-test:	${SIM_TEST} ${H_TEST} 
-
-hndl-test:	hndl-test.x hndl-test.dis
-
-hndl-test.x:	test.o ${H_BSP}
-	${CC} ${LDFLAGS_FOR_TARGET} -L${objdir} \
-	test.o \
-	-o hndl-test.x ${LIBS_FOR_TARGET} -lc ${H_BSP} -Wl,-T${SIM_SCRIPTS}
-
-hndl-test.dis:	hndl-test.x
-	${OBJDUMP} -d hndl-test.x > hndl-test.dis
-
-
-sim-test:	sim-test.x sim-test.dis
-
-sim-test.x:	test.o ${SIM_BSP}
-	${CC} ${LDFLAGS_FOR_TARGET} -L${objdir} \
-	test.o \
-	-o sim-test.x ${LIBS_FOR_TARGET} -lc ${SIM_BSP} -Wl,-T${SIM_SCRIPTS}
-
-sim-test.dis:	sim-test.x
-	${OBJDUMP} -d sim-test.x > sim-test.dis
-
-#
-#
-#
-.c.S:
-	${CC} ${CFLAGS_FOR_TARGET} -c $<
-
-clean mostlyclean:
-	rm -f a.out core *.i *.o *-test *.srec *.dis *.x $(SIM_BSP) $(H_BSP)
-
-distclean maintainer-clean realclean: clean
-	rm -f Makefile *~
-
-.PHONY: install info install-info clean-info
-install: ${CRT_INSTALL} ${SIM_INSTALL} ${H_INSTALL}
-
-install-crt:
-	${mkinstalldirs} ${DESTDIR}${tooldir}/lib${MULTISUBDIR}
-	set -e; for x in ${CRT} ; do\
-	  ${INSTALL_DATA} $$x $(DESTDIR)${tooldir}/lib${MULTISUBDIR}/$$x; \
-	done
-
-install-sim:
-	${mkinstalldirs} ${DESTDIR}${tooldir}/lib${MULTISUBDIR}
-	for x in ${SIM_BSP} ; do\
-	 ${INSTALL_PROGRAM} $${x} $(DESTDIR)${tooldir}/lib${MULTISUBDIR}/$$x; \
-	done
-	for x in ${SIM_SCRIPTS}; do\
-	 ${INSTALL_DATA} ${srcdir}/$${x} $(DESTDIR)${tooldir}/lib${MULTISUBDIR}/$$x; \
-	done
-
-install-hndl:
-	${mkinstalldirs} ${DESTDIR}${tooldir}/lib${MULTISUBDIR}
-	for x in ${H_BSP}; do\
-	 ${INSTALL_PROGRAM} $${x} $(DESTDIR)${tooldir}/lib${MULTISUBDIR}/$$x; \
-	done
-
-doc:
-info:
-install-info:
-clean-info:
-
-Makefile: Makefile.in ../config.status
-	cd .. && $(SHELL) config.status
diff --git a/libgloss/cr16/Makefile.inc b/libgloss/cr16/Makefile.inc
new file mode 100644
index 000000000000..d92302758f81
--- /dev/null
+++ b/libgloss/cr16/Makefile.inc
@@ -0,0 +1,40 @@
+multilibtool_DATA += \
+	%D%/crti.o \
+	%D%/crtn.o \
+	%D%/crt1.o
+libobjs_a_SOURCES += \
+	%D%/crti.S \
+	%D%/crtn.S \
+	%D%/crt1.S
+
+multilibtool_LIBRARIES += %D%/libh.a
+%C%_libh_a_SOURCES = \
+	%D%/intable.c \
+	%D%/dvz_hndl.c \
+	%D%/flg_hndl.c \
+	%D%/iad_hndl.c \
+	%D%/svc_hndl.c \
+	%D%/und_hndl.c
+
+multilibtool_DATA += \
+	%D%/sim.ld
+
+multilibtool_LIBRARIES += %D%/libsim.a
+%C%_libsim_a_SOURCES = \
+	%D%/_exit.c \
+	%D%/close.c \
+	%D%/_getenv.c \
+	%D%/lseek.c \
+	%D%/open.c \
+	%D%/read.c \
+	%D%/_rename.c \
+	%D%/sbrk.c \
+	%D%/time.c \
+	%D%/unlink.c \
+	%D%/write.c \
+	%D%/stat.c \
+	%D%/putnum.c \
+	%D%/kill.c \
+	%D%/getpid.c \
+	%D%/isatty.c \
+	%D%/fstat.c
-- 
2.43.0


^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [PATCH] libgloss: merge cr16 into top-level Makefile
  2024-01-21  4:50 [PATCH] libgloss: merge cr16 into top-level Makefile Mike Frysinger
@ 2024-01-23  8:54 ` Corinna Vinschen
  0 siblings, 0 replies; 2+ messages in thread
From: Corinna Vinschen @ 2024-01-23  8:54 UTC (permalink / raw)
  To: newlib

On Jan 20 23:50, Mike Frysinger wrote:
> Avoid a recursive make to speed things up a bit.
> A cr16-elf build shows installed objects & libs produce same code.
> 
> The test targets were dropped as they didn't actually work -- there
> is no test.o rule in here.
> ---
>  libgloss/Makefile.am       |   3 +
>  libgloss/Makefile.in       | 634 +++++++++++++++++++++++--------------
>  libgloss/configure         |  19 +-
>  libgloss/configure.ac      |   5 +-
>  libgloss/cr16/Makefile.in  | 158 ---------
>  libgloss/cr16/Makefile.inc |  40 +++
>  6 files changed, 455 insertions(+), 404 deletions(-)
>  delete mode 100644 libgloss/cr16/Makefile.in
>  create mode 100644 libgloss/cr16/Makefile.inc

Please go ahead, Mike.


Thanks,
Corinna


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2024-01-23  8:54 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-01-21  4:50 [PATCH] libgloss: merge cr16 into top-level Makefile Mike Frysinger
2024-01-23  8:54 ` Corinna Vinschen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).