Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2023-12-27 09:05:23 +0300
committerMike Frysinger <vapier@gentoo.org>2024-01-20 04:26:52 +0300
commit770dd85aaf0aa2b986a1fe827abfb3e48f2d4a1b (patch)
tree20c18a8e2eec00a970610f042777405ebd1612ab /libgloss/visium
parent5798c3bbc783e83f6a144dd3148dd08d785dabdf (diff)
libgloss: merge visium into top-level Makefile
Avoid a recursive make to speed things up a bit. A visium-elf build shows installed objects & libs produce same code.
Diffstat (limited to 'libgloss/visium')
-rw-r--r--libgloss/visium/Makefile.in132
-rw-r--r--libgloss/visium/Makefile.inc53
-rw-r--r--libgloss/visium/sim-syscalls.c31
3 files changed, 84 insertions, 132 deletions
diff --git a/libgloss/visium/Makefile.in b/libgloss/visium/Makefile.in
deleted file mode 100644
index bc18b2951..000000000
--- a/libgloss/visium/Makefile.in
+++ /dev/null
@@ -1,132 +0,0 @@
-# Copyright (c) 1998 Cygnus Support
-#
-# The authors hereby grant permission to use, copy, modify, distribute,
-# and license this software and its documentation for any purpose, provided
-# that existing copyright notices are retained in all copies and that this
-# notice is included verbatim in any distributions. No written agreement,
-# license, or royalty fee is required for any of the authorized uses.
-# Modifications to this software may be copyrighted by their authors
-# and need not follow the licensing terms described here, provided that
-# the new terms are clearly indicated on the first page of each file where
-# they apply.
-
-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@
-
-AR = @AR@
-
-LD = @LD@
-
-RANLIB = @RANLIB@
-
-OBJDUMP = `t='$(program_transform_name)'; echo objdump | sed -e $$t`
-OBJCOPY = `t='$(program_transform_name)'; echo objcopy | sed -e $$t`
-
-# Generic object files common to some targets.
-# These are LIBGLOSS stubs and minimal functionality in SBRK, READ and WRITE.
-OBJS = close.o fstat.o getpid.o isatty.o kill.o lseek.o open.o \
- print.o putnum.o read.o stat.o unlink.o write.o
-
-# Object files specific to particular targets.
-SERIALOBJS = ${OBJS} _exit.o gettod.o sbrk.o serial-inbyte.o serial-outbyte.o
-
-# These go with the hosted file I/O libraries with a version of syscalls.
-HOSTEDOBJS = getpid.o kill.o io-gdb.o io-stubs.o sbrk.o
-
-SCRIPTS =
-BSP = crt0.o libserial.a libsim.a libdebug.a
-
-# Host specific makefile fragment comes in here.
-@host_makefile_frag@
-
-all: ${BSP}
-
-#
-# here's where we build the board support packages for each target
-#
-
-libserial.a: $(SERIALOBJS)
- $(AR) $(ARFLAGS) $@ $^
- $(RANLIB) $@
-
-libsim.a: ${HOSTEDOBJS} sim-syscalls.o
- ${AR} ${ARFLAGS} $@ $^
- ${RANLIB} $@
-
-libdebug.a: ${HOSTEDOBJS} debug-syscalls.o
- ${AR} ${ARFLAGS} $@ $^
- ${RANLIB} $@
-
-sim-syscalls.o: syscalls.c syscall.h io.h
- ${CC} ${CFLAGS_FOR_TARGET} ${CFLAGS} -DTARGET_SIM -c -o $@ $<
-
-debug-syscalls.o: syscalls.c syscall.h io.h
- ${CC} ${CFLAGS_FOR_TARGET} ${CFLAGS} -c -o $@ $<
-
-sbrk.o: $(srcdir)/sbrk.c
- ${CC} ${CFLAGS_FOR_TARGET} ${CFLAGS} -c -o $@ $<
-
-$(OBJS): %.o: ../%.c
- ${CC} ${CFLAGS_FOR_TARGET} ${CFLAGS} -c -o $@ $<
-
-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 bsp in ${BSP}; do\
- $(INSTALL_DATA) $${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:
-
-# target specific makefile fragment comes in here.
-@target_makefile_frag@
-
-Makefile: Makefile.in ../config.status
- cd .. && $(SHELL) config.status
diff --git a/libgloss/visium/Makefile.inc b/libgloss/visium/Makefile.inc
new file mode 100644
index 000000000..cd268c95b
--- /dev/null
+++ b/libgloss/visium/Makefile.inc
@@ -0,0 +1,53 @@
+## Copyright (c) 1998 Cygnus Support
+##
+## The authors hereby grant permission to use, copy, modify, distribute,
+## and license this software and its documentation for any purpose, provided
+## that existing copyright notices are retained in all copies and that this
+## notice is included verbatim in any distributions. No written agreement,
+## license, or royalty fee is required for any of the authorized uses.
+## Modifications to this software may be copyrighted by their authors
+## and need not follow the licensing terms described here, provided that
+## the new terms are clearly indicated on the first page of each file where
+## they apply.
+
+multilibtool_DATA += %D%/crt0.o
+libobjs_a_SOURCES += %D%/crt0.S
+
+## These go with the hosted file I/O libraries with a version of syscalls.
+%C%_hosted_sources = \
+ getpid.c \
+ kill.c \
+ %D%/io-gdb.c \
+ %D%/io-stubs.c \
+ %D%/sbrk.c
+
+multilibtool_LIBRARIES += %D%/libserial.a
+%C%_libserial_a_SOURCES = \
+ close.c \
+ fstat.c \
+ getpid.c \
+ isatty.c \
+ kill.c \
+ lseek.c \
+ open.c \
+ print.c \
+ putnum.c \
+ read.c \
+ stat.c \
+ unlink.c \
+ write.c \
+ %D%/_exit.c \
+ %D%/gettod.c \
+ %D%/sbrk.c \
+ %D%/serial-inbyte.c \
+ %D%/serial-outbyte.c
+
+multilibtool_LIBRARIES += %D%/libsim.a
+%C%_libsim_a_SOURCES = \
+ $(%C%_hosted_sources) \
+ %D%/sim-syscalls.c
+
+multilibtool_LIBRARIES += %D%/libdebug.a
+%C%_libdebug_a_SOURCES = \
+ $(%C%_hosted_sources) \
+ %D%/syscalls.c
diff --git a/libgloss/visium/sim-syscalls.c b/libgloss/visium/sim-syscalls.c
new file mode 100644
index 000000000..1a6bb3259
--- /dev/null
+++ b/libgloss/visium/sim-syscalls.c
@@ -0,0 +1,31 @@
+/* system calls for the Visium processor.
+
+ Copyright (c) 2015 Rolls-Royce Controls and Data Services Limited.
+ All rights reserved.
+
+ Redistribution and use in source and binary forms, with or without
+ modification, are permitted provided that the following conditions are met:
+
+ * Redistributions of source code must retain the above copyright notice,
+ this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright
+ notice, this list of conditions and the following disclaimer in the
+ documentation and/or other materials provided with the distribution.
+ * Neither the name of Rolls-Royce Controls and Data Services Limited nor
+ the names of its contributors may be used to endorse or promote products
+ derived from this software without specific prior written permission.
+
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+ LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+ THE POSSIBILITY OF SUCH DAMAGE. */
+
+#define TARGET_SIM
+#include "syscalls.c"