add dmalloc
This commit is contained in:
parent
b3d71710a3
commit
28151cf8c7
|
@ -41,6 +41,7 @@ source "package/dillo/Config.in"
|
||||||
source "package/directfb/Config.in"
|
source "package/directfb/Config.in"
|
||||||
source "package/distcc/Config.in"
|
source "package/distcc/Config.in"
|
||||||
source "package/dm/Config.in"
|
source "package/dm/Config.in"
|
||||||
|
source "package/dmalloc/Config.in"
|
||||||
source "package/dmraid/Config.in"
|
source "package/dmraid/Config.in"
|
||||||
source "package/dnsmasq/Config.in"
|
source "package/dnsmasq/Config.in"
|
||||||
source "package/dropbear/Config.in"
|
source "package/dropbear/Config.in"
|
||||||
|
|
10
package/dmalloc/Config.in
Normal file
10
package/dmalloc/Config.in
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
config BR2_PACKAGE_DMALLOC
|
||||||
|
bool "dmalloc"
|
||||||
|
default n
|
||||||
|
help
|
||||||
|
A debug memory allocation library which is a drop in replacement for
|
||||||
|
the system's malloc, realloc, calloc, free and other memory management
|
||||||
|
routines while providing powerful debugging facilities configurable at
|
||||||
|
runtime.
|
||||||
|
|
||||||
|
http://dmalloc.com/
|
43
package/dmalloc/dmalloc-mips.patch
Normal file
43
package/dmalloc/dmalloc-mips.patch
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
--- dmalloc/configure 2006-09-01 18:28:51.000000000 -0700
|
||||||
|
+++ dmalloc-mips/configure 2006-09-01 18:49:07.000000000 -0700
|
||||||
|
@@ -6114,7 +6114,7 @@
|
||||||
|
echo $ECHO_N "checking return.h macros work... $ECHO_C" >&6
|
||||||
|
if test "$cross_compiling" = yes; then
|
||||||
|
cat >>confdefs.h <<\_ACEOF
|
||||||
|
-#define RETURN_MACROS_WORK 0
|
||||||
|
+#define RETURN_MACROS_WORK 1
|
||||||
|
_ACEOF
|
||||||
|
echo "$as_me:$LINENO: result: no" >&5
|
||||||
|
echo "${ECHO_T}no" >&6
|
||||||
|
--- dmalloc/return.h 2004-10-19 07:51:21.000000000 -0700
|
||||||
|
+++ dmalloc-mips/return.h 2006-09-08 21:52:43.000000000 -0700
|
||||||
|
@@ -106,26 +106,16 @@
|
||||||
|
/*************************************/
|
||||||
|
|
||||||
|
/*
|
||||||
|
- * For DEC Mips machines running Ultrix
|
||||||
|
+ * For Mips machines running Linux
|
||||||
|
*/
|
||||||
|
#if __mips
|
||||||
|
|
||||||
|
/*
|
||||||
|
- * I have no idea how to get inline assembly with the default cc.
|
||||||
|
- * Anyone know how?
|
||||||
|
- */
|
||||||
|
-
|
||||||
|
-#if 0
|
||||||
|
-
|
||||||
|
-/*
|
||||||
|
* NOTE: we assume here that file is global.
|
||||||
|
*
|
||||||
|
- * $31 is the frame pointer. $2 looks to be the return address but maybe
|
||||||
|
- * not consistently.
|
||||||
|
+ * $31 is the return address.
|
||||||
|
*/
|
||||||
|
-#define GET_RET_ADDR(file) asm("sw $2, file")
|
||||||
|
-
|
||||||
|
-#endif
|
||||||
|
+#define GET_RET_ADDR(file) asm("sw $31, %0" : "=m" (file))
|
||||||
|
|
||||||
|
#endif /* __mips */
|
||||||
|
|
76
package/dmalloc/dmalloc.mk
Normal file
76
package/dmalloc/dmalloc.mk
Normal file
|
@ -0,0 +1,76 @@
|
||||||
|
#############################################################
|
||||||
|
#
|
||||||
|
# dmalloc
|
||||||
|
#
|
||||||
|
#############################################################
|
||||||
|
DMALLOC_VER:=5.4.2
|
||||||
|
DMALLOC_SOURCE:=dmalloc-$(DMALLOC_VER).tgz
|
||||||
|
DMALLOC_SITE:=http://dmalloc.com/releases
|
||||||
|
DMALLOC_DIR:=$(BUILD_DIR)/dmalloc-$(DMALLOC_VER)
|
||||||
|
DMALLOC_CAT:=zcat
|
||||||
|
DMALLOC_BINARY:=dmalloc
|
||||||
|
DMALLOC_TARGET_BINARY:=usr/bin/dmalloc
|
||||||
|
|
||||||
|
$(DL_DIR)/$(DMALLOC_SOURCE):
|
||||||
|
$(WGET) -P $(DL_DIR) $(DMALLOC_SITE)/$(DMALLOC_SOURCE)
|
||||||
|
|
||||||
|
dmalloc-source: $(DL_DIR)/$(DMALLOC_SOURCE)
|
||||||
|
|
||||||
|
$(DMALLOC_DIR)/.unpacked: $(DL_DIR)/$(DMALLOC_SOURCE)
|
||||||
|
$(DMALLOC_CAT) $(DL_DIR)/$(DMALLOC_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
|
||||||
|
toolchain/patch-kernel.sh $(DMALLOC_DIR) package/dmalloc dmalloc\*.patch
|
||||||
|
$(SED) 's/^ac_cv_page_size=0$$/ac_cv_page_size=12/' $(DMALLOC_DIR)/configure
|
||||||
|
$(SED) 's/(ld -/($${LD-ld} -/' $(DMALLOC_DIR)/configure
|
||||||
|
$(SED) 's/'\''ld -/"$${LD-ld}"'\'' -/' $(DMALLOC_DIR)/configure
|
||||||
|
touch $(DMALLOC_DIR)/.unpacked
|
||||||
|
|
||||||
|
$(DMALLOC_DIR)/.configured: $(DMALLOC_DIR)/.unpacked
|
||||||
|
(cd $(DMALLOC_DIR); rm -rf config.cache; \
|
||||||
|
$(TARGET_CONFIGURE_OPTS) \
|
||||||
|
CFLAGS="-g $(TARGET_CFLAGS)" \
|
||||||
|
LDFLAGS="-g" \
|
||||||
|
./configure \
|
||||||
|
--target=$(GNU_TARGET_NAME) \
|
||||||
|
--host=$(GNU_TARGET_NAME) \
|
||||||
|
--build=$(GNU_HOST_NAME) \
|
||||||
|
--prefix=/usr \
|
||||||
|
--enable-threads \
|
||||||
|
--enable-shlib \
|
||||||
|
);
|
||||||
|
touch $(DMALLOC_DIR)/.configured
|
||||||
|
|
||||||
|
$(DMALLOC_DIR)/$(DMALLOC_BINARY): $(DMALLOC_DIR)/.configured
|
||||||
|
$(MAKE) -C $(DMALLOC_DIR)
|
||||||
|
|
||||||
|
$(TARGET_DIR)/$(DMALLOC_TARGET_BINARY): $(DMALLOC_DIR)/$(DMALLOC_BINARY)
|
||||||
|
$(MAKE) prefix=$(STAGING_DIR)/usr \
|
||||||
|
exec_prefix=$(TARGET_DIR)/usr \
|
||||||
|
libdir=$(STAGING_DIR)/usr/lib \
|
||||||
|
shlibdir=$(TARGET_DIR)/usr/lib \
|
||||||
|
includedir=$(STAGING_DIR)/include \
|
||||||
|
-C $(DMALLOC_DIR) install
|
||||||
|
(cd $(STAGING_DIR)/usr/lib; \
|
||||||
|
mv libdmalloc*.so $(TARGET_DIR)/usr/lib);
|
||||||
|
touch $(TARGET_DIR)/$(DMALLOC_TARGET_BINARY)
|
||||||
|
|
||||||
|
dmalloc: uclibc $(TARGET_DIR)/$(DMALLOC_TARGET_BINARY)
|
||||||
|
|
||||||
|
dmalloc-clean:
|
||||||
|
rm -f $(TARGET_DIR)/usr/lib/libdmalloc*
|
||||||
|
rm -f $(STAGING_DIR)/usr/lib/libdmalloc*
|
||||||
|
rm -f $(STAGING_DIR)/include/dmalloc.h
|
||||||
|
rm -f $(TARGET_DIR)/$(DMALLOC_TARGET_BINARY)
|
||||||
|
$(MAKE) -C $(DMALLOC_DIR) clean
|
||||||
|
|
||||||
|
dmalloc-dirclean:
|
||||||
|
rm -rf $(DMALLOC_DIR)
|
||||||
|
|
||||||
|
|
||||||
|
#############################################################
|
||||||
|
#
|
||||||
|
# Toplevel Makefile options
|
||||||
|
#
|
||||||
|
#############################################################
|
||||||
|
ifeq ($(strip $(BR2_PACKAGE_DMALLOC)),y)
|
||||||
|
TARGETS+=dmalloc
|
||||||
|
endif
|
Loading…
Reference in New Issue
Block a user