delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2010/08/24/00:37:26

X-Recipient: archive-cygwin AT delorie DOT com
X-SWARE-Spam-Status: No, hits=-50.8 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,TW_BK
X-Spam-Check-By: sourceware.org
Subject: Re: Building Emacs-trunk with gcc >= 4.5.1 and libelf installed
From: "Yaakov (Cygwin/X)" <yselkowitz AT users DOT sourceforge DOT net>
To: cygwin <cygwin AT cygwin DOT com>, emacs-devel AT gnu DOT org
In-Reply-To: <4C7304CB.2020001@alice.it>
References: <4C7304CB DOT 2020001 AT alice DOT it>
Date: Mon, 23 Aug 2010 23:37:11 -0500
Message-ID: <1282624631.5256.40.camel@YAAKOV04>
Mime-Version: 1.0
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Unsubscribe: <mailto:cygwin-unsubscribe-archive-cygwin=delorie DOT com AT cygwin DOT com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com

On Tue, 2010-08-24 at 01:31 +0200, Angelo Graziosi wrote:
> Trying to build Emacs-trunk on Cygwin with GCC >= 4.5.1, I have found a 
> problem if also the package 'libelf0' is installed.
[snip]
> and the following test in 'configure' script is true:
[snip]
> i.e. SVR4 is _defined_. But... 'src/xfaces.c' includes indirectly via 
> '/usr/include/X11/Xos.h' the header '/usr/include/X11/Xarch.h', which has:
[snip]
> i.e. finding SVR4 defined, it searches for 'byteorder.h' in 
> '/usr/include/sys' and not in '/usr/include/asm', where it lives (*as on 
> GNU/Linux*[1]), and this leads to the above failure.

This is coming from autoconf's AC_FUNC_GETLOADAVG, which tries to find
several different getloadavg(3) implementations (which Cygwin doesn't
provide), otherwise it points to an AC_LIBOBJ from gnulib.  On Solaris,
the gnulib getloadavg uses kvm_open(3) and friends, and libkvm requires
libelf, hence the check for the latter.

AFAICS the proper solution is, in _AC_LIBOBJ_GETLOADAVG:

if test $ac_have_func = no && test "$ac_cv_lib_elf_elf_begin" = yes;
then
  ac_have_func=yes
  AC_DEFINE(SVR4, 1, [Define to 1 on System V Release 4.])
fi

to add << && test "$ac_cv_lib_kvm_kvm_open" = yes >> to the conditional.

In the meantime, since libelf isn't needed elsewhere in emacs, an easy
workaround is to add "ac_cv_lib_elf_elf_begin=no" to CYGCONF_ARGS.

HTH,


Yaakov



--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019