Bug 203389 - games/ioquake3-devel not compiling (speex)
Summary: games/ioquake3-devel not compiling (speex)
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: amd64 Any
: --- Affects Only Me
Assignee: Roman Bogorodskiy
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-09-27 06:10 UTC by jakub_lach
Modified: 2015-10-26 16:44 UTC (History)
2 users (show)

See Also:
bugzilla: maintainer-feedback? (kamikaze)


Attachments
games/ioquake3-devel speex include fix (956 bytes, patch)
2015-10-25 13:33 UTC, Roman Bogorodskiy
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description jakub_lach 2015-09-27 06:10:25 UTC
code/libspeex/bits.c:109:6: error: conflicting types for 'speex_bits_read_from'
void speex_bits_read_from(SpeexBits *bits, char *chars, int len)
     ^
/usr/local/include/speex/speex_bits.h:80:6: note: previous declaration is here
void speex_bits_read_from(SpeexBits *bits, const char *bytes, int len);
     ^
code/libspeex/bits.c:156:6: error: conflicting types for 'speex_bits_read_whole_bytes'
void speex_bits_read_whole_bytes(SpeexBits *bits, char *chars, int nbytes)
     ^
/usr/local/include/speex/speex_bits.h:88:6: note: previous declaration is here
void speex_bits_read_whole_bytes(SpeexBits *bits, const char *bytes, int len);
     ^
2 errors generated.
Makefile:2520: recipe for target 'build/release-freebsd-x86_64/client/bits.o' failed
gmake[4]: *** [build/release-freebsd-x86_64/client/bits.o] Error 1
gmake[4]: *** Waiting for unfinished jobs....
gmake[4]: Leaving directory '/usr/obj/usr/ports/games/ioquake3-devel/work/ioquake3-devel-GIT2390'
Makefile:1242: recipe for target 'targets' failed
gmake[3]: *** [targets] Error 2
gmake[3]: Leaving directory '/usr/obj/usr/ports/games/ioquake3-devel/work/ioquake3-devel-GIT2390'
Makefile:1216: recipe for target 'release' failed
gmake[2]: *** [release] Error 2
gmake[2]: Leaving directory '/usr/obj/usr/ports/games/ioquake3-devel/work/ioquake3-devel-GIT2390'
===> Compilation failed unexpectedly.
Try to set MAKE_JOBS_UNSAFE=yes and rebuild before reporting the failure to
the maintainer.
*** Error code 1

Stop.
make[1]: stopped in /usr/ports/games/ioquake3-devel
*** Error code 1

I have no idea what's going on. I have speex.
Comment 1 jakub_lach 2015-09-27 06:12:40 UTC
It may be helpful that I have already working copy of ioquake3-devel in place, so at some point it was compiling for me (I wanted to get rid of opus now).
Comment 2 Roman Bogorodskiy freebsd_committer freebsd_triage 2015-10-25 13:33:18 UTC
Created attachment 162443 [details]
games/ioquake3-devel speex include fix

Occasionally spotted this PR. I fixed the similar problem in games/ioquake3 not so long ago: https://svnweb.freebsd.org/ports?view=revision&revision=398218

This happens because the build system tries to pick system's libspeex instead of its bundled one.

Please try the attached patch.
Comment 3 jakub_lach 2015-10-26 16:01:04 UTC
I was aware of the other problem, but it's relation to devel version somehow went over my head, patch works, thanks!
Comment 4 commit-hook freebsd_committer freebsd_triage 2015-10-26 16:43:09 UTC
A commit references this bug:

Author: novel
Date: Mon Oct 26 16:42:13 UTC 2015
New revision: 400192
URL: https://svnweb.freebsd.org/changeset/ports/400192

Log:
  games/ioquake3-devel: fix build with speex installed

  Adjust CFLAGS to pick bundled speex instead of one installed on the system, that is,
  apparently, incompatible with the bundled one.

  A similar fix was already done for games/ioquake3 in r398218.

  PR:		203389

Changes:
  head/games/ioquake3-devel/files/
  head/games/ioquake3-devel/files/patch-Makefile