newlib: xstormy16: fix mallopt definition & mstats handling
The mallopt symbol is defined in tiny-malloc.c, not mallocr.c, but the Makefile in here tries to compile it out of the latter. This leads to mallopt never being defined. The build also creates mallinfo.o & mallopt.o & mallstats.o objects to override common ones, but the common dir doesn't use these names. Instead, it places these all in mstats.o. So move the build define logic to a dedicated file and compile it directly to make things a bit simpler while fixing the missing func and aligning objects with the cmomon code.
This commit is contained in:
parent
b1743c94e2
commit
5cd957ff66
|
@ -6,7 +6,8 @@ AM_CCASFLAGS = $(AM_CPPFLAGS)
|
|||
|
||||
noinst_LIBRARIES = lib.a
|
||||
|
||||
lib_a_SOURCES = setjmp.S
|
||||
lib_a_SOURCES = setjmp.S \
|
||||
mstats.c
|
||||
lib_a_CFLAGS = $(AM_CFLAGS)
|
||||
|
||||
lib_a_LIBADD = $(lpfx)malloc.o \
|
||||
|
@ -17,10 +18,7 @@ lib_a_LIBADD = $(lpfx)malloc.o \
|
|||
$(lpfx)malign.o \
|
||||
$(lpfx)valloc.o \
|
||||
$(lpfx)pvalloc.o \
|
||||
$(lpfx)mallinfo.o \
|
||||
$(lpfx)mallstats.o \
|
||||
$(lpfx)msize.o \
|
||||
$(lpfx)mallopt.o \
|
||||
$(lpfx)mallocr.o \
|
||||
$(lpfx)freer.o \
|
||||
$(lpfx)reallocr.o \
|
||||
|
@ -54,18 +52,9 @@ $(lpfx)valloc.o: tiny-malloc.c
|
|||
$(lpfx)pvalloc.o: tiny-malloc.c
|
||||
$(MALLOC_COMPILE) -DDEFINE_PVALLOC -c $(srcdir)/tiny-malloc.c -o $@
|
||||
|
||||
$(lpfx)mallinfo.o: tiny-malloc.c
|
||||
$(MALLOC_COMPILE) -DDEFINE_MALLINFO -c $(srcdir)/tiny-malloc.c -o $@
|
||||
|
||||
$(lpfx)mallstats.o: tiny-malloc.c
|
||||
$(MALLOC_COMPILE) -DDEFINE_MALLOC_STATS -c $(srcdir)/tiny-malloc.c -o $@
|
||||
|
||||
$(lpfx)msize.o: tiny-malloc.c
|
||||
$(MALLOC_COMPILE) -DDEFINE_MALLOC_USABLE_SIZE -c $(srcdir)/tiny-malloc.c -o $@
|
||||
|
||||
$(lpfx)mallopt.o: mallocr.c
|
||||
$(MALLOC_COMPILE) -DDEFINE_MALLOPT -c $(srcdir)/mallocr.c -o $@
|
||||
|
||||
$(lpfx)mallocr.o: mallocr.c
|
||||
$(MALLOC_COMPILE) -DDEFINE_MALLOC -c $(srcdir)/mallocr.c -o $@
|
||||
|
||||
|
|
|
@ -117,7 +117,7 @@ am__v_AR_ = $(am__v_AR_@AM_DEFAULT_V@)
|
|||
am__v_AR_0 = @echo " AR " $@;
|
||||
am__v_AR_1 =
|
||||
lib_a_AR = $(AR) $(ARFLAGS)
|
||||
am_lib_a_OBJECTS = setjmp.$(OBJEXT)
|
||||
am_lib_a_OBJECTS = setjmp.$(OBJEXT) lib_a-mstats.$(OBJEXT)
|
||||
lib_a_OBJECTS = $(am_lib_a_OBJECTS)
|
||||
AM_V_P = $(am__v_P_@AM_V@)
|
||||
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
|
||||
|
@ -140,6 +140,10 @@ AM_V_CPPAS = $(am__v_CPPAS_@AM_V@)
|
|||
am__v_CPPAS_ = $(am__v_CPPAS_@AM_DEFAULT_V@)
|
||||
am__v_CPPAS_0 = @echo " CPPAS " $@;
|
||||
am__v_CPPAS_1 =
|
||||
AM_V_lt = $(am__v_lt_@AM_V@)
|
||||
am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
|
||||
am__v_lt_0 = --silent
|
||||
am__v_lt_1 =
|
||||
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
|
||||
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
||||
AM_V_CC = $(am__v_CC_@AM_V@)
|
||||
|
@ -309,7 +313,9 @@ top_srcdir = @top_srcdir@
|
|||
AM_CPPFLAGS = $(NEWLIB_CFLAGS) $(TARGET_CFLAGS)
|
||||
AM_CCASFLAGS = $(AM_CPPFLAGS)
|
||||
noinst_LIBRARIES = lib.a
|
||||
lib_a_SOURCES = setjmp.S
|
||||
lib_a_SOURCES = setjmp.S \
|
||||
mstats.c
|
||||
|
||||
lib_a_CFLAGS = $(AM_CFLAGS)
|
||||
lib_a_LIBADD = $(lpfx)malloc.o \
|
||||
$(lpfx)free.o \
|
||||
|
@ -319,10 +325,7 @@ lib_a_LIBADD = $(lpfx)malloc.o \
|
|||
$(lpfx)malign.o \
|
||||
$(lpfx)valloc.o \
|
||||
$(lpfx)pvalloc.o \
|
||||
$(lpfx)mallinfo.o \
|
||||
$(lpfx)mallstats.o \
|
||||
$(lpfx)msize.o \
|
||||
$(lpfx)mallopt.o \
|
||||
$(lpfx)mallocr.o \
|
||||
$(lpfx)freer.o \
|
||||
$(lpfx)reallocr.o \
|
||||
|
@ -333,7 +336,7 @@ MALLOC_COMPILE = $(COMPILE)
|
|||
all: all-am
|
||||
|
||||
.SUFFIXES:
|
||||
.SUFFIXES: .S .o .obj
|
||||
.SUFFIXES: .S .c .o .obj
|
||||
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
|
||||
@for dep in $?; do \
|
||||
case '$(am__configure_deps)' in \
|
||||
|
@ -384,6 +387,18 @@ distclean-compile:
|
|||
.S.obj:
|
||||
$(AM_V_CPPAS)$(CPPASCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
|
||||
|
||||
.c.o:
|
||||
$(AM_V_CC)$(COMPILE) -c -o $@ $<
|
||||
|
||||
.c.obj:
|
||||
$(AM_V_CC)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
|
||||
|
||||
lib_a-mstats.o: mstats.c
|
||||
$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-mstats.o `test -f 'mstats.c' || echo '$(srcdir)/'`mstats.c
|
||||
|
||||
lib_a-mstats.obj: mstats.c
|
||||
$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-mstats.obj `if test -f 'mstats.c'; then $(CYGPATH_W) 'mstats.c'; else $(CYGPATH_W) '$(srcdir)/mstats.c'; fi`
|
||||
|
||||
ID: $(am__tagged_files)
|
||||
$(am__define_uniq_tagged_files); mkid -fID $$unique
|
||||
tags: tags-am
|
||||
|
@ -578,18 +593,9 @@ $(lpfx)valloc.o: tiny-malloc.c
|
|||
$(lpfx)pvalloc.o: tiny-malloc.c
|
||||
$(MALLOC_COMPILE) -DDEFINE_PVALLOC -c $(srcdir)/tiny-malloc.c -o $@
|
||||
|
||||
$(lpfx)mallinfo.o: tiny-malloc.c
|
||||
$(MALLOC_COMPILE) -DDEFINE_MALLINFO -c $(srcdir)/tiny-malloc.c -o $@
|
||||
|
||||
$(lpfx)mallstats.o: tiny-malloc.c
|
||||
$(MALLOC_COMPILE) -DDEFINE_MALLOC_STATS -c $(srcdir)/tiny-malloc.c -o $@
|
||||
|
||||
$(lpfx)msize.o: tiny-malloc.c
|
||||
$(MALLOC_COMPILE) -DDEFINE_MALLOC_USABLE_SIZE -c $(srcdir)/tiny-malloc.c -o $@
|
||||
|
||||
$(lpfx)mallopt.o: mallocr.c
|
||||
$(MALLOC_COMPILE) -DDEFINE_MALLOPT -c $(srcdir)/mallocr.c -o $@
|
||||
|
||||
$(lpfx)mallocr.o: mallocr.c
|
||||
$(MALLOC_COMPILE) -DDEFINE_MALLOC -c $(srcdir)/mallocr.c -o $@
|
||||
|
||||
|
|
|
@ -0,0 +1,6 @@
|
|||
/* stdlib/mstats.c defines all these symbols in this file.
|
||||
TODO: Missing mstats function. */
|
||||
#define DEFINE_MALLINFO
|
||||
#define DEFINE_MALLOC_STATS
|
||||
#define DEFINE_MALLOPT
|
||||
#include "tiny-malloc.c"
|
Loading…
Reference in New Issue