From 930bc1bdf54421f12c9373fed0754cd2451abe79 Mon Sep 17 00:00:00 2001 From: Mike Frysinger Date: Fri, 29 Dec 2023 21:24:58 -0500 Subject: [PATCH] libgloss: merge xc16x into top-level Makefile Avoid a recursive make to speed things up a bit. Untested as this target has never been merged into gcc. --- libgloss/Makefile.am | 3 + libgloss/config/xc16x.mt | 3 - libgloss/configure.ac | 6 +- libgloss/xc16x/Makefile.in | 145 ------------------------------------ libgloss/xc16x/Makefile.inc | 82 ++++++++++++++++++++ 5 files changed, 87 insertions(+), 152 deletions(-) delete mode 100644 libgloss/config/xc16x.mt delete mode 100644 libgloss/xc16x/Makefile.in create mode 100644 libgloss/xc16x/Makefile.inc diff --git a/libgloss/Makefile.am b/libgloss/Makefile.am index f69a3f1b8..6b27f15b0 100644 --- a/libgloss/Makefile.am +++ b/libgloss/Makefile.am @@ -180,6 +180,9 @@ endif if CONFIG_WINCE include wince/Makefile.inc endif +if CONFIG_XC16X +include xc16x/Makefile.inc +endif if CONFIG_XSTORMY16 include xstormy16/Makefile.inc endif diff --git a/libgloss/config/xc16x.mt b/libgloss/config/xc16x.mt deleted file mode 100644 index 2ac79cebc..000000000 --- a/libgloss/config/xc16x.mt +++ /dev/null @@ -1,3 +0,0 @@ -# Dummy target-specific Makefile fragment for XC16X. We can't -# use default.mt because it refers to generic source files whose -# names conflict with the XC16X-specific sources. diff --git a/libgloss/configure.ac b/libgloss/configure.ac index 17e98a2fa..98ff6d6e6 100644 --- a/libgloss/configure.ac +++ b/libgloss/configure.ac @@ -167,9 +167,7 @@ case "${target}" in config_testsuite=false ;; xc16x-*-*) - AC_CONFIG_FILES([xc16x/Makefile]) - subdirs="$subdirs xc16x" - target_makefile_frag=${srcdir}/config/xc16x.mt + config_xc16x=true ;; xstormy16-*-*) config_xstormy16=true @@ -228,7 +226,7 @@ m4_foreach_w([SUBDIR], [ libnosys lm32 m32r mcore microblaze mn10200 mn10300 moxie msp430 nds32 nios2 or1k riscv rl78 rx sparc sparc_leon tic6x v850 visium wince - xstormy16 xtensa + xc16x xstormy16 xtensa ], [dnl AM_CONDITIONAL([CONFIG_]m4_toupper(SUBDIR), [test x$config_]SUBDIR = xtrue) ]) diff --git a/libgloss/xc16x/Makefile.in b/libgloss/xc16x/Makefile.in deleted file mode 100644 index 5e2584e00..000000000 --- a/libgloss/xc16x/Makefile.in +++ /dev/null @@ -1,145 +0,0 @@ -# -# Copyright (C) 2006 KPIT Cummins -# Copyright (C) 2009 Conny Marco Menebröcker -# All rights reserved. -# -# Redistribution and use in source and binary forms is permitted -# provided that the above copyright notice and following paragraph are -# duplicated in all such forms. -# -# This file is distributed WITHOUT ANY WARRANTY; without even the implied -# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# - -DESTDIR = -VPATH = @srcdir@ -srcdir = @srcdir@ -objdir = . -srcroot = $(srcdir)/../.. -objroot = $(objdir)/../.. - -prefix = @prefix@ -exec_prefix = @exec_prefix@ - -host_alias = @host_alias@ -target_alias = @target_alias@ -program_transform_name = @program_transform_name@ - -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@ -AS = `if [ -f ${objroot}/../gas/as.new ] ; \ - then echo ${objroot}/../gas/as.new ; \ - else echo as ; fi` - -AR = @AR@ - -#LD = @LD@ -LD = `if [ -f ${objroot}/../ld/ld.new ] ; \ - then echo ${objroot}/../ld/ld.new ; \ - else echo ld ; fi` - -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` - -CRT0 = crt0.o - -# Generic object files common to all targets. -GENOBJS_NO_TRAP = close.o create.o crt0.o fstat.o getchar1.o \ - isatty.o lseek.o mem-layout.o misc.o open.o \ - read.o sbrk.o syscalls.o write.o -GENOBJS = ${GENOBJS_NO_TRAP} trap_handle.o - -# Object files specific to particular targets. -EVALOBJS = ${GENOBJS} -CYGMONOBJS = ${GENOBJS_NO_TRAP} - -CFLAGS = -g - -GCC_LDFLAGS = `if [ -d ${objroot}/../gcc ] ; \ - then echo -L${objroot}/../gcc ; fi` - -SCRIPTS = @script_list@ -BSP = @bsp_list@ - -# 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: ${CRT0} ${BSP} - -# -# here's where we build the board support packages for each target -# - -libeval.a: $(EVALOBJS) - ${AR} ${ARFLAGS} $@ $(EVALOBJS) - ${RANLIB} $@ - -libcygmon.a: $(CYGMONOBJS) - ${AR} ${ARFLAGS} $@ $(CYGMONOBJS) - ${RANLIB} $@ - - -doc: - -clean mostlyclean: - rm -f a.out core *.i *~ *.o *-test *.srec *.dis *.map *.x - -distclean maintainer-clean realclean: clean - rm -f Makefile config.status a.out - -.PHONY: install info install-info clean-info -install: - ${mkinstalldirs} ${DESTDIR}${tooldir}/lib${MULTISUBDIR} - @for crt in ${CRT0}; do \ - $(INSTALL_PROGRAM) $${crt} $(DESTDIR)$(tooldir)/lib${MULTISUBDIR}/$${crt}; \ - done - @for bsp in ${BSP}; do \ - $(INSTALL_PROGRAM) $${bsp} $(DESTDIR)$(tooldir)/lib${MULTISUBDIR}; \ - done - @for script in ${SCRIPTS}; do \ - $(INSTALL_DATA) ${srcdir}/$${script}.ld $(DESTDIR)$(tooldir)/lib${MULTISUBDIR}/$${script}.ld; \ - done - -info: -install-info: -clean-info: - -# these are for the BSPs -crt0.o: ${srcdir}/crt0.S - -# target specific makefile fragment comes in here. -@target_makefile_frag@ - -Makefile: Makefile.in ../config.status - cd .. && $(SHELL) config.status diff --git a/libgloss/xc16x/Makefile.inc b/libgloss/xc16x/Makefile.inc new file mode 100644 index 000000000..30bdb77e5 --- /dev/null +++ b/libgloss/xc16x/Makefile.inc @@ -0,0 +1,82 @@ +## Copyright (C) 2006 KPIT Cummins +## Copyright (C) 2009 Conny Marco Menebröcker +## All rights reserved. +## +## Redistribution and use in source and binary forms is permitted +## provided that the above copyright notice and following paragraph are +## duplicated in all such forms. +## +## This file is distributed WITHOUT ANY WARRANTY; without even the implied +## warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + +CRT0 = crt0.o + +# Generic object files common to all targets. +GENOBJS_NO_TRAP = close.o create.o crt0.o fstat.o getchar1.o \ + isatty.o lseek.o mem-layout.o misc.o open.o \ + read.o sbrk.o syscalls.o write.o +GENOBJS = ${GENOBJS_NO_TRAP} trap_handle.o + +# Object files specific to particular targets. +EVALOBJS = ${GENOBJS} +CYGMONOBJS = ${GENOBJS_NO_TRAP} + +SCRIPTS = @script_list@ +BSP = @bsp_list@ + +# 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: ${CRT0} ${BSP} + +# +# here's where we build the board support packages for each target +# + +libeval.a: $(EVALOBJS) + ${AR} ${ARFLAGS} $@ $(EVALOBJS) + ${RANLIB} $@ + +libcygmon.a: $(CYGMONOBJS) + ${AR} ${ARFLAGS} $@ $(CYGMONOBJS) + ${RANLIB} $@ + + +doc: + +clean mostlyclean: + rm -f a.out core *.i *~ *.o *-test *.srec *.dis *.map *.x + +distclean maintainer-clean realclean: clean + rm -f Makefile config.status a.out + +.PHONY: install info install-info clean-info +install: + ${mkinstalldirs} ${DESTDIR}${tooldir}/lib${MULTISUBDIR} + @for crt in ${CRT0}; do \ + $(INSTALL_PROGRAM) $${crt} $(DESTDIR)$(tooldir)/lib${MULTISUBDIR}/$${crt}; \ + done + @for bsp in ${BSP}; do \ + $(INSTALL_PROGRAM) $${bsp} $(DESTDIR)$(tooldir)/lib${MULTISUBDIR}; \ + done + @for script in ${SCRIPTS}; do \ + $(INSTALL_DATA) ${srcdir}/$${script}.ld $(DESTDIR)$(tooldir)/lib${MULTISUBDIR}/$${script}.ld; \ + done + +info: +install-info: +clean-info: + +# these are for the BSPs +crt0.o: ${srcdir}/crt0.S + +# target specific makefile fragment comes in here. +@target_makefile_frag@ + +Makefile: Makefile.in ../config.status + cd .. && $(SHELL) config.status