Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 550850 - games-emulation/dolphin-9999 fails to build when net-libs/enet:1.3 is installed
Summary: games-emulation/dolphin-9999 fails to build when net-libs/enet:1.3 is installed
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Games (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Devan Franchini (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-05-30 22:47 UTC by Samuel Bauer
Modified: 2015-06-15 18:32 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
build.log (build.log,13.47 KB, text/x-log)
2015-05-30 22:47 UTC, Samuel Bauer
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Samuel Bauer 2015-05-30 22:47:36 UTC
Created attachment 404342 [details]
build.log

From CMakeList.txt:
if (ENET_FOUND)
        message("Using shared enet")
else()
        message("Using static enet from Externals")
        include_directories(Externals/enet/include)
        add_subdirectory(Externals/enet)
endif()

leads to compile time failure: 'enet_socket_get_address' was not declared in this scope
whith net-libs/enet:1.3 installed here, grep enet_socket_get_address /usr/include/enet/*, returns nothing
The ebuild should check whether enet:1.3 is installed, and when it is 
use shipped enet version.
As enet:1.3 is installed here I checked it would compile fine using:
sed -i -e 's/ENET_FOUND/APPLE AND NOT APPLE/' CMakeLists.txt || die
appended at the end of src_prepare, and it does.

Rather seems an upstream bug, but could be fixed within the ebuild
Comment 1 Devan Franchini (RETIRED) gentoo-dev 2015-06-02 18:01:22 UTC
Can you try re-emerging it? I just tried replicating it myself and I wasn't able too with enet-1.3.12 installed. Thank you :)
Comment 2 Samuel Bauer 2015-06-02 18:41:55 UTC
In reply to comment #1
As build.log remain unchanged when emerging again

I tripled checked this
wget http://enet.bespin.org/download/enet-1.3.6.tar.gz
wget http://enet.bespin.org/download/enet-1.3.12.tar.gz
tar -zxvf enet-1.3.6.tar.gz
grep enet_socket_get_address enet-1.3.6/include/enet/*
tar -zxvf enet-1.3.12.tar.gz
grep enet_socket_get_address enet-1.3.12/include/enet/*
enet-1.3.12/include/enet/enet.h:ENET_API int        enet_socket_get_address (ENetSocket, ENetAddress *);

as 1.3.7, is installed here, checked like
grep enet_socket_get_address /usr/include/enet/*

So, affected version (in the current portage tree) seems only to be enet-1.3.6 and enet-1.3.7, those version doesn't declare enet_socket_get_address.

Maybe is it time to ask stabilisation for enet-1.3.12.
Thanks for your interest in this bug.
Comment 3 Samuel Bauer 2015-06-05 19:51:46 UTC
It's obviously not an upstream bug as I thought, but related to enet

dolphin should depends on

|| ( <net-libs/enet-1.3.6
     >net-libs/enet-1.3.7
     !net-libs/enet )

It would then depend on API compatible version of enet, or the shipped one linked statically.
Comment 4 Devan Franchini (RETIRED) gentoo-dev 2015-06-06 03:37:55 UTC
Thank you for looking into this as well. It seems the issue lies with the build env, which looks to see if a local version of enet is installed and passes their required tests and if it does then it won't fall back on the pre-built version. However, since both yourself and me seem to be able to test this with our locally installed versions of enet (and fail if we have the incorrect version) then the build env must not have proper testing for enet.

Because of this I guess I should just remove the preservation of the bundled enet libs and just add the check to ensure it's pulling in the enet dependency correctly. I'll do some testing and it should be updated within a bit.
Comment 5 Devan Franchini (RETIRED) gentoo-dev 2015-06-06 03:58:59 UTC
Also, giving a look at the ebuild you'll see that we remove all bundled libs as much as possible when we can.
Comment 6 Samuel Bauer 2015-06-06 07:40:06 UTC
Thanks for the work on removing bundled libraries

Other todo about dolphin ebuild:
1/ git version now complains about <gcc-4.9 (builds fine with gcc-4.9.2)
2/ there's now a ENABLE_LTO option in the build system (add masked useflag ???)
Comment 7 Devan Franchini (RETIRED) gentoo-dev 2015-06-06 18:41:51 UTC
(In reply to Samuel BAUER from comment #6)
> Thanks for the work on removing bundled libraries
> 
> Other todo about dolphin ebuild:
> 1/ git version now complains about <gcc-4.9 (builds fine with gcc-4.9.2)
> 2/ there's now a ENABLE_LTO option in the build system (add masked useflag
> ???)

No worries about the gcc version requirements, I caught that yesterday too and fixed it. That should be okay with a sync now. And I'll check the ENABLE_LTO some time this upcoming week.