From owner-freebsd-ports-bugs@FreeBSD.ORG Mon Apr 14 17:00:00 2014 Return-Path: Delivered-To: freebsd-ports-bugs@smarthost.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id B3C6D40E for ; Mon, 14 Apr 2014 17:00:00 +0000 (UTC) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 8ED9010A6 for ; Mon, 14 Apr 2014 17:00:00 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.8/8.14.8) with ESMTP id s3EH00Yo045264 for ; Mon, 14 Apr 2014 17:00:00 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.8/8.14.8/Submit) id s3EH00oW045263; Mon, 14 Apr 2014 17:00:00 GMT (envelope-from gnats) Resent-Date: Mon, 14 Apr 2014 17:00:00 GMT Resent-Message-Id: <201404141700.s3EH00oW045263@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-ports-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Matthieu Volat Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 69DF01C0 for ; Mon, 14 Apr 2014 16:52:30 +0000 (UTC) Received: from cgiserv.freebsd.org (cgiserv.freebsd.org [IPv6:2001:1900:2254:206a::50:4]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 553431FF1 for ; Mon, 14 Apr 2014 16:52:30 +0000 (UTC) Received: from cgiserv.freebsd.org ([127.0.1.6]) by cgiserv.freebsd.org (8.14.8/8.14.8) with ESMTP id s3EGqTa8013753 for ; Mon, 14 Apr 2014 16:52:29 GMT (envelope-from nobody@cgiserv.freebsd.org) Received: (from nobody@localhost) by cgiserv.freebsd.org (8.14.8/8.14.8/Submit) id s3EGqTGX013741; Mon, 14 Apr 2014 16:52:29 GMT (envelope-from nobody) Message-Id: <201404141652.s3EGqTGX013741@cgiserv.freebsd.org> Date: Mon, 14 Apr 2014 16:52:29 GMT From: Matthieu Volat To: freebsd-gnats-submit@FreeBSD.org X-Send-Pr-Version: www-3.1 Subject: ports/188621: Cannot build net/opal when multimedia/ffmpeg is installed X-BeenThere: freebsd-ports-bugs@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: Ports bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 14 Apr 2014 17:00:00 -0000 >Number: 188621 >Category: ports >Synopsis: Cannot build net/opal when multimedia/ffmpeg is installed >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Mon Apr 14 17:00:00 UTC 2014 >Closed-Date: >Last-Modified: >Originator: Matthieu Volat >Release: 10.0-RELEASE-p1 >Organization: >Environment: FreeBSD freedom.alkumuna.eu 10.0-RELEASE-p1 FreeBSD 10.0-RELEASE-p1 #0: Tue Apr 8 06:45:06 UTC 2014 root@amd64-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC amd64 >Description: Hi, When installed on a system where multimedia/ffmpeg is installed, net/opal will (rightly) pull multimedia/ffmpeg0 as a dependency, but will still mix up header files and build will fail : [CC] rfc2190.cxx In file included from In file included from rfc2429.cxx:23: In file included from ./rfc2429.h:26: ./h263-1998.h:118:23: error: unknown type name 'CodecID'; did you mean 'AVCodecID'? virtual bool Init(CodecID codecId); ^~~~~~~ AVCodecID /usr/local/include/libavcodec/avcodec.h:102:6: note: 'AVCodecID' declared here enum AVCodecID { ^ rfc2190.cxx:22: In file included from h263-1998.cxx:50: ./h263-1998.h:118:23: error: unknown type name 'CodecID'; did you mean 'AVCodecID'? virtual bool Init(CodecID codecId); ^~~~~~~ AVCodecID /usr/local/include/libavcodec/avcodec.h:102:6: note: 'AVCodecID' declared here enum AVCodecID { ^ In file included from ./rfc2190.h:25: ./h263-1998.h:118:23: error: unknown type name 'CodecID'; did you mean 'AVCodecID'? virtual bool Init(CodecID codecId); ^~~~~~~ AVCodecID /usr/local/include/libavcodec/avcodec.h:102:6: note: 'AVCodecID' declared here enum AVCodecID { ^ [CC] .common/dyna.cxx rfc2190.cxx:181:7: warning: add explicit braces to avoid dangling else [-Wdangling-else] PTRACE(2, "RFC2190", "Mismatch between encoder length (" << newLe... ^ /usr/ports/net/opal/work/opal-3.10.10/include/codec/opalplugin.hpp:91:9: note: expanded from macro 'PTRACE' } else (void)0 ^ In file included from h263-1998.cxx:58: ./../common/dyna.h:91:19: error: unknown type name 'CodecID'; did you mean 'AVCodecID'? FFMPEGLibrary(CodecID codec); ^~~~~~~ rfc2429.cxx:512:9: warning: add explicit braces to avoid dangling else [-Wdangling-else] PTRACE(6, "H.263-RFC2429", "Header\tRLNUM: " << headerBits.GetBits(4)); ^ /usr/ports/net/opal/work/opal-3.10.10/include/codec/opalplugin.hpp:91:9: note: expanded from macro 'PTRACE' } else (void)0 ^ AVCodecID /usr/local/include/libavcodec/avcodec.h:102:6: note: 'AVCodecID' declared here enum AVCodecID { ^ In file included from h263-1998.cxx:58: ./../common/dyna.h:96:38: error: ISO C++ forbids forward references to 'enum' types AVCodec *AvcodecFindEncoder(enum CodecID id); ^ ./../common/dyna.h:120:13: error: field has incomplete type 'CodecID' CodecID m_codec; ^ ./../common/dyna.h:96:38: note: forward declaration of 'CodecID' AVCodec *AvcodecFindEncoder(enum CodecID id); ^ rfc2429.cxx:539:5: warning: add 1 warning and 1 error generated. explicit braces to avoid dangling else [-Wdangling-else] PTRACE(6, "H.263-RFC2429", "Header\tTRB: " << headerBits.GetBits (3... ^ /usr/ports/net/opal/work/opal-3.10.10/include/codec/opalplugin.hpp:91:9: note: expanded from macro 'PTRACE' } else (void)0 ^ gmake[7]: *** [/usr/ports/net/opal/work/opal-3.10.10/plugins/../lib_FreeBSD_amd64/plugins/h263_ffmpeg/rfc2190.o] Error 1 gmake[7]: *** Waiting for unfinished jobs.... In file included from ../common/dyna.cxx:40: ./common/dyna.h:91:19: error: unknown type name 'CodecID'; did you mean 'AVCodecID'? FFMPEGLibrary(CodecID codec); ^~~~~~~ AVCodecID /usr/local/include/libavcodec/avcodec.h:102:6: note: 'AVCodecID' declared here enum AVCodecID { ^ In file included from ../common/dyna.cxx:40: ./common/dyna.h:96:38: error: ISO C++ forbids forward references to 'enum' types AVCodec *AvcodecFindEncoder(enum CodecID id); ^ ./common/dyna.h:120:13: error: field has incomplete type 'CodecID' CodecID m_codec; ^ ./common/dyna.h:96:38: note: forward declaration of 'CodecID' AVCodec *AvcodecFindEncoder(enum CodecID id); ^ ./common/dyna.cxx:179:38: warning: unused parameter 'avcl' [-Wunused-parameter] static void logCallbackFFMPEG(void * avcl, int severity, const char* fm... ^ ./common/dyna.cxx:213:16: error: out-of-line definition of 'FFMPEGLibrary' does not match any declaration in 'FFMPEGLibrary' FFMPEGLibrary::FFMPEGLibrary(CodecID codec) ^~~~~~~~~~~~~ ./common/dyna.cxx:213:38: error: variable has incomplete type 'CodecID' FFMPEGLibrary::FFMPEGLibrary(CodecID codec) ^ ./common/dyna.h:96:38: note: forward declaration of 'CodecID' AVCodec *AvcodecFindEncoder(enum CodecID id); ^ h263-1998.cxx:206:32: error: out-of-line definition of 'Init' does not match any declaration in 'H263_Base_EncoderContext' bool H263_Base_EncoderContext::Init(CodecID codecId) ^~~~ h263-1998.cxx:206:45: error: variable has incomplete type 'CodecID' bool H263_Base_EncoderContext::Init(CodecID codecId) ^ ./../common/dyna.h:96:38: note: forward declaration of 'CodecID' AVCodec *AvcodecFindEncoder(enum CodecID id); ^ 2 warnings and 1 error generated. gmake[7]: *** [/usr/ports/net/opal/work/opal-3.10.10/plugins/../lib_FreeBSD_amd64/plugins/h263_ffmpeg/rfc2429.o] Error 1 ./common/dyna.cxx:351:57: error: variable has incomplete type 'enum CodecID' AVCodec *FFMPEGLibrary::AvcodecFindEncoder(enum CodecID id) ^ ./common/dyna.h:96:38: note: forward declaration of 'CodecID' AVCodec *AvcodecFindEncoder(enum CodecID id); ^ ./common/dyna.cxx:351:57: warning: unused parameter 'id' [-Wunused-parameter] AVCodec *FFMPEGLibrary::AvcodecFindEncoder(enum CodecID id) ^ ./common/dyna.cxx:356:57: error: variable has incomplete type 'enum CodecID' AVCodec *FFMPEGLibrary::AvcodecFindDecoder(enum CodecID id) ^ ./common/dyna.h:96:38: note: forward declaration of 'CodecID' AVCodec *AvcodecFindEncoder(enum CodecID id); ^ ./common/dyna.cxx:356:57: warning: unused parameter 'id' [-Wunused-parameter] AVCodec *FFMPEGLibrary::AvcodecFindDecoder(enum CodecID id) ^ h263-1998.cxx:320:27: error: use of undeclared identifier 'CODEC_FLAG_H263P_UMV' m_context->flags |= CODEC_FLAG_H263P_UMV; ^ h263-1998.cxx:322:28: error: use of undeclared identifier 'CODEC_FLAG_H263P_UMV' m_context->flags &= ~CODEC_FLAG_H263P_UMV; ^ 3 warnings and 7 errors generated. gmake[7]: *** [/usr/ports/net/opal/work/opal-3.10.10/plugins/../lib_FreeBSD_amd64/plugins/h263_ffmpeg/dyna.o] Error 1 h263-1998.cxx:363:27: error: use of undeclared identifier 'CODEC_FLAG_H263P_SLICE_STRUCT' m_context->flags |= CODEC_FLAG_H263P_SLICE_STRUCT; ^ h263-1998.cxx:365:28: error: use of undeclared identifier 'CODEC_FLAG_H263P_SLICE_STRUCT' m_context->flags &= ~CODEC_FLAG_H263P_SLICE_STRUCT; ^ h263-1998.cxx:373:27: error: use of undeclared identifier 'CODEC_FLAG_H263P_AIV' m_context->flags |= CODEC_FLAG_H263P_AIV; ^ h263-1998.cxx:375:28: error: use of undeclared identifier 'CODEC_FLAG_H263P_AIV' m_context->flags &= ~CODEC_FLAG_H263P_AIV; ^ h263-1998.cxx:455:29: error: use of undeclared identifier 'CODEC_FLAG_H263P_UMV' CODEC_TRACER_FLAG(tracer, CODEC_FLAG_H263P_UMV); ^ h263-1998.cxx:454:62: note: expanded from macro 'CODEC_TRACER_FLAG' PTRACE(4, m_prefix, #flag " is " << ((m_context->flags & flag) ? "enable... ^ /usr/ports/net/opal/work/opal-3.10.10/include/codec/opalplugin.hpp:89:42: note: expanded from macro 'PTRACE' std::ostringstream strm; strm << args; \ ^ h263-1998.cxx:456:29: error: use of undeclared identifier 'CODEC_FLAG_OBMC' CODEC_TRACER_FLAG(tracer, CODEC_FLAG_OBMC); ^ h263-1998.cxx:454:62: note: expanded from macro 'CODEC_TRACER_FLAG' PTRACE(4, m_prefix, #flag " is " << ((m_context->flags & flag) ? "enable... ^ /usr/ports/net/opal/work/opal-3.10.10/include/codec/opalplugin.hpp:89:42: note: expanded from macro 'PTRACE' std::ostringstream strm; strm << args; \ ^ h263-1998.cxx:458:29: error: use of undeclared identifier 'CODEC_FLAG_H263P_SLICE_STRUCT' CODEC_TRACER_FLAG(tracer, CODEC_FLAG_H263P_SLICE_STRUCT) ^ h263-1998.cxx:454:62: note: expanded from macro 'CODEC_TRACER_FLAG' PTRACE(4, m_prefix, #flag " is " << ((m_context->flags & flag) ? "enable... ^ /usr/ports/net/opal/work/opal-3.10.10/include/codec/opalplugin.hpp:89:42: note: expanded from macro 'PTRACE' std::ostringstream strm; strm << args; \ ^ h263-1998.cxx:460:29: error: use of undeclared identifier 'CODEC_FLAG_H263P_AIV' CODEC_TRACER_FLAG(tracer, CODEC_FLAG_H263P_AIV); ^ h263-1998.cxx:454:62: note: expanded from macro 'CODEC_TRACER_FLAG' PTRACE(4, m_prefix, #flag " is " << ((m_context->flags & flag) ? "enable... ^ /usr/ports/net/opal/work/opal-3.10.10/include/codec/opalplugin.hpp:89:42: note: expanded from macro 'PTRACE' std::ostringstream strm; strm << args; \ ^ h263-1998.cxx:524:72: error: use of undeclared identifier 'FF_I_TYPE' ...= (flags & PluginCodec_CoderForceIFrame) ? FF_I_TYPE : AV_PICTURE_TYPE_N... ^ h263-1998.cxx:606:24: error: use of undeclared identifier 'CODEC_FLAG_H263P_UMV' m_context->flags &= ~CODEC_FLAG_H263P_UMV; ^ h263-1998.cxx:611:24: error: use of undeclared identifier 'CODEC_FLAG_H263P_AIV' m_context->flags &= ~CODEC_FLAG_H263P_AIV; ^ fatal error: too many errors emitted, stopping now [-ferror-limit=] 20 errors generated. gmake[7]: *** [/usr/ports/net/opal/work/opal-3.10.10/plugins/../lib_FreeBSD_amd64/plugins/h263_ffmpeg/h263-1998.o] Error 1 gmake[7]: Leaving directory `/usr/ports/net/opal/work/opal-3.10.10/plugins/video/H.263-1998' gmake[6]: *** [all] Error 2 gmake[6]: Leaving directory `/usr/ports/net/opal/work/opal-3.10.10/plugins' gmake[5]: *** [subdirs] Error 2 gmake[5]: Leaving directory `/usr/ports/net/opal/work/opal-3.10.10' gmake[4]: *** [opt] Error 2 gmake[4]: Leaving directory `/usr/ports/net/opal/work/opal-3.10.10' ===> Compilation failed unexpectedly. Try to set MAKE_JOBS_UNSAFE=yes and rebuild before reporting the failure to the maintainer. *** Error code 1 Stop. make[3]: stopped in /usr/ports/net/opal *** Error code 1 Stop. make[2]: stopped in /usr/ports/net/opal *** Error code 1 Stop. make[1]: stopped in /usr/ports/net-im/ekiga *** Error code 1 Stop. make: stopped in /usr/ports/net-im/ekiga >How-To-Repeat: On a system without net/opal: 1. Install multimedia/ffmpeg 2. Check that opal build will have the FFMPEG and X.264 options 3. make build >Fix: Not trivial: I think the best way would be to patch files including ffmpeg headers to use the ffmpeg0 prefix before libav*.h Another way would be to ensure -I${LOCALBASE}/include/ffmpeg0 is prepended before any other flag, but given the complexity of the build system, I'm not sure it is feasible... >Release-Note: >Audit-Trail: >Unformatted: