Date: Fri, 7 Sep 2012 12:58:54 GMT From: svn-freebsd-gecko@chruetertee.ch To: freebsd-gecko@freebsd.org Subject: [SVN-Commit] r996 - in trunk: . www/firefox-nightly www/firefox-nightly/files Message-ID: <201209071258.q87CwsAu054117@trillian.chruetertee.ch>
next in thread | raw e-mail | index | archive | help
Author: jbeich Date: Fri Sep 7 12:58:54 2012 New Revision: 996 Log: rename jemalloc patch Added: trunk/www/firefox-nightly/files/patch-bug788955 Deleted: trunk/www/firefox-nightly/files/patch-memory-build-mozjemalloc_compat.c trunk/www/firefox-nightly/files/patch-memory-jemalloc-Makefile.in trunk/www/firefox-nightly/files/patch-memory-mozjemalloc-jemalloc.h trunk/www/firefox-nightly/files/patch-toolkit_library_Makefile.in Modified: trunk/Gecko_TODO trunk/www/firefox-nightly/Makefile Modified: trunk/Gecko_TODO ============================================================================== --- trunk/Gecko_TODO Thu Sep 6 21:56:12 2012 (r995) +++ trunk/Gecko_TODO Fri Sep 7 12:58:54 2012 (r996) @@ -16,7 +16,6 @@ (layers.acceleration.force-enabled -> true ?) jbeich: -- push jemalloc patch upstream, e.g. check mallctl via autoconf - push ALSA patch upstream - push --ignore-unresolved-symbol upstream (needs tests/approval from author) - remove duplicate patches by using common PATCHDIR Modified: trunk/www/firefox-nightly/Makefile ============================================================================== --- trunk/www/firefox-nightly/Makefile Thu Sep 6 21:56:12 2012 (r995) +++ trunk/www/firefox-nightly/Makefile Fri Sep 7 12:58:54 2012 (r996) @@ -62,11 +62,6 @@ WRKSRC:= ${WRKSRC}-central-${HGREV:C/.*://} -.if ${OSVERSION} > 1000011 -MOZ_OPTIONS+= --enable-jemalloc -MOZ_EXPORT+= MOZ_JEMALLOC=1 -.endif - .if ${ARCH} == amd64 CONFIGURE_TARGET=x86_64-portbld-freebsd${OSREL} .elif ${ARCH} == powerpc64 Added: trunk/www/firefox-nightly/files/patch-bug788955 ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ trunk/www/firefox-nightly/files/patch-bug788955 Fri Sep 7 12:58:54 2012 (r996) @@ -0,0 +1,195 @@ +diff --git Makefile.in Makefile.in +index e341462..26d19ad 100644 +--- Makefile.in ++++ Makefile.in +@@ -47,7 +47,7 @@ endif + + ifdef MOZ_MEMORY + tier_base_dirs += memory/mozjemalloc +-ifdef MOZ_JEMALLOC ++ifeq (1_,$(MOZ_JEMALLOC)_$(MOZ_NATIVE_JEMALLOC)) + tier_base_dirs += memory/jemalloc + endif + tier_base_dirs += memory/build +diff --git configure.in configure.in +index 4070d8c..3b39473 100644 +--- configure.in ++++ configure.in +@@ -3670,21 +3670,22 @@ fi + + dnl Check for the existence of various allocation headers/functions + ++MALLOC_HEADERS="malloc.h malloc_np.h malloc/malloc.h sys/malloc.h" + MALLOC_H= +-MOZ_CHECK_HEADER(malloc.h, [MALLOC_H=malloc.h]) +-if test "$MALLOC_H" = ""; then +- MOZ_CHECK_HEADER(malloc/malloc.h, [MALLOC_H=malloc/malloc.h]) +- if test "$MALLOC_H" = ""; then +- MOZ_CHECK_HEADER(sys/malloc.h, [MALLOC_H=sys/malloc.h]) ++ ++for file in $MALLOC_HEADERS; do ++ MOZ_CHECK_HEADER($file, [MALLOC_H=$file]) ++ if test "$MALLOC_H" != ""; then ++ AC_DEFINE_UNQUOTED(MALLOC_H, <$MALLOC_H>) ++ break + fi +-fi +-if test "$MALLOC_H" != ""; then +- AC_DEFINE_UNQUOTED(MALLOC_H, <$MALLOC_H>) +-fi ++done + + MOZ_ALLOCATING_FUNCS="strndup posix_memalign memalign valloc" + AC_CHECK_FUNCS(strndup posix_memalign memalign valloc) + ++AC_CHECK_FUNCS(malloc_usable_size) ++ + dnl See if compiler supports some gcc-style attributes + + AC_CACHE_CHECK(for __attribute__((always_inline)), +@@ -6902,7 +6903,21 @@ if test -z "$MOZ_MEMORY"; then + AC_MSG_WARN([When not building jemalloc, you need to set WIN32_REDIST_DIR to the path to the Visual C++ Redist (usually VCINSTALLDIR\redist\x86\Microsoft.VC80.CRT, for VC++ v8) if you intend to distribute your build.]) + fi + ;; ++ *-freebsd*) ++ MOZ_JEMALLOC=1 ++ ;; + esac ++ ++ if test -n "$MOZ_JEMALLOC"; then ++ AC_CHECK_FUNCS(mallctl nallocm, ++ [MOZ_NATIVE_JEMALLOC=1 MOZ_MEMORY=1], ++ [MOZ_NATIVE_JEMALLOC= MOZ_MEMORY=]) ++ fi ++ if test -n "$MOZ_NATIVE_JEMALLOC"; then ++ AC_DEFINE(MOZ_NATIVE_JEMALLOC) ++ AC_DEFINE(MOZ_MEMORY) ++ AC_DEFINE(MOZ_JEMALLOC) ++ fi + else + dnl Don't try to run compiler tests on Windows + if test "$OS_ARCH" = "WINNT"; then +@@ -6988,6 +7003,7 @@ else + ;; + esac + fi # MOZ_MEMORY ++AC_SUBST(MOZ_NATIVE_JEMALLOC) + AC_SUBST(MOZ_MEMORY) + AC_SUBST(MOZ_JEMALLOC) + AC_SUBST(MOZ_GLUE_LDFLAGS) +@@ -8754,7 +8770,7 @@ fi + + # Run jemalloc configure script + +-if test "$MOZ_JEMALLOC" -a "$MOZ_MEMORY"; then ++if test -z "$MOZ_NATIVE_JEMALLOC" -a "$MOZ_JEMALLOC" -a "$MOZ_MEMORY" ; then + ac_configure_args="$_SUBDIR_CONFIG_ARGS --build=$build --host=$target --enable-stats --with-jemalloc-prefix=je_" + if test "$OS_ARCH" = "Linux"; then + MANGLE="malloc calloc valloc free realloc memalign posix_memalign malloc_usable_size" +diff --git memory/build/Makefile.in memory/build/Makefile.in +index dca0f48..af93ee0 100644 +--- memory/build/Makefile.in ++++ memory/build/Makefile.in +@@ -22,7 +22,9 @@ CSRCS = extraMallocFuncs.c + + ifdef MOZ_JEMALLOC + CSRCS += mozjemalloc_compat.c ++ifndef MOZ_NATIVE_JEMALLOC + SHARED_LIBRARY_LIBS += $(call EXPAND_LIBNAME_PATH,jemalloc,$(DEPTH)/memory/jemalloc) ++endif + else + SHARED_LIBRARY_LIBS += $(call EXPAND_LIBNAME_PATH,jemalloc,$(DEPTH)/memory/mozjemalloc) + endif +diff --git memory/build/mozjemalloc_compat.c memory/build/mozjemalloc_compat.c +index 10a845a..57245f6 100644 +--- memory/build/mozjemalloc_compat.c ++++ memory/build/mozjemalloc_compat.c +@@ -5,7 +5,15 @@ + #include "mozilla/Types.h" + #include "jemalloc_types.h" + ++#if defined(MALLOC_H) ++#include MALLOC_H /* for mallctl */ ++#endif ++ ++#if defined(MOZ_NATIVE_JEMALLOC) ++#define je_mallctl mallctl ++#else + extern int je_mallctl(const char*, void*, size_t*, void*, size_t); ++#endif + + MOZ_EXPORT_API (void) + jemalloc_stats(jemalloc_stats_t *stats) +diff --git memory/mozalloc/mozalloc.cpp memory/mozalloc/mozalloc.cpp +index 5b61050b..16bba36 100644 +--- memory/mozalloc/mozalloc.cpp ++++ memory/mozalloc/mozalloc.cpp +@@ -12,16 +12,13 @@ + #include <sys/types.h> + + #if defined(MALLOC_H) +-# include MALLOC_H // for memalign, valloc where available ++# include MALLOC_H // for memalign, valloc, malloc_size, malloc_usable_size + #endif // if defined(MALLOC_H) + #include <stddef.h> // for size_t + #include <stdlib.h> // for malloc, free + #if defined(XP_UNIX) + # include <unistd.h> // for valloc on *BSD + #endif //if defined(XP_UNIX) +-#if defined(__FreeBSD__) +-# include <malloc_np.h> // for malloc_usable_size +-#endif // if defined(__FreeBSD__) + + #if defined(XP_WIN) || (defined(XP_OS2) && defined(__declspec)) + # define MOZALLOC_EXPORT __declspec(dllexport) +@@ -213,8 +210,7 @@ moz_malloc_usable_size(void *ptr) + + #if defined(XP_MACOSX) + return malloc_size(ptr); +-#elif defined(MOZ_MEMORY) || (defined(XP_LINUX) && !defined(ANDROID)) || defined(__FreeBSD__) +- // Android bionic libc doesn't have malloc_usable_size. ++#elif defined(MOZ_MEMORY) || defined(HAVE_MALLOC_USABLE_SIZE) + return malloc_usable_size(ptr); + #elif defined(XP_WIN) + return _msize(ptr); +diff --git memory/mozjemalloc/jemalloc.h memory/mozjemalloc/jemalloc.h +index f0e0878..8f78123 100644 +--- memory/mozjemalloc/jemalloc.h ++++ memory/mozjemalloc/jemalloc.h +@@ -32,8 +32,8 @@ + #ifndef _JEMALLOC_H_ + #define _JEMALLOC_H_ + +-#if defined(MOZ_MEMORY_DARWIN) +-#include <malloc/malloc.h> ++#if defined(MALLOC_H) ++#include MALLOC_H /* for malloc_good_size and nallocm */ + #endif + #include "jemalloc_types.h" + +@@ -51,7 +51,9 @@ void jemalloc_stats(jemalloc_stats_t *stats); + #if defined(MOZ_MEMORY_LINUX) + __attribute__((weak)) + #endif +-#if defined(MOZ_JEMALLOC) ++#if defined(MOZ_NATIVE_JEMALLOC) ++#define je_nallocm nallocm ++#elif defined(MOZ_JEMALLOC) + int je_nallocm(size_t *rsize, size_t size, int flags); + #else + size_t je_malloc_good_size(size_t size); +diff --git toolkit/library/Makefile.in toolkit/library/Makefile.in +index 7dbbbc6..0b06ad0 100644 +--- toolkit/library/Makefile.in ++++ toolkit/library/Makefile.in +@@ -346,6 +346,10 @@ EXTRA_DSO_LDOPTS += \ + $(SQLITE_LIBS) \ + $(NULL) + ++ifdef MOZ_NATIVE_JEMALLOC ++EXTRA_DSO_LDOPTS += $(call EXPAND_LIBNAME_PATH,memory,$(DIST)/lib) ++endif ++ + ifdef MOZ_NATIVE_JPEG + EXTRA_DSO_LDOPTS += $(MOZ_JPEG_LIBS) + endif Deleted: trunk/www/firefox-nightly/files/patch-memory-build-mozjemalloc_compat.c ============================================================================== --- trunk/www/firefox-nightly/files/patch-memory-build-mozjemalloc_compat.c Fri Sep 7 12:58:54 2012 (r995) +++ /dev/null 00:00:00 1970 (deleted) @@ -1,15 +0,0 @@ ---- memory/build/mozjemalloc_compat.c~ -+++ memory/build/mozjemalloc_compat.c -@@ -5,7 +5,12 @@ - #include "mozilla/Types.h" - #include "jemalloc_types.h" - -+#ifdef __FreeBSD__ -+#include <malloc_np.h> -+#define je_mallctl mallctl -+#else - extern int je_mallctl(const char*, void*, size_t*, void*, size_t); -+#endif - - MOZ_EXPORT_API (void) - jemalloc_stats(jemalloc_stats_t *stats) Deleted: trunk/www/firefox-nightly/files/patch-memory-jemalloc-Makefile.in ============================================================================== --- trunk/www/firefox-nightly/files/patch-memory-jemalloc-Makefile.in Fri Sep 7 12:58:54 2012 (r995) +++ /dev/null 00:00:00 1970 (deleted) @@ -1,15 +0,0 @@ ---- memory/jemalloc/Makefile.in~ -+++ memory/jemalloc/Makefile.in -@@ -19,10 +19,12 @@ SDK_LIBRARY = $(REAL_LIBRARY) - DIST_INSTALL = 1 - endif - -+ifneq ($(OS_TARGET),FreeBSD) - CSRCS := $(notdir $(wildcard $(srcdir)/src/src/*.c)) - ifneq ($(OS_TARGET),Darwin) - CSRCS := $(filter-out zone.c,$(CSRCS)) - endif -+endif - - include $(topsrcdir)/config/rules.mk - Deleted: trunk/www/firefox-nightly/files/patch-memory-mozjemalloc-jemalloc.h ============================================================================== --- trunk/www/firefox-nightly/files/patch-memory-mozjemalloc-jemalloc.h Fri Sep 7 12:58:54 2012 (r995) +++ /dev/null 00:00:00 1970 (deleted) @@ -1,15 +0,0 @@ ---- memory/mozjemalloc/jemalloc.h~ -+++ memory/mozjemalloc/jemalloc.h -@@ -52,7 +52,12 @@ void jemalloc_stats(jemalloc_stats_t *st - __attribute__((weak)) - #endif - #if defined(MOZ_JEMALLOC) -+#ifdef __FreeBSD__ -+#include <malloc_np.h> -+#define je_nallocm nallocm -+#else - int je_nallocm(size_t *rsize, size_t size, int flags); -+#endif - #else - size_t je_malloc_good_size(size_t size); - #endif Deleted: trunk/www/firefox-nightly/files/patch-toolkit_library_Makefile.in ============================================================================== --- trunk/www/firefox-nightly/files/patch-toolkit_library_Makefile.in Fri Sep 7 12:58:54 2012 (r995) +++ /dev/null 00:00:00 1970 (deleted) @@ -1,13 +0,0 @@ ---- toolkit/library/Makefile.in.orig 2010-01-11 12:13:08.000000000 -0500 -+++ toolkit/library/Makefile.in 2010-01-11 12:15:05.000000000 -0500 -@@ -387,6 +387,10 @@ ifdef HAVE_CLOCK_MONOTONIC - EXTRA_DSO_LDOPTS += $(REALTIME_LIBS) - endif - -+ifdef MOZ_MEMORY -+EXTRA_DSO_LDOPTS += $(call EXPAND_LIBNAME_PATH,memory,$(DIST)/lib) -+endif -+ - ifeq (android,$(MOZ_WIDGET_TOOLKIT)) - OS_LIBS += -lGLESv2 - endif
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201209071258.q87CwsAu054117>