From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 1521) id 63ED13858D28; Wed, 9 Mar 2022 09:43:58 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 63ED13858D28 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable From: Michael Frysinger To: newlib-cvs@sourceware.org Subject: [newlib-cygwin] newlib: move nano-malloc logic from build to source files X-Act-Checkin: newlib-cygwin X-Git-Author: Mike Frysinger X-Git-Refname: refs/heads/master X-Git-Oldrev: 5fca4e0f180eec4e2507128f1ddf3cb2863f9939 X-Git-Newrev: d7b16b0576e0b1b9915d7b572c60e3e58d3614ea Message-Id: <20220309094358.63ED13858D28@sourceware.org> Date: Wed, 9 Mar 2022 09:43:58 +0000 (GMT) X-BeenThere: newlib-cvs@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Newlib GIT logs List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 09 Mar 2022 09:43:58 -0000 https://sourceware.org/git/gitweb.cgi?p=3Dnewlib-cygwin.git;h=3Dd7b16b0576e= 0b1b9915d7b572c60e3e58d3614ea commit d7b16b0576e0b1b9915d7b572c60e3e58d3614ea Author: Mike Frysinger Date: Mon Feb 28 23:46:52 2022 -0500 newlib: move nano-malloc logic from build to source files =20 Simplify the build system logic a bit by moving the mallocr.c -> nano-mallocr.c redirection from the Makefile to the source files. This allows for consistent object name usage regardless of the configuration options used in case a machine dir wants to define its own override. Diff: --- newlib/libc/stdlib/Makefile.am | 92 +++++++++++++++-----------------------= ---- newlib/libc/stdlib/Makefile.in | 88 +++++++++++++++-----------------------= -- newlib/libc/stdlib/mallocr.c | 3 ++ 3 files changed, 67 insertions(+), 116 deletions(-) diff --git a/newlib/libc/stdlib/Makefile.am b/newlib/libc/stdlib/Makefile.am index 50e22d90c..950ad98ac 100644 --- a/newlib/libc/stdlib/Makefile.am +++ b/newlib/libc/stdlib/Makefile.am @@ -83,34 +83,6 @@ GENERAL_SOURCES +=3D \ wcstold.c endif # HAVE_LONG_DOUBLE =20 -if NEWLIB_NANO_MALLOC -MALIGNR=3Dnano-malignr -MALLOPTR=3Dnano-malloptr -PVALLOCR=3Dnano-pvallocr -VALLOCR=3Dnano-vallocr -FREER=3Dnano-freer -REALLOCR=3Dnano-reallocr -CALLOCR=3Dnano-callocr -CFREER=3Dnano-cfreer -MALLINFOR=3Dnano-mallinfor -MALLSTATSR=3Dnano-mallstatsr -MSIZER=3Dnano-msizer -MALLOCR=3Dnano-mallocr -else -MALIGNR=3Dmalignr -MALLOPTR=3Dmalloptr -PVALLOCR=3Dpvallocr -VALLOCR=3Dvallocr -FREER=3Dfreer -REALLOCR=3Dreallocr -CALLOCR=3Dcallocr -CFREER=3Dcfreer -MALLINFOR=3Dmallinfor -MALLSTATSR=3Dmallstatsr -MSIZER=3Dmsizer -MALLOCR=3Dmallocr -endif - EXTENDED_SOURCES =3D \ arc4random.c \ arc4random_uniform.c \ @@ -162,10 +134,10 @@ ELIX_2_SOURCES =3D \ wctob.c =20 ELIX_2_OBJS =3D \ - $(lpfx)$(MALIGNR).o \ - $(lpfx)$(MALLOPTR).o \ - $(lpfx)$(PVALLOCR).o \ - $(lpfx)$(VALLOCR).o + $(lpfx)malignr.o \ + $(lpfx)malloptr.o \ + $(lpfx)pvallocr.o \ + $(lpfx)vallocr.o =20 ELIX_3_SOURCES =3D \ putenv.c \ @@ -196,10 +168,10 @@ endif endif =20 # Because of how libtool moves objects around, mallocr must be built last. -LIBADD_OBJS =3D $(lpfx)$(FREER).o $(lpfx)$(REALLOCR).o \ - $(lpfx)$(CALLOCR).o $(lpfx)$(CFREER).o \ - $(lpfx)$(MALLINFOR).o $(lpfx)$(MALLSTATSR).o \ - $(lpfx)$(MSIZER).o $(lpfx)$(MALLOCR).o +LIBADD_OBJS =3D $(lpfx)freer.o $(lpfx)reallocr.o \ + $(lpfx)callocr.o $(lpfx)cfreer.o \ + $(lpfx)mallinfor.o $(lpfx)mallstatsr.o \ + $(lpfx)msizer.o $(lpfx)mallocr.o =20 noinst_LIBRARIES =3D lib.a lib_a_SOURCES =3D $(GENERAL_SOURCES) $(EXTENDED_SOURCES) $(ELIX_SOURCES) @@ -208,41 +180,41 @@ lib_a_CFLAGS =3D $(AM_CFLAGS) lib_a_DEPENDENCIES =3D $(LIBADD_OBJS) $(ELIX_OBJS) LIB_COMPILE =3D $(AM_V_CC)$(COMPILE) =20 -$(lpfx)$(MALLOCR).o: $(MALLOCR).c - $(LIB_COMPILE) -DDEFINE_MALLOC -c $(srcdir)/$(MALLOCR).c -o $@ +$(lpfx)mallocr.o: mallocr.c + $(LIB_COMPILE) -DDEFINE_MALLOC -c $< -o $@ =20 -$(lpfx)$(FREER).o: $(MALLOCR).c - $(LIB_COMPILE) -DDEFINE_FREE -c $(srcdir)/$(MALLOCR).c -o $@ +$(lpfx)freer.o: mallocr.c + $(LIB_COMPILE) -DDEFINE_FREE -c $< -o $@ =20 -$(lpfx)$(REALLOCR).o: $(MALLOCR).c - $(LIB_COMPILE) -DDEFINE_REALLOC -c $(srcdir)/$(MALLOCR).c -o $@ +$(lpfx)reallocr.o: mallocr.c + $(LIB_COMPILE) -DDEFINE_REALLOC -c $< -o $@ =20 -$(lpfx)$(CALLOCR).o: $(MALLOCR).c - $(LIB_COMPILE) -DDEFINE_CALLOC -c $(srcdir)/$(MALLOCR).c -o $@ +$(lpfx)callocr.o: mallocr.c + $(LIB_COMPILE) -DDEFINE_CALLOC -c $< -o $@ =20 -$(lpfx)$(CFREER).o: $(MALLOCR).c - $(LIB_COMPILE) -DDEFINE_CFREE -c $(srcdir)/$(MALLOCR).c -o $@ +$(lpfx)cfreer.o: mallocr.c + $(LIB_COMPILE) -DDEFINE_CFREE -c $< -o $@ =20 -$(lpfx)$(MALIGNR).o: $(MALLOCR).c - $(LIB_COMPILE) -DDEFINE_MEMALIGN -c $(srcdir)/$(MALLOCR).c -o $@ +$(lpfx)malignr.o: mallocr.c + $(LIB_COMPILE) -DDEFINE_MEMALIGN -c $< -o $@ =20 -$(lpfx)$(VALLOCR).o: $(MALLOCR).c - $(LIB_COMPILE) -DDEFINE_VALLOC -c $(srcdir)/$(MALLOCR).c -o $@ +$(lpfx)vallocr.o: mallocr.c + $(LIB_COMPILE) -DDEFINE_VALLOC -c $< -o $@ =20 -$(lpfx)$(PVALLOCR).o: $(MALLOCR).c - $(LIB_COMPILE) -DDEFINE_PVALLOC -c $(srcdir)/$(MALLOCR).c -o $@ +$(lpfx)pvallocr.o: mallocr.c + $(LIB_COMPILE) -DDEFINE_PVALLOC -c $< -o $@ =20 -$(lpfx)$(MALLINFOR).o: $(MALLOCR).c - $(LIB_COMPILE) -DDEFINE_MALLINFO -c $(srcdir)/$(MALLOCR).c -o $@ +$(lpfx)mallinfor.o: mallocr.c + $(LIB_COMPILE) -DDEFINE_MALLINFO -c $< -o $@ =20 -$(lpfx)$(MALLSTATSR).o: $(MALLOCR).c - $(LIB_COMPILE) -DDEFINE_MALLOC_STATS -c $(srcdir)/$(MALLOCR).c -o $@ +$(lpfx)mallstatsr.o: mallocr.c + $(LIB_COMPILE) -DDEFINE_MALLOC_STATS -c $< -o $@ =20 -$(lpfx)$(MSIZER).o: $(MALLOCR).c - $(LIB_COMPILE) -DDEFINE_MALLOC_USABLE_SIZE -c $(srcdir)/$(MALLOCR).c -o $@ +$(lpfx)msizer.o: mallocr.c + $(LIB_COMPILE) -DDEFINE_MALLOC_USABLE_SIZE -c $< -o $@ =20 -$(lpfx)$(MALLOPTR).o: $(MALLOCR).c - $(LIB_COMPILE) -DDEFINE_MALLOPT -c $(srcdir)/$(MALLOCR).c -o $@ +$(lpfx)malloptr.o: mallocr.c + $(LIB_COMPILE) -DDEFINE_MALLOPT -c $< -o $@ =20 $(lpfx)dtoa.o: dtoa.c mprec.h $(lpfx)ldtoa.o: ldtoa.c mprec.h gdtoa.h diff --git a/newlib/libc/stdlib/Makefile.in b/newlib/libc/stdlib/Makefile.in index 9b873ef55..b201e0555 100644 --- a/newlib/libc/stdlib/Makefile.in +++ b/newlib/libc/stdlib/Makefile.in @@ -402,30 +402,6 @@ GENERAL_SOURCES =3D __adjust.c __atexit.c __call_atexi= t.c __exp10.c \ strtoimax.c strtol.c strtoul.c strtoumax.c utoa.c wcstod.c \ wcstoimax.c wcstol.c wcstoul.c wcstoumax.c wcstombs.c \ wcstombs_r.c wctomb.c wctomb_r.c $(am__append_1) -@NEWLIB_NANO_MALLOC_FALSE@MALIGNR =3D malignr -@NEWLIB_NANO_MALLOC_TRUE@MALIGNR =3D nano-malignr -@NEWLIB_NANO_MALLOC_FALSE@MALLOPTR =3D malloptr -@NEWLIB_NANO_MALLOC_TRUE@MALLOPTR =3D nano-malloptr -@NEWLIB_NANO_MALLOC_FALSE@PVALLOCR =3D pvallocr -@NEWLIB_NANO_MALLOC_TRUE@PVALLOCR =3D nano-pvallocr -@NEWLIB_NANO_MALLOC_FALSE@VALLOCR =3D vallocr -@NEWLIB_NANO_MALLOC_TRUE@VALLOCR =3D nano-vallocr -@NEWLIB_NANO_MALLOC_FALSE@FREER =3D freer -@NEWLIB_NANO_MALLOC_TRUE@FREER =3D nano-freer -@NEWLIB_NANO_MALLOC_FALSE@REALLOCR =3D reallocr -@NEWLIB_NANO_MALLOC_TRUE@REALLOCR =3D nano-reallocr -@NEWLIB_NANO_MALLOC_FALSE@CALLOCR =3D callocr -@NEWLIB_NANO_MALLOC_TRUE@CALLOCR =3D nano-callocr -@NEWLIB_NANO_MALLOC_FALSE@CFREER =3D cfreer -@NEWLIB_NANO_MALLOC_TRUE@CFREER =3D nano-cfreer -@NEWLIB_NANO_MALLOC_FALSE@MALLINFOR =3D mallinfor -@NEWLIB_NANO_MALLOC_TRUE@MALLINFOR =3D nano-mallinfor -@NEWLIB_NANO_MALLOC_FALSE@MALLSTATSR =3D mallstatsr -@NEWLIB_NANO_MALLOC_TRUE@MALLSTATSR =3D nano-mallstatsr -@NEWLIB_NANO_MALLOC_FALSE@MSIZER =3D msizer -@NEWLIB_NANO_MALLOC_TRUE@MSIZER =3D nano-msizer -@NEWLIB_NANO_MALLOC_FALSE@MALLOCR =3D mallocr -@NEWLIB_NANO_MALLOC_TRUE@MALLOCR =3D nano-mallocr EXTENDED_SOURCES =3D \ arc4random.c \ arc4random_uniform.c \ @@ -477,10 +453,10 @@ ELIX_2_SOURCES =3D \ wctob.c =20 ELIX_2_OBJS =3D \ - $(lpfx)$(MALIGNR).o \ - $(lpfx)$(MALLOPTR).o \ - $(lpfx)$(PVALLOCR).o \ - $(lpfx)$(VALLOCR).o + $(lpfx)malignr.o \ + $(lpfx)malloptr.o \ + $(lpfx)pvallocr.o \ + $(lpfx)vallocr.o =20 ELIX_3_SOURCES =3D \ putenv.c \ @@ -502,10 +478,10 @@ ELIX_4_SOURCES =3D \ @ELIX_LEVEL_1_TRUE@ELIX_OBJS =3D=20 =20 # Because of how libtool moves objects around, mallocr must be built last. -LIBADD_OBJS =3D $(lpfx)$(FREER).o $(lpfx)$(REALLOCR).o \ - $(lpfx)$(CALLOCR).o $(lpfx)$(CFREER).o \ - $(lpfx)$(MALLINFOR).o $(lpfx)$(MALLSTATSR).o \ - $(lpfx)$(MSIZER).o $(lpfx)$(MALLOCR).o +LIBADD_OBJS =3D $(lpfx)freer.o $(lpfx)reallocr.o \ + $(lpfx)callocr.o $(lpfx)cfreer.o \ + $(lpfx)mallinfor.o $(lpfx)mallstatsr.o \ + $(lpfx)msizer.o $(lpfx)mallocr.o =20 noinst_LIBRARIES =3D lib.a lib_a_SOURCES =3D $(GENERAL_SOURCES) $(EXTENDED_SOURCES) $(ELIX_SOURCES) @@ -1499,41 +1475,41 @@ uninstall-am: .PRECIOUS: Makefile =20 =20 -$(lpfx)$(MALLOCR).o: $(MALLOCR).c - $(LIB_COMPILE) -DDEFINE_MALLOC -c $(srcdir)/$(MALLOCR).c -o $@ +$(lpfx)mallocr.o: mallocr.c + $(LIB_COMPILE) -DDEFINE_MALLOC -c $< -o $@ =20 -$(lpfx)$(FREER).o: $(MALLOCR).c - $(LIB_COMPILE) -DDEFINE_FREE -c $(srcdir)/$(MALLOCR).c -o $@ +$(lpfx)freer.o: mallocr.c + $(LIB_COMPILE) -DDEFINE_FREE -c $< -o $@ =20 -$(lpfx)$(REALLOCR).o: $(MALLOCR).c - $(LIB_COMPILE) -DDEFINE_REALLOC -c $(srcdir)/$(MALLOCR).c -o $@ +$(lpfx)reallocr.o: mallocr.c + $(LIB_COMPILE) -DDEFINE_REALLOC -c $< -o $@ =20 -$(lpfx)$(CALLOCR).o: $(MALLOCR).c - $(LIB_COMPILE) -DDEFINE_CALLOC -c $(srcdir)/$(MALLOCR).c -o $@ +$(lpfx)callocr.o: mallocr.c + $(LIB_COMPILE) -DDEFINE_CALLOC -c $< -o $@ =20 -$(lpfx)$(CFREER).o: $(MALLOCR).c - $(LIB_COMPILE) -DDEFINE_CFREE -c $(srcdir)/$(MALLOCR).c -o $@ +$(lpfx)cfreer.o: mallocr.c + $(LIB_COMPILE) -DDEFINE_CFREE -c $< -o $@ =20 -$(lpfx)$(MALIGNR).o: $(MALLOCR).c - $(LIB_COMPILE) -DDEFINE_MEMALIGN -c $(srcdir)/$(MALLOCR).c -o $@ +$(lpfx)malignr.o: mallocr.c + $(LIB_COMPILE) -DDEFINE_MEMALIGN -c $< -o $@ =20 -$(lpfx)$(VALLOCR).o: $(MALLOCR).c - $(LIB_COMPILE) -DDEFINE_VALLOC -c $(srcdir)/$(MALLOCR).c -o $@ +$(lpfx)vallocr.o: mallocr.c + $(LIB_COMPILE) -DDEFINE_VALLOC -c $< -o $@ =20 -$(lpfx)$(PVALLOCR).o: $(MALLOCR).c - $(LIB_COMPILE) -DDEFINE_PVALLOC -c $(srcdir)/$(MALLOCR).c -o $@ +$(lpfx)pvallocr.o: mallocr.c + $(LIB_COMPILE) -DDEFINE_PVALLOC -c $< -o $@ =20 -$(lpfx)$(MALLINFOR).o: $(MALLOCR).c - $(LIB_COMPILE) -DDEFINE_MALLINFO -c $(srcdir)/$(MALLOCR).c -o $@ +$(lpfx)mallinfor.o: mallocr.c + $(LIB_COMPILE) -DDEFINE_MALLINFO -c $< -o $@ =20 -$(lpfx)$(MALLSTATSR).o: $(MALLOCR).c - $(LIB_COMPILE) -DDEFINE_MALLOC_STATS -c $(srcdir)/$(MALLOCR).c -o $@ +$(lpfx)mallstatsr.o: mallocr.c + $(LIB_COMPILE) -DDEFINE_MALLOC_STATS -c $< -o $@ =20 -$(lpfx)$(MSIZER).o: $(MALLOCR).c - $(LIB_COMPILE) -DDEFINE_MALLOC_USABLE_SIZE -c $(srcdir)/$(MALLOCR).c -o $@ +$(lpfx)msizer.o: mallocr.c + $(LIB_COMPILE) -DDEFINE_MALLOC_USABLE_SIZE -c $< -o $@ =20 -$(lpfx)$(MALLOPTR).o: $(MALLOCR).c - $(LIB_COMPILE) -DDEFINE_MALLOPT -c $(srcdir)/$(MALLOCR).c -o $@ +$(lpfx)malloptr.o: mallocr.c + $(LIB_COMPILE) -DDEFINE_MALLOPT -c $< -o $@ =20 $(lpfx)dtoa.o: dtoa.c mprec.h $(lpfx)ldtoa.o: ldtoa.c mprec.h gdtoa.h diff --git a/newlib/libc/stdlib/mallocr.c b/newlib/libc/stdlib/mallocr.c index 6167433c8..4b53997a3 100644 --- a/newlib/libc/stdlib/mallocr.c +++ b/newlib/libc/stdlib/mallocr.c @@ -1,5 +1,8 @@ +#include #ifdef MALLOC_PROVIDED int _dummy_mallocr =3D 1; +#elif defined(_NANO_MALLOC) +# include "nano-mallocr.c" #else /* ---------- To make a malloc.h, start cutting here ------------ */