public inbox for newlib@sourceware.org
 help / color / mirror / Atom feed
From: Mike Frysinger <vapier@gentoo.org>
To: newlib@sourceware.org
Subject: [PATCH 5/5] libgloss: merge msp430 into top-level Makefile
Date: Tue, 26 Dec 2023 22:24:53 -0500	[thread overview]
Message-ID: <20231227032453.13546-5-vapier@gentoo.org> (raw)
In-Reply-To: <20231227032453.13546-1-vapier@gentoo.org>

Avoid a recursive make to speed things up a bit.
A msp430-elf build shows installed objects & libs produce same code.
---
 libgloss/Makefile.am         |   3 +
 libgloss/Makefile.in         | 259 +++++++++++++++++++++++++++--------
 libgloss/configure           |  19 ++-
 libgloss/configure.ac        |   7 +-
 libgloss/msp430/Makefile.in  | 166 ----------------------
 libgloss/msp430/Makefile.inc |  52 +++++++
 6 files changed, 276 insertions(+), 230 deletions(-)
 delete mode 100644 libgloss/msp430/Makefile.in
 create mode 100644 libgloss/msp430/Makefile.inc

diff --git a/libgloss/Makefile.am b/libgloss/Makefile.am
index 92da21efd2ef..6bfff4bd2e1e 100644
--- a/libgloss/Makefile.am
+++ b/libgloss/Makefile.am
@@ -96,6 +96,9 @@ endif
 if CONFIG_MOXIE
 include moxie/Makefile.inc
 endif
+if CONFIG_MSP430
+include msp430/Makefile.inc
+endif
 if CONFIG_NIOS2
 include nios2/Makefile.inc
 endif
diff --git a/libgloss/configure.ac b/libgloss/configure.ac
index bc4421393d5c..a3b191a71e18 100644
--- a/libgloss/configure.ac
+++ b/libgloss/configure.ac
@@ -200,8 +200,7 @@ case "${target}" in
 	subdirs="$subdirs m32c"
 	;;
   msp430-*-elf*)
-	AC_CONFIG_FILES([msp430/Makefile])
-	subdirs="$subdirs msp430"
+	config_msp430=true
 	config_libnosys=false
 	;;
   rl78*-*-elf)
@@ -247,8 +246,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 i960 iq2000 libnosys lm32 moxie nios2 riscv
-  v850 wince xtensa
+  aarch64 arc arm bfin csky d30v i960 iq2000 libnosys lm32 moxie msp430 nios2
+  riscv v850 wince xtensa
 ], [dnl
   AM_CONDITIONAL([CONFIG_]m4_toupper(SUBDIR), [test x$config_]SUBDIR = xtrue)
 ])
diff --git a/libgloss/msp430/Makefile.in b/libgloss/msp430/Makefile.in
deleted file mode 100644
index 62c8a280bcaa..000000000000
--- a/libgloss/msp430/Makefile.in
+++ /dev/null
@@ -1,166 +0,0 @@
-# Copyright (c) 2008-2014 Red Hat, Inc. All rights reserved.
-#
-# This copyrighted material is made available to anyone wishing to use, modify,
-# copy, or redistribute it subject to the terms and conditions of the BSD
-# License.   This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY expressed or implied, including the implied warranties
-# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  A copy of this license
-# is available at http://www.opensource.org/licenses. Any Red Hat trademarks that
-# are incorporated in the source code or documentation are not subject to the BSD
-# License and may only be used or replicated with the express permission of
-# Red Hat, Inc.
-
-# Makefile for libgloss/msp430.
-
-DESTDIR =
-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
-
-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)/msp430-sim.ld
-SCRIPTS += $(srcdir)/msp430xl-sim.ld
-SCRIPTS += $(srcdir)/intr_vectors.ld
-
-CRT = gcrt0.o crt0.o
-SIM_BSP = libsim.a
-LIB_NOSYS = libnosys.a
-LIB_CRT = libcrt.a
-
-SIM_OBJS = syscalls.o \
-	cio.o \
-	write.o \
-	unlink.o \
-	sbrk.o
-
-NOSYS_OBJS = ciosyscalls.o \
-	cio.o \
-	write.o \
-	unlink.o \
-	sbrk.o
-
-CRT_OBJS = \
-	crt_bss.o \
-	crt_high_bss.o \
-	crt_movedata.o \
-	crt_move_highdata.o \
-	crt_main.o \
-	crt_callexit.o \
-	crt_run_init_array.o \
-	crt_run_preinit_array.o \
-	crt_run_fini_array.o \
-	crt_run_array.o
-
-#### Host specific Makefile fragment comes in here.
-@host_makefile_frag@
-
-
-all: $(CRT) $(SIM_BSP) $(LIB_NOSYS) $(LIB_CRT) copy_scripts_to_objdir
-
-$(SIM_BSP): $(SIM_OBJS)
-	$(AR) $(ARFLAGS) $@ $?
-	$(RANLIB) $@
-
-$(LIB_NOSYS): $(NOSYS_OBJS)
-	$(AR) $(ARFLAGS) $@ $?
-	$(RANLIB) $@
-
-$(LIB_CRT): $(CRT_OBJS)
-	$(AR) $(ARFLAGS) $@ $?
-	$(RANLIB) $@
-
-copy_scripts_to_objdir: $(SCRIPTS)
-	cp $(SCRIPTS) $(objdir)
-
-# Dependencies
-
-SDEPS = $(srcdir)/cio.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) $(LIB_NOSYS) $(LIB_CRT) $(SCRIPTS)
-	mkdir -p $(DESTDIR)$(tooldir)/lib${MULTISUBDIR}
-	for c in $(CRT) $(SIM_BSP) $(LIB_NOSYS) $(LIB_CRT); 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/msp430/Makefile.inc b/libgloss/msp430/Makefile.inc
new file mode 100644
index 000000000000..38355343ad9f
--- /dev/null
+++ b/libgloss/msp430/Makefile.inc
@@ -0,0 +1,52 @@
+## Copyright (c) 2008-2014 Red Hat, Inc. All rights reserved.
+##
+## This copyrighted material is made available to anyone wishing to use, modify,
+## copy, or redistribute it subject to the terms and conditions of the BSD
+## License.   This program is distributed in the hope that it will be useful,
+## but WITHOUT ANY WARRANTY expressed or implied, including the implied warranties
+## of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  A copy of this license
+## is available at http://www.opensource.org/licenses. Any Red Hat trademarks that
+## are incorporated in the source code or documentation are not subject to the BSD
+## License and may only be used or replicated with the express permission of
+## Red Hat, Inc.
+
+multilibtool_DATA += \
+	%D%/msp430-sim.ld \
+	%D%/msp430xl-sim.ld \
+	%D%/intr_vectors.ld
+
+multilibtool_DATA += \
+	%D%/gcrt0.o \
+	%D%/crt0.o
+libobjs_a_SOURCES += \
+	%D%/gcrt0.S \
+	%D%/crt0.S
+
+multilibtool_LIBRARIES += %D%/libsim.a
+%C%_libsim_a_SOURCES = \
+	%D%/syscalls.S \
+	%D%/cio.S \
+	%D%/write.c \
+	%D%/unlink.c \
+	%D%/sbrk.c
+
+multilibtool_LIBRARIES += %D%/libnosys.a
+%C%_libnosys_a_SOURCES = \
+	%D%/ciosyscalls.S \
+	%D%/cio.S \
+	%D%/write.c \
+	%D%/unlink.c \
+	%D%/sbrk.c
+
+multilibtool_LIBRARIES += %D%/libcrt.a
+%C%_libcrt_a_SOURCES = \
+	%D%/crt_bss.S \
+	%D%/crt_high_bss.S \
+	%D%/crt_movedata.S \
+	%D%/crt_move_highdata.S \
+	%D%/crt_main.S \
+	%D%/crt_callexit.S \
+	%D%/crt_run_init_array.S \
+	%D%/crt_run_preinit_array.S \
+	%D%/crt_run_fini_array.S \
+	%D%/crt_run_array.S
-- 
2.43.0


      parent reply	other threads:[~2023-12-27  3:25 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-12-27  3:24 [PATCH 1/5] libgloss: msp430: delete outdated/wrong code Mike Frysinger
2023-12-27  3:24 ` [PATCH 2/5] libgloss: msp430: delete stub crt_init.o Mike Frysinger
2023-12-27  3:24 ` [PATCH 3/5] libgloss: msp430: split up crt0.S source Mike Frysinger
2023-12-27  3:24 ` [PATCH 4/5] libgloss: msp430: delete custom .S.o rule Mike Frysinger
2023-12-27  3:24 ` Mike Frysinger [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20231227032453.13546-5-vapier@gentoo.org \
    --to=vapier@gentoo.org \
    --cc=newlib@sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).