public inbox for newlib-cvs@sourceware.org
help / color / mirror / Atom feed
* [newlib-cygwin] newlib: separate out libg from libc
@ 2022-02-18 1:54 Michael Frysinger
0 siblings, 0 replies; only message in thread
From: Michael Frysinger @ 2022-02-18 1:54 UTC (permalink / raw)
To: newlib-cvs
https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;h=f2b053f49ed2bd7b4da8cf4ed3a608dc2f425c2b
commit f2b053f49ed2bd7b4da8cf4ed3a608dc2f425c2b
Author: Mike Frysinger <vapier@gentoo.org>
Date: Sun Feb 13 03:03:12 2022 -0500
newlib: separate out libg from libc
Make this a separate target from libc so that we can migrate libc over
to automake more easily. Having it integrated into the libc target is
difficult to handle when using automake rules which expect a one-to-one
mapping between names & inputs.
Diff:
---
newlib/Makefile.am | 12 +++++++++---
newlib/Makefile.in | 20 +++++++++++---------
2 files changed, 20 insertions(+), 12 deletions(-)
diff --git a/newlib/Makefile.am b/newlib/Makefile.am
index 6d3b60b33..3e4b824d7 100644
--- a/newlib/Makefile.am
+++ b/newlib/Makefile.am
@@ -4,6 +4,7 @@ AUTOMAKE_OPTIONS = dejagnu
ACLOCAL_AMFLAGS = -I . -I .. -I ../config
# Variables that will accumulate in subdirs.
+CLEANFILES =
PHONY =
SUFFIXES =
info_TEXINFOS =
@@ -70,6 +71,7 @@ noinst_DATA += stmp-targ-include
toollib_LIBRARIES = libm.a \
libc.a
+noinst_DATA += libg.a
if HAVE_MULTISUBDIR
BUILD_MULTISUBDIR = $(builddir)$(MULTISUBDIR)
if HAVE_CRT0
@@ -80,6 +82,8 @@ endif
toollib_DATA = $(CRT0) $(CRT1)
+CLEANFILES += libg.a
+
# The functions ldexp, frexp and modf are traditionally supplied in
# both libc.a and libm.a. We build them in libm.a and copy them over,
# along with some required supporting routines.
@@ -99,18 +103,20 @@ MATHOBJS_IN_LIBC = \
$(lpfx)s_copysign.o $(lpfx)sf_copysign.o
libc.a: libc/libc.a libm.a
- rm -rf libc.a libg.a tmp
+ rm -rf libc.a tmp
mkdir tmp
cd tmp; \
$(AR) x ../libm.a $(MATHOBJS_IN_LIBC) ; \
$(AR) x ../libc/libc.a ; \
$(AR) $(AR_FLAGS) ../$@ *.o
$(RANLIB) libc.a
- ln libc.a libg.a >/dev/null 2>/dev/null || cp libc.a libg.a
rm -rf tmp
libc/libc.a: ; @true
+libg.a: libc.a
+ $(AM_V_GEN)ln libc.a libg.a >/dev/null 2>/dev/null || cp libc.a libg.a
+
libm.a: libm/libm.a
rm -f $@
ln $< $@ >/dev/null 2>/dev/null || cp $< $@
@@ -247,7 +253,7 @@ stmp-targ-include: config.status
$(MAKE) targ-include/newlib.h
touch $@
-CLEANFILES = stmp-targ-include
+CLEANFILES += stmp-targ-include
## We hook install-multi because this Makefile doesn't have any exec targets,
## only data targets. If that ever changes, this should be removed and the
diff --git a/newlib/Makefile.in b/newlib/Makefile.in
index c952082bf..f26bb68b5 100644
--- a/newlib/Makefile.in
+++ b/newlib/Makefile.in
@@ -442,10 +442,16 @@ AUTOMAKE_OPTIONS = dejagnu
ACLOCAL_AMFLAGS = -I . -I .. -I ../config
# Variables that will accumulate in subdirs.
+CLEANFILES = libg.a stmp-targ-include libc/targetdep.tex \
+ libc/targetdep.tex.stamp $(LIBC_CHEWOUT_FILES) \
+ $(LIBC_DOCBOOK_OUT_FILES) libc/*.xml libc/*.xml.stamp libc/*.3 \
+ libm/targetdep.tex libm/targetdep.tex.stamp \
+ $(LIBM_CHEWOUT_FILES) $(LIBM_DOCBOOK_OUT_FILES) libm/*.xml \
+ libm/*.xml.stamp libm/*.3
PHONY = $(am__append_4)
SUFFIXES = $(am__append_5)
info_TEXINFOS = libc/libc.texi libm/libm.texi
-noinst_DATA = stmp-targ-include $(am__append_1) $(am__append_2) \
+noinst_DATA = stmp-targ-include libg.a $(am__append_1) $(am__append_2) \
$(am__append_3)
@NEWLIB_HW_FP_FALSE@MATHDIR = math
@@ -522,12 +528,6 @@ MATHOBJS_IN_LIBC = \
$(lpfx)s_finite.o $(lpfx)sf_finite.o \
$(lpfx)s_copysign.o $(lpfx)sf_copysign.o
-CLEANFILES = stmp-targ-include libc/targetdep.tex \
- libc/targetdep.tex.stamp $(LIBC_CHEWOUT_FILES) \
- $(LIBC_DOCBOOK_OUT_FILES) libc/*.xml libc/*.xml.stamp libc/*.3 \
- libm/targetdep.tex libm/targetdep.tex.stamp \
- $(LIBM_CHEWOUT_FILES) $(LIBM_DOCBOOK_OUT_FILES) libm/*.xml \
- libm/*.xml.stamp libm/*.3
CONFIG_STATUS_DEPENDENCIES = $(newlib_basedir)/configure.host
MULTISRCTOP =
MULTIBUILDTOP =
@@ -1396,18 +1396,20 @@ uninstall-am: uninstall-dvi-am uninstall-html-am uninstall-info-am \
libc.a: libc/libc.a libm.a
- rm -rf libc.a libg.a tmp
+ rm -rf libc.a tmp
mkdir tmp
cd tmp; \
$(AR) x ../libm.a $(MATHOBJS_IN_LIBC) ; \
$(AR) x ../libc/libc.a ; \
$(AR) $(AR_FLAGS) ../$@ *.o
$(RANLIB) libc.a
- ln libc.a libg.a >/dev/null 2>/dev/null || cp libc.a libg.a
rm -rf tmp
libc/libc.a: ; @true
+libg.a: libc.a
+ $(AM_V_GEN)ln libc.a libg.a >/dev/null 2>/dev/null || cp libc.a libg.a
+
libm.a: libm/libm.a
rm -f $@
ln $< $@ >/dev/null 2>/dev/null || cp $< $@
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2022-02-18 1:54 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-02-18 1:54 [newlib-cygwin] newlib: separate out libg from libc Michael Frysinger
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).