Subject: bug#24892: {s,}brk removed from FreeBSD 11.x and later, arm64 architecture

From: [email-masked] (Ashish SHUKLA)
Date: Mon, 07 Nov 2016 11:31:17 +0530

Hi,

As mentioned in the subject, {,s}brk syscalls are removed from arm64
architecture on FreeBSD 11.x[1]. This causes Emacs to fail to compile on those
platforms. Following is an excerpt from the build process:

--8<---------------cut here---------------start------------->8---
cc -c  -Demacs  -I. -I. -I../lib -I../lib                    -MMD -MF deps/gmalloc.d -MP    -Wno-switch -Wno-tautological-constant-out-of-range-compare -Wno-pointer-sign -Wno-string-plus-int -Wno-unknown-attributes  -O2 -pipe  -fno-strict-aliasing  gmalloc.c
cc -c  -Demacs  -I. -I. -I../lib -I../lib                    -MMD -MF deps/doc.d -MP    -Wno-switch -Wno-tautological-constant-out-of-range-compare -Wno-pointer-sign -Wno-string-plus-int -Wno-unknown-attributes  -O2 -pipe  -fno-strict-aliasing  doc.c
cc -Demacs  -I. -I. -I../lib -I../lib                    -MMD -MF deps/.d -MP    -Wno-switch -Wno-tautological-constant-out-of-range-compare -Wno-pointer-sign -Wno-string-plus-int -Wno-unknown-attributes  -O2 -pipe  -fno-strict-aliasing  -Wl,-znocombreloc   \
  -o temacs  vm-limit.o dispnew.o frame.o scroll.o xdisp.o menu.o  window.o charset.o coding.o category.o ccl.o character.o chartab.o bidi.o cm.o term.o terminal.o xfaces.o    emacs.o keyboard.o macros.o keymap.o sysdep.o buffer.o filelock.o insdel.o marker.o minibuf.o fileio.o dired.o cmds.o casetab.o casefiddle.o indent.o search.o regex.o undo.o alloc.o data.o doc.o editfns.o callint.o eval.o floatfns.o fns.o font.o print.o lread.o dynlib.oemacs-module.o syntax.o unexelf.o bytecode.o process.o gnutls.o callproc.o region-cache.o sound.o atimer.o doprnt.o intervals.o textprop.o composite.o xml.o kqueue.o  profiler.o decompress.o          terminfo.o lastfile.o gmalloc.o     ../lib/libgnu.a                 -lrt  -lexecinfo       -lutil -lncurses         -lpthread  -lm -lz
alloc.o: In function `Fmemory_limit':
alloc.c:(.text+0x65e8): undefined reference to `sbrk'
unexelf.o: In function `unexec':
unexelf.c:(.text+0x200): undefined reference to `sbrk'
gmalloc.o: In function `__default_morecore':
gmalloc.c:(.text+0x8): undefined reference to `sbrk'
cc: error: linker command failed with exit code 1 (use -v to see invocation)
gmake[2]: *** [Makefile:596: temacs] Error 1
gmake[2]: Leaving directory '/scratch/ashish/work/emacs-25.1/src'
gmake[1]: *** [Makefile:398: src] Error 2
gmake[1]: Leaving directory '/scratch/ashish/work/emacs-25.1'
--8<---------------cut here---------------end--------------->8---

If you need any other information to work on this, please let me know.

References:
[1]  https://reviews.freebsd.org/rS300303

Thanks in advance
-- 
Ashish SHUKLA

“A designer knows he has achieved perfection not when there is nothing
left to add, but when there is nothing left to take away.”
                                              (Antoine de Saint-Exupéry)

Sent from my Emacs