1 # Skeleton Makefile for the GNU malloc code
7 BUILD_DIR = @BUILD_DIR@
10 INSTALL_PROGRAM = @INSTALL_PROGRAM@
11 INSTALL_DATA = @INSTALL_DATA@
26 LOCAL_CFLAGS = @LOCAL_CFLAGS@
31 LOCAL_DEFS = @LOCAL_DEFS@
33 INCLUDES = -I. -I../.. -I$(topdir) -I$(topdir)/lib
35 CCFLAGS = ${PROFILE_FLAGS} ${INCLUDES} $(DEFS) $(LOCAL_DEFS) $(LOCAL_CFLAGS) \
36 $(CFLAGS) $(MALLOC_CFLAGS) $(CPPFLAGS)
39 $(CC) $(CCFLAGS) -c $<
42 $(CC) $(CCFLAGS) -c $<
44 MALLOC_SOURCE = malloc.c
45 GMALLOC_SOURCE = gmalloc.c
46 NMALLOC_SOURCE = nmalloc.c
49 ALLOCA_SOURCE = alloca.c
50 ALLOCA_OBJECT = alloca.o
52 MALLOC_SRC = @MALLOC_SRC@
56 MALLOC_OBJS = malloc.o $(ALLOCA) stub.o
57 GMALLOC_OBJS = gmalloc.o $(ALLOCA) stub.o
58 NMALLOC_OBJS = nmalloc.o $(ALLOCA) stub.o
59 NMALLOC2_OBJS = nmalloc2.o $(ALLOCA) stub.o
60 NGMALLOC_OBJS = ngmalloc.o $(ALLOCA) stub.o
61 STUB_OBJS = $(ALLOCA) stub.o
63 .PHONY: malloc gmalloc stubmalloc nmalloc ngmalloc nmalloc2
67 malloc: ${MALLOC_OBJS}
69 ${AR} ${ARFLAGS} libmalloc.a ${MALLOC_OBJS}
70 -test -n "$(RANLIB)" && $(RANLIB) libmalloc.a
72 nmalloc: ${NMALLOC_OBJS}
74 ${AR} ${ARFLAGS} libmalloc.a ${NMALLOC_OBJS}
75 -test -n "$(RANLIB)" && $(RANLIB) libmalloc.a
77 nmalloc2: ${NMALLOC2_OBJS}
79 ${AR} ${ARFLAGS} libmalloc.a ${NMALLOC2_OBJS}
80 -test -n "$(RANLIB)" && $(RANLIB) libmalloc.a
82 gmalloc: ${GMALLOC_OBJS}
84 ${AR} ${ARFLAGS} libmalloc.a ${GMALLOC_OBJS}
85 -test -n "$(RANLIB)" && $(RANLIB) libmalloc.a
87 ngmalloc: ${NGMALLOC_OBJS}
89 ${AR} ${ARFLAGS} libmalloc.a ${NGMALLOC_OBJS}
90 -test -n "$(RANLIB)" && $(RANLIB) libmalloc.a
92 stubmalloc: ${STUB_OBJS}
94 ${AR} ${ARFLAGS} libmalloc.a ${STUB_OBJS}
95 -test -n "$(RANLIB)" && $(RANLIB) libmalloc.a
97 alloca.o: $(srcdir)/$(ALLOCA_SOURCE)
98 $(CC) $(CCFLAGS) -c $(srcdir)/$(ALLOCA_SOURCE)
99 @- if test "$(ALLOCA_OBJECT)" != alloca.o ; then \
100 mv $(ALLOCA_OBJECT) alloca.o >/dev/null 2>&1 ; \
104 $(RM) *.o libmalloc.a
106 distclean realclean maintainer-clean: clean
109 alloca.o: $(BUILD_DIR)/config.h
110 malloc.o: $(BUILD_DIR)/config.h $(topdir)/bashtypes.h getpagesize.h
111 nmalloc.o: $(BUILD_DIR)/config.h $(topdir)/bashtypes.h getpagesize.h
112 nmalloc2.o: $(BUILD_DIR)/config.h $(topdir)/bashtypes.h getpagesize.h
113 xmalloc.o: $(BUILD_DIR)/config.h $(topdir)/ansi_stdlib.h
114 gmalloc.o: $(BUILD_DIR)/config.h
116 # Rules for deficient makes, like SunOS and Solaris