Bug 1426109 - libresolv res_gethostbyaddr() check fails in rawhide
Summary: libresolv res_gethostbyaddr() check fails in rawhide
Alias: None
Product: Fedora
Classification: Fedora
Component: ekiga
Version: rawhide
Hardware: Unspecified
OS: Unspecified
Target Milestone: ---
Assignee: Peter Robinson
QA Contact: Fedora Extras Quality Assurance
Depends On:
TreeView+ depends on / blocked
Reported: 2017-02-23 08:29 UTC by Milan Crha
Modified: 2017-02-23 14:42 UTC (History)
9 users (show)

Fixed In Version: ekiga-4.0.1-33.fc26
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Last Closed: 2017-02-23 14:42:39 UTC
Type: Bug

Attachments (Terms of Use)
conftest.cpp (1.67 KB, text/plain)
2017-02-23 08:29 UTC, Milan Crha
no flags Details

Description Milan Crha 2017-02-23 08:29:11 UTC
Created attachment 1256833 [details]

Ekiga package fails to build due to an error in libresolv detection. I do not see anything obvious (the libresolv-2.25.so seems to have the symbol still exported, the same as libresolv-2.24.so in Fedora 25), neither I'm able to influence the check code by any means, because it's generated by autotools with this code in configure.ac:

>  dnl Checking for libresolv
>  if test ${gm_platform} = "linux" ; then
>  	AC_CHECK_LIB(resolv, res_gethostbyaddr, [LIBS="-lresolv $LIBS"], AC_MSG_ERROR([You need the libresolv library to compile Ekiga]), -lresolv)
>  	LDAP_LIBS="${LDAP_LIBS} -lresolv"
>  fi

But more importantly, this generated code compiles fine under Fedora 25 (older gcc and glibc). I do not know where the problem is, thus I rather start in glibc. If you think this belongs to gcc or even to some part of the autotools, then feel free to move it there. I currently just know that the package doesn't build and it won't build until the issue is fixed or a proper workaround is found (an improper workaround would be not check for libresolv and just add it into the LDAP_LIBS; maybe I'll do it for the time being).

You can find attached the generated code from autotools, where is also pasted (at the top) the command the autotools uses to compile it. As noted above, exactly the same code and command works fine in Fedora 25, while it fails for undefined reference to 'res_gethostbyaddr' in rawhide.

Comment 1 Florian Weimer 2017-02-23 10:16:03 UTC
This needs to be fixed in ekiga by dropping the configure check.  res_gethostbyaddr has never been part of the glibc API.  It was never declared in any header file and just exported by accident.

Comment 2 Milan Crha 2017-02-23 14:42:39 UTC
Oh, thanks for the clarification, I didn't know that. In that case my "improper workaround" is finally proper. I fixed it with ekiga-4.0.1-33.fc26 build.

Note You need to log in before you can comment on or make changes to this bug.