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>
