Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 524272 - games-action/extreme-tuxracer-0.6.0 doesn't compile without joystick support
Summary: games-action/extreme-tuxracer-0.6.0 doesn't compile without joystick support
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Games (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo Games
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-10-02 12:50 UTC by kavol
Modified: 2014-10-02 15:10 UTC (History)
0 users

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description kavol 2014-10-02 12:50:22 UTC
As I have no joystick, I have the 'joystick' use flag disabled.

Trying to compile extreme-tuxracer, linker fails with:

x86_64-pc-linux-gnu-g++  -march=native -Os -pipe -I/usr/include/freetype2 -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -D_GNU_SOURCE=1 -D_REENTRANT -I/usr/include/SDL  -D_GNU_SOURCE=1 -D_REENTRANT -I/usr/include/SDL  -std=c++11  -Wl,-O1 -Wl,--as-needed -o etr audio.o common.o config_screen.o course.o course_render.o credits.o env.o event.o event_select.o font.o ft_font.o game_config.o game_ctrl.o game_over.o game_type_select.o gui.o help.o hud.o intro.o keyframe.o loading.o main.o mathlib.o newplayer.o ogl.o ogl_test.o particles.o paused.o physics.o quadtree.o race_select.o racing.o regist.o reset.o score.o splash_screen.o spx.o states.o textures.o tool_char.o tool_frame.o tools.o track_marks.o translation.o tux.o view.o winsys.o  -lGLU -lGL  -lfreetype -lz -lbz2 -lpng16 -lSDL -lpthread -lSDL_image -lSDL -lpthread  -lSDL_mixer -lSDL -lpthread  -lGL -lGLU
winsys.o: In function `CWinsys::InitJoystick()':
winsys.cpp:(.text+0x380): undefined reference to `SDL_NumJoysticks'
winsys.cpp:(.text+0x39e): undefined reference to `SDL_JoystickEventState'
winsys.cpp:(.text+0x3a5): undefined reference to `SDL_JoystickOpen'
winsys.o: In function `CWinsys::PrintJoystickInfo() const':
winsys.cpp:(.text+0x565): undefined reference to `SDL_JoystickName'
winsys.cpp:(.text+0x575): undefined reference to `SDL_JoystickNumButtons'
winsys.cpp:(.text+0x5d0): undefined reference to `SDL_JoystickNumAxes'
winsys.o: In function `CWinsys::CloseJoystick()':
winsys.cpp:(.text+0x4e2): undefined reference to `SDL_JoystickClose'
collect2: error: ld returned 1 exit status


Looking into the ebuild, IUSE is empty and there is:

RDEPEND="virtual/opengl
        virtual/glu
        media-libs/libsdl[X,sound,video]
        media-libs/sdl-mixer[vorbis]
        media-libs/sdl-image[png]
        media-libs/freetype:2"


If the code cannot be fixed to check for joystick support and properly disable it[*], then at least the dependencies should make the joystick support mandatory like this:

-        media-libs/libsdl[X,sound,video]
+        media-libs/libsdl[X,joystick,sound,video]

[*] to me, it looks like just a few ifdefs in winsys.cpp, but I have no clue about the configure magic, so no patch suggested, sorry ...
Comment 1 Mr. Bones. (RETIRED) gentoo-dev 2014-10-02 15:10:20 UTC
fixed.  thanks for the bug report.