diff options
author | Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> | 2007-05-18 15:57:16 +0000 |
---|---|---|
committer | Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> | 2007-05-18 15:57:16 +0000 |
commit | 5e43e3ea8637a08b04dcd177798daf398aedfee2 (patch) | |
tree | d5a87507e690cad298885cc574b072f1b24aa824 /patches/dmalloc | |
parent | a5a431f8519b782dbb0c9d57cee7b306cea7191d (diff) | |
download | crosstool-ng-5e43e3ea8637a08b04dcd177798daf398aedfee2.tar.gz crosstool-ng-5e43e3ea8637a08b04dcd177798daf398aedfee2.tar.bz2 crosstool-ng-5e43e3ea8637a08b04dcd177798daf398aedfee2.zip |
Add dmalloc debug library facility.
Add patches for dmalloc.
Ignore the generated config/debug.in
Diffstat (limited to 'patches/dmalloc')
-rw-r--r-- | patches/dmalloc/5.5.2/100-use-xtools.patch | 58 | ||||
-rw-r--r-- | patches/dmalloc/5.5.2/110-block_size.patch | 32 | ||||
-rw-r--r-- | patches/dmalloc/5.5.2/120-g++_check.patch | 17 | ||||
-rw-r--r-- | patches/dmalloc/5.5.2/200-mips.patch | 64 | ||||
-rw-r--r-- | patches/dmalloc/5.5.2/300-shared_library.patch | 44 | ||||
-rw-r--r-- | patches/dmalloc/5.5.2/400-use_DESTDIR.patch | 105 |
6 files changed, 320 insertions, 0 deletions
diff --git a/patches/dmalloc/5.5.2/100-use-xtools.patch b/patches/dmalloc/5.5.2/100-use-xtools.patch new file mode 100644 index 00000000..78097fcd --- /dev/null +++ b/patches/dmalloc/5.5.2/100-use-xtools.patch @@ -0,0 +1,58 @@ +This patch makes configure use the cross ld and ar rather than the native tools. + +It was build up by Yann E. MORIN <yann.morin.1998@anciens.enib.fr> from some +bits gathered from buildroot, which is LGPL v2.1 +License for dmalloc is: + * Permission to use, copy, modify, and distribute this software for + * any purpose and without fee is hereby granted, provided that the + * above copyright notice and this permission notice appear in all + * copies, and that the name of Gray Watson not be used in advertising + * or publicity pertaining to distribution of the document or software + * without specific, written prior permission. + * + * Gray Watson makes no representations about the suitability of the + * software described herein for any purpose. It is provided "as is" + * without express or implied warranty. + +I personnaly believe that the resulting code should therefore be +LGPL v2.1, but don't believe me, ask your lawyers! + +diff -dur dmalloc-5.5.2.orig/configure dmalloc-5.5.2/configure +--- dmalloc-5.5.2.orig/configure 2007-05-14 19:26:14.000000000 +0200 ++++ dmalloc-5.5.2/configure 2007-05-18 11:38:25.000000000 +0200 +@@ -4418,14 +4418,14 @@ + (exit $ac_status); }; }; then + + # so now we try to create an archive from the compiled .o file +- (ar cr conftest.a conftest.o) 2>&5 ++ (${AR} cr conftest.a conftest.o) 2>&5 + # see which shared-library ld commands work + # + # Darwin/Mac OS X - Terry Teague + # username terry_teague at domain users.sourceforge.net + ac_cv_shared_lib_link_objs=no + if test `uname` = "Darwin"; then +- if (ld -dylib -o conftest.so.t -lc conftest.a) 2>&5; then ++ if (${LD} -dylib -o conftest.so.t -lc conftest.a) 2>&5; then + # By convention on some platforms + # libLLL.so, libLLL.X.so are symlinks to libLLL.X.Y.Z.so + # where X.Y.Z is version # (major.minor.increment) of the library +@@ -4443,12 +4443,12 @@ + ac_cv_shared_link_args='# Could not configure shlib linking' + enable_shlib=no + fi +- elif (ld -shared --whole-archive -soname conftest.so -o conftest.so.t conftest.a) 2>&5; then +- ac_cv_shared_link_args='ld -shared --whole-archive -soname $@ -o $@.t' +- elif (ld -shared -o conftest.so.t -all -soname conftest.so.t -none -lc -all conftest.a) 2>&5; then +- ac_cv_shared_link_args='ld -shared -o $@.t -all -soname $@ -none -lc -all' +- elif (ld -G -o conftest.so.t conftest.a) 2>&5; then +- ac_cv_shared_link_args='ld -G -o $@.t' ++ elif (${LD} -shared --whole-archive -soname conftest.so -o conftest.so.t conftest.a) 2>&5; then ++ ac_cv_shared_link_args="${LD}"' -shared --whole-archive -soname $@ -o $@.t' ++ elif (${LD} -shared -o conftest.so.t -all -soname conftest.so.t -none -lc -all conftest.a) 2>&5; then ++ ac_cv_shared_link_args="${LD}"' -shared -o $@.t -all -soname $@ -none -lc -all' ++ elif (${LD} -G -o conftest.so.t conftest.a) 2>&5; then ++ ac_cv_shared_link_args="${LD}"' -G -o $@.t' + else + # oh well, toss an error + ac_cv_shared_link_args='# Could not configure shlib linking' diff --git a/patches/dmalloc/5.5.2/110-block_size.patch b/patches/dmalloc/5.5.2/110-block_size.patch new file mode 100644 index 00000000..41d9c5c4 --- /dev/null +++ b/patches/dmalloc/5.5.2/110-block_size.patch @@ -0,0 +1,32 @@ +This patch sets the page size to a default 12, that is a 4KiB block size. +Testing for the correct block-size is impossible when cross-compiling. + +It was build up by Yann E. MORIN <yann.morin.1998@anciens.enib.fr> from some +bits gathered from buildroot, which is LGPL v2.1 +License for dmalloc is: + * Permission to use, copy, modify, and distribute this software for + * any purpose and without fee is hereby granted, provided that the + * above copyright notice and this permission notice appear in all + * copies, and that the name of Gray Watson not be used in advertising + * or publicity pertaining to distribution of the document or software + * without specific, written prior permission. + * + * Gray Watson makes no representations about the suitability of the + * software described herein for any purpose. It is provided "as is" + * without express or implied warranty. + +I personnaly believe that the resulting code should therefore be +LGPL v2.1, but don't believe me, ask your lawyers! + +diff -dur dmalloc-5.5.2.orig/configure dmalloc-5.5.2/configure +--- dmalloc-5.5.2.orig/configure 2007-05-14 19:26:14.000000000 +0200 ++++ dmalloc-5.5.2/configure 2007-05-18 11:38:25.000000000 +0200 +@@ -5306,7 +5306,7 @@ + + echo "$as_me:$LINENO: checking basic-block size" >&5 + echo $ECHO_N "checking basic-block size... $ECHO_C" >&6 +-ac_cv_page_size=0 ++ac_cv_page_size=12 + if test $ac_cv_page_size = 0; then + if test "$cross_compiling" = yes; then + { { echo "$as_me:$LINENO: error: cannot run test program while cross compiling diff --git a/patches/dmalloc/5.5.2/120-g++_check.patch b/patches/dmalloc/5.5.2/120-g++_check.patch new file mode 100644 index 00000000..a8f76f5a --- /dev/null +++ b/patches/dmalloc/5.5.2/120-g++_check.patch @@ -0,0 +1,17 @@ +Correctly check for g++ existence. + +Copyright 2007 Yann E. MORIN <yann.morin.1998@anciens.enib.fr> +Licensed to you as dmalloc-5.5.2 is. + +diff -dur dmalloc-5.5.2.orig/configure dmalloc-5.5.2/configure +--- dmalloc-5.5.2.orig/configure 2007-05-18 11:40:31.000000000 +0200 ++++ dmalloc-5.5.2/configure 2007-05-18 11:42:02.000000000 +0200 +@@ -2643,7 +2643,7 @@ + + + # see if we actually have a CXX program +-if test "$ac_cv_prog_CXX" = "" -o ! -x "$ac_cv_prog_CXX"; then ++if test "$ac_cv_prog_CXX" = "" -o ! -x `which "$ac_cv_prog_CXX"`; then + { echo "$as_me:$LINENO: WARNING: could not find C++ compiler $ac_cv_prog_CXX" >&5 + echo "$as_me: WARNING: could not find C++ compiler $ac_cv_prog_CXX" >&2;} + enable_cxx=no diff --git a/patches/dmalloc/5.5.2/200-mips.patch b/patches/dmalloc/5.5.2/200-mips.patch new file mode 100644 index 00000000..69f0e450 --- /dev/null +++ b/patches/dmalloc/5.5.2/200-mips.patch @@ -0,0 +1,64 @@ +Patch to correctly handle the MIPS case. + +It was build up by Yann E. MORIN <yann.morin.1998@anciens.enib.fr> from some +bits gathered from buildroot, which is LGPL v2.1 +License for dmalloc is: + * Permission to use, copy, modify, and distribute this software for + * any purpose and without fee is hereby granted, provided that the + * above copyright notice and this permission notice appear in all + * copies, and that the name of Gray Watson not be used in advertising + * or publicity pertaining to distribution of the document or software + * without specific, written prior permission. + * + * Gray Watson makes no representations about the suitability of the + * software described herein for any purpose. It is provided "as is" + * without express or implied warranty. + +I personnaly believe that the resulting code should therefore be +LGPL v2.1, but don't believe me, ask your lawyers! + +diff -dur dmalloc-5.5.2.orig/configure dmalloc-5.5.2/configure +--- dmalloc-5.5.2.orig/configure 2007-05-18 12:15:39.000000000 +0200 ++++ dmalloc-5.5.2/configure 2007-05-18 12:15:48.000000000 +0200 +@@ -7107,7 +7107,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 +diff -dur dmalloc-5.5.2.orig/return.h dmalloc-5.5.2/return.h +--- dmalloc-5.5.2.orig/return.h 2007-05-14 19:26:14.000000000 +0200 ++++ dmalloc-5.5.2/return.h 2007-05-18 12:15:48.000000000 +0200 +@@ -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 */ + diff --git a/patches/dmalloc/5.5.2/300-shared_library.patch b/patches/dmalloc/5.5.2/300-shared_library.patch new file mode 100644 index 00000000..ccf2bb28 --- /dev/null +++ b/patches/dmalloc/5.5.2/300-shared_library.patch @@ -0,0 +1,44 @@ +This patch makes building the shared library possible. + +Copyright 2007 Yann E. MORIN <yann.morin.1998@anciens.enib.fr> +Licensed to you as dmalloc-5.5.2 is. + +diff -dur dmalloc-5.5.2.orig/Makefile.in dmalloc-5.5.2/Makefile.in +--- dmalloc-5.5.2.orig/Makefile.in 2007-05-14 19:26:14.000000000 +0200 ++++ dmalloc-5.5.2/Makefile.in 2007-05-18 15:54:04.000000000 +0200 +@@ -257,7 +257,7 @@ + # via: http://256.com/gray/email.html + $(LIB_SL) : $(LIBRARY) + rm -f $@ $@.t +- @shlinkargs@ $(LIBRARY) $(OBJS) $(NORMAL_OBJS) ++ @shlinkargs@ $(LIBRARY) + mv $@.t $@ + + $(LIBRARY) : $(OBJS) $(NORMAL_OBJS) +@@ -270,7 +270,7 @@ + + $(LIB_TH_SL) : $(LIB_TH) + rm -f $@ $@.t +- @shlinkargs@ $(LIB_TH) $(OBJS) $(THREAD_OBJS) ++ @shlinkargs@ $(LIB_TH) + mv $@.t $@ + + $(LIB_CXX) : $(OBJS) $(NORMAL_OBJS) $(CXX_OBJS) +@@ -279,7 +279,7 @@ + + $(LIB_CXX_SL) : $(LIB_CXX) + rm -f $@ $@.t +- @shlinkargs@ $(LIB_CXX) $(OBJS) $(NORMAL_OBJS) $(CXX_OBJS) ++ @shlinkargs@ $(LIB_CXX) + mv $@.t $@ + + $(LIB_TH_CXX) : $(OBJS) $(THREAD_OBJS) $(CXX_OBJS) +@@ -288,7 +288,7 @@ + + $(LIB_TH_CXX_SL) : $(LIB_TH_CXX) + rm -f $@ $@.t +- @shlinkargs@ $(LIB_TH_CXX) $(OBJS) $(THREAD_OBJS) $(CXX_OBJS) ++ @shlinkargs@ $(LIB_TH_CXX) + mv $@.t $@ + + threadssl : $(LIB_TH_SL) diff --git a/patches/dmalloc/5.5.2/400-use_DESTDIR.patch b/patches/dmalloc/5.5.2/400-use_DESTDIR.patch new file mode 100644 index 00000000..072e3a75 --- /dev/null +++ b/patches/dmalloc/5.5.2/400-use_DESTDIR.patch @@ -0,0 +1,105 @@ +Make install rules use DESTDIR. +Split installation of the utilitity from the global install. + +Copyright 2007 Yann E. MORIN <yann.morin.1998@anciens.enib.fr> +Licensed to you as dmalloc-5.5.2 is. + +diff -dur dmalloc-5.5.2.orig/Makefile.in dmalloc-5.5.2/Makefile.in +--- dmalloc-5.5.2.orig/Makefile.in 2007-05-18 16:03:31.000000000 +0200 ++++ dmalloc-5.5.2/Makefile.in 2007-05-18 16:22:59.000000000 +0200 +@@ -174,66 +174,67 @@ + # rm -f configure + + installdirs : +- $(srcdir)/mkinstalldirs $(includedir) $(libdir) $(bindir) ++ $(srcdir)/mkinstalldirs $(DESTDIR)/$(includedir) $(DESTDIR)/$(libdir) $(DESTDIR)/$(bindir) + + installincs : $(HFLS) +- $(srcdir)/mkinstalldirs $(includedir) +- $(INSTALL_DATA) $(HFLS) $(includedir) ++ $(srcdir)/mkinstalldirs $(DESTDIR)/$(includedir) ++ $(INSTALL_DATA) $(HFLS) $(DESTDIR)/$(includedir) + + installthsl : $(LIB_TH_SL) +- $(srcdir)/mkinstalldirs $(libdir) +- $(INSTALL_PROGRAM) $(LIB_TH_SL) $(libdir) ++ $(srcdir)/mkinstalldirs $(DESTDIR)/$(libdir) ++ $(INSTALL_PROGRAM) $(LIB_TH_SL) $(DESTDIR)/$(libdir) + + installth : $(INSTALL_THREADS) +- $(srcdir)/mkinstalldirs $(libdir) +- $(INSTALL_PROGRAM) $(LIB_TH) $(libdir) ++ $(srcdir)/mkinstalldirs $(DESTDIR)/$(libdir) ++ $(INSTALL_PROGRAM) $(LIB_TH) $(DESTDIR)/$(libdir) + @CXX_OFF@ @echo "Enter 'make installthcxx' to install the threaded C++ library" + @SL_OFF@ @echo "Enter 'make installthsl' to install the threaded shared-library" + + installthcxxsl : $(LIB_TH_CXX_SL) +- $(srcdir)/mkinstalldirs $(shlibdir) +- $(INSTALL_PROGRAM) $(LIB_TH_CXX_SL) $(shlibdir) ++ $(srcdir)/mkinstalldirs $(DESTDIR)/$(shlibdir) ++ $(INSTALL_PROGRAM) $(LIB_TH_CXX_SL) $(DESTDIR)/$(shlibdir) + + installthcxx : $(INSTALL_TH_CXX) +- $(srcdir)/mkinstalldirs $(libdir) +- $(INSTALL_PROGRAM) $(LIB_TH_CXX) $(libdir) ++ $(srcdir)/mkinstalldirs $(DESTDIR)/$(libdir) ++ $(INSTALL_PROGRAM) $(LIB_TH_CXX) $(DESTDIR)/$(libdir) + @SL_OFF@ @echo "Enter 'make installthcxxsl' to install the threaded C++ shared-library" + + installcxxsl : $(LIB_CXX_SL) +- $(srcdir)/mkinstalldirs $(libdir) +- $(INSTALL_PROGRAM) $(LIB_CXX_SL) $(libdir) ++ $(srcdir)/mkinstalldirs $(DESTDIR)/$(libdir) ++ $(INSTALL_PROGRAM) $(LIB_CXX_SL) $(DESTDIR)/$(libdir) + + installcxx : $(INSTALL_CXX) +- $(srcdir)/mkinstalldirs $(libdir) +- $(INSTALL_PROGRAM) $(LIB_CXX) $(libdir) ++ $(srcdir)/mkinstalldirs $(DESTDIR)/$(libdir) ++ $(INSTALL_PROGRAM) $(LIB_CXX) $(DESTDIR)/$(libdir) + @TH_OFF@ @echo "Enter 'make installthcxx' to install the threaded C++ library" + @SL_OFF@ @echo "Enter 'make installcxxsl' to install the C++ shared-library" + + installsl : $(LIB_SL) +- $(srcdir)/mkinstalldirs $(shlibdir) +- $(INSTALL_PROGRAM) $(LIB_SL) $(shlibdir) ++ $(srcdir)/mkinstalldirs $(DESTDIR)/$(shlibdir) ++ $(INSTALL_PROGRAM) $(LIB_SL) $(DESTDIR)/$(shlibdir) + @CXX_OFF@ @echo "Enter 'make installcxxsl' to install the C++ shared-library" + @TH_OFF@ @echo "Enter 'make installthsl' to install thread shared-library" + + installlib : $(INSTALL_LIB) +- $(srcdir)/mkinstalldirs $(libdir) +- $(INSTALL_PROGRAM) $(LIBRARY) $(libdir) +- @RANLIB@ $(libdir)/$(LIBRARY) ++ $(srcdir)/mkinstalldirs $(DESTDIR)/$(libdir) ++ $(INSTALL_PROGRAM) $(LIBRARY) $(DESTDIR)/$(libdir) ++ @RANLIB@ $(DESTDIR)/$(libdir)/$(LIBRARY) + @SL_OFF@ @echo "Enter 'make installsl' to install $(LIB_SL) in $(shlibdir)" + @CXX_OFF@ @echo "Enter 'make installcxx' to install the C++ library" + @TH_OFF@ @echo "Enter 'make installth' to install thread library" + + installdocs : $(srcdir)/docs/$(HTMLFILE) $(srcdir)/docs/$(TEXIFILE) \ + $(srcdir)/docs/$(PDFFILE) +- $(srcdir)/mkinstalldirs $(docdir) +- $(INSTALL_DATA) $(srcdir)/docs/$(HTMLFILE) $(docdir) +- $(INSTALL_DATA) $(srcdir)/docs/$(TEXIFILE) $(docdir) +- $(INSTALL_DATA) $(srcdir)/docs/$(PDFFILE) $(docdir) ++ $(srcdir)/mkinstalldirs $(DESTDIR)/$(docdir) ++ $(INSTALL_DATA) $(srcdir)/docs/$(HTMLFILE) $(DESTDIR)/$(docdir) ++ $(INSTALL_DATA) $(srcdir)/docs/$(TEXIFILE) $(DESTDIR)/$(docdir) ++ $(INSTALL_DATA) $(srcdir)/docs/$(PDFFILE) $(DESTDIR)/$(docdir) + +-install : installincs installlib $(UTIL) +- $(srcdir)/mkinstalldirs $(bindir) +- $(INSTALL_PROGRAM) $(UTIL) $(bindir) +- @echo "Enter 'make installdocs' to install $(DOCFILES) in $(docdir)" ++installutil : $(UTIL) ++ $(srcdir)/mkinstalldirs $(DESTDIR)/$(bindir) ++ $(INSTALL_PROGRAM) $(UTIL) $(DESTDIR)/$(bindir) ++ ++install : installincs installlib installutil installdocs + + dmalloc.h.2 : $(srcdir)/configure + $(SHELL) $(srcdir)/configure |