unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Paul Eggert <eggert@cs.ucla.edu>
To: Colin Baxter <m43cap@yandex.com>
Cc: emacs-devel@gnu.org
Subject: Re: undefined reference to `my_heap_start'
Date: Wed, 16 Jan 2019 17:36:27 -0800	[thread overview]
Message-ID: <27815330-7949-db72-8991-f6f2ebacbf50@cs.ucla.edu> (raw)
In-Reply-To: <87va2o9aql.fsf@yandex.com>

[-- Attachment #1: Type: text/plain, Size: 281 bytes --]

On 1/16/19 2:07 AM, Colin Baxter wrote:
>    CCLD     temacs.in
> alloc.o: In function `malloc_initialize_hook':
> /home/redknight/git/emacs/src/alloc.c:140: undefined reference to `my_heap_start'

I think I see the problem. I installed the attached patch; please give 
it a try.


[-- Attachment #2: 0001-Port-pdumper-to-older-GNU-Linux.patch --]
[-- Type: text/x-patch, Size: 1887 bytes --]

From 696d43275eaa12982e28ec3b080441d6ca9dec34 Mon Sep 17 00:00:00 2001
From: Paul Eggert <eggert@cs.ucla.edu>
Date: Wed, 16 Jan 2019 17:34:45 -0800
Subject: [PATCH] Port pdumper to older GNU/Linux

Problem reported by Colin Baxter in:
https://lists.gnu.org/r/emacs-devel/2019-01/msg00321.html
* src/alloc.c (my_heap_start): Also define if
GNU_LINUX && CANNOT_DUMP && DOUG_LEA_MALLOC.
---
 src/alloc.c | 32 +++++++++++++++++---------------
 1 file changed, 17 insertions(+), 15 deletions(-)

diff --git a/src/alloc.c b/src/alloc.c
index 8054aa5ae5..5ea466beca 100644
--- a/src/alloc.c
+++ b/src/alloc.c
@@ -103,24 +103,12 @@ along with GNU Emacs.  If not, see <https://www.gnu.org/licenses/>.  */
 #include "w32heap.h"	/* for sbrk */
 #endif
 
-#if defined GNU_LINUX && !defined CANNOT_DUMP
-/* The address where the heap starts.  */
-void *
-my_heap_start (void)
-{
-  static void *start;
-  if (! start)
-    start = sbrk (0);
-  return start;
-}
-#endif
-
 #ifdef DOUG_LEA_MALLOC
 
 /* Specify maximum number of areas to mmap.  It would be nice to use a
    value that explicitly means "no limit".  */
 
-#define MMAP_MAX_AREAS 100000000
+# define MMAP_MAX_AREAS 100000000
 
 /* A pointer to the memory allocated that copies that static data
    inside glibc's malloc.  */
@@ -136,9 +124,9 @@ malloc_initialize_hook (void)
 
   if (! initialized)
     {
-#ifdef GNU_LINUX
+# ifdef GNU_LINUX
       my_heap_start ();
-#endif
+# endif
       malloc_using_checking = getenv ("MALLOC_CHECK_") != NULL;
     }
   else
@@ -201,6 +189,20 @@ alloc_unexec_post (void)
   free (malloc_state_ptr);
 # endif
 }
+
+# ifdef GNU_LINUX
+
+/* The address where the heap starts.  */
+void *
+my_heap_start (void)
+{
+  static void *start;
+  if (! start)
+    start = sbrk (0);
+  return start;
+}
+# endif
+
 #endif
 
 /* Mark, unmark, query mark bit of a Lisp string.  S must be a pointer
-- 
2.20.1


  reply	other threads:[~2019-01-17  1:36 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-01-16 10:07 undefined reference to `my_heap_start' Colin Baxter
2019-01-17  1:36 ` Paul Eggert [this message]
2019-01-17  6:38   ` Colin Baxter

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=27815330-7949-db72-8991-f6f2ebacbf50@cs.ucla.edu \
    --to=eggert@cs.ucla.edu \
    --cc=emacs-devel@gnu.org \
    --cc=m43cap@yandex.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).