Skip site navigation (1)Skip section navigation (2)
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>