Re: [PATCH] libgloss: merge fr30 into top-level Makefile
Jeff Johnston <[email protected]>
| Newsgroups | gmane.comp.lib.newlib |
|---|---|
| Message-ID | <CAOox84sVx=6BULZiDg9bNNh=gtp2vP87-yStUgGkOcLNRGfExA@mail.gmail.com> |
Please feel free to merge this and any other moves to top-level Makefile. -- Jeff J. On Fri, Dec 29, 2023 at 12:13 AM Mike Frysinger <[email protected]> wrote: > 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 > >