Paul ---
My apologies if you are not involved with emacs development or even care to be
notified of what seems to be a regression to one of your fixes. But if you're
still willing to read on then can I presume on you to point me in the right
direction to report this?
In short, while compiling emacs 24.3 on a Sparc Solaris 10 machine with gcc
v3.4.3 I encountered fatal errors[fn:1] with __builtin_isnan and
__builtin_isfinite being undefined symbols. I found your fix for isnan, but
the code base I used (from
http://gnu.spinellicreations.com/emacs/emacs-24.3.tar.gz) had isnan surrounded
by an #ifndef/#endif guard instead of your #undef solution. So, I changed it
back and did the same for isfinite then the compilation was successful. I
think this is a bug but I hesitated to use bug-gnu-emacs@gnu.org since that
seemed to be for emacs, not necessarily emacs development. Would you be able
to point me in the right direction?
Thank you,
and I'm sorry for the cold call.
[fn:1] Internal compilation notes that include error at temacs step:
+ IMPORTANT: For Solaris 10 with gcc v3.4.3 the following changes need
to be made to src/floatfns.c
: 37c37
: < #ifndef isfinite
: ---
: > #undef isfinite
: 39,40c39
: < #endif
: < #ifndef isnan
: ---
: > #undef isnan
: 42d40
: < #endif
- Paul Eggert noticed an fixed a problem with isnan (see
http://lists.gnu.org/archive/html/emacs-diffs/2011-09/msg00041.html).
However, somewhere between that fix and the code base used here a
minor, but vital, change was made that broke the compilation on
Solaris 10 with gcc v3.4.3. Specifically, isnan should have
been #undef'd. The changes above take away the #ifndef/#endif
guards and replace them with a leading #undef for both isnan and
isfinite since they both contribute to the fatal error making
temacs.
#+begin_src text
cc -std=gnu99 -Demacs -I. -I/vendor/emacs-24.3/emacs-24.3/src
-I../lib -I/vendor/emacs-24.3/emacs-24.3/src/../lib -I/usr/openwin/include
-I/usr/include/libxml2 -MMD -MF deps/.d -MP -g3 -O2
-L/usr/openwin/lib \
-o temacs dispnew.o frame.o scroll.o xdisp.o menu.o xmenu.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 xterm.o xfns.o xselect.o xrdb.o xsmfns.o xsettings.o
xgselect.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 syntax.o unexsol.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 profiler.o xfont.o fontset.o
fringe.o image.o terminfo.o lastfile.o widget.o ../lib/libgnu.a
../lwlib/liblw.a -ltiff -ljpeg -lpng -lz -lm -lXpm -lXaw -lXmu -lXt -lSM
-lICE -lXext -lX11 -lrt -lrt -lxml2 -lpthread -lz -lm -lsocket -lnsl
-lresolv -lsocket -lnsl -lncurses -lfontconfig -lpthread -lm
Undefined first referenced
symbol in file
__builtin_isnan floatfns.o
__builtin_isfinite floatfns.o
ld: fatal: Symbol referencing errors. No output written to temacs
collect2: ld returned 1 exit status
gmake[1]: *** [temacs] Error 1
gmake[1]: Leaving directory
`/ssd/system/vendor/emacs-24.3/emacs-24.3/src'
gmake: *** [src] Error 2
#+end_src
Timothy C. Burt, PhD
Senior Staff Scientist
timothy.burt@exelisinc.com
(585) 269-5230
________________________________
This e-mail and any files transmitted with it may be proprietary and are
intended solely for the use of the individual or entity to whom they are
addressed. If you have received this e-mail in error please notify the sender.
Please note that any views or opinions presented in this e-mail are solely
those of the author and do not necessarily represent those of Exelis Inc. The
recipient should check this e-mail and any attachments for the presence of
viruses. Exelis Inc. accepts no liability for any damage caused by any virus
transmitted by this e-mail.