From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTP id F18D141145 for ; Sun, 14 Aug 2022 21:55:10 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 9E7FE68B937; Mon, 15 Aug 2022 00:55:07 +0300 (EEST) Received: from btbn.de (btbn.de [136.243.74.85]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 3E7AD68B920 for ; Mon, 15 Aug 2022 00:55:01 +0300 (EEST) Received: from [authenticated] by btbn.de (Postfix) with ESMTPSA id B19892DA9B9 for ; Sun, 14 Aug 2022 23:55:00 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rothenpieler.org; s=mail; t=1660514100; bh=qGBTgGpwJadOLohhyl1dG4C3SZywGOcHsbIt+SFH934=; h=Date:Subject:To:References:From:In-Reply-To; b=hY2as4ai0CVWPfpI0y405Es7noPQGfzyIbg2uMaIQ3Y9YbhxN+Lwv8tkxjYA1E4Wj RLf5KLLUzGkat0YYks2mF65/ZyuVMYmKsiH421AO0X8Wfl5R+QIi57phmq6mUaMtjd XDHpv/X7JB+9+hPgjdWf5QUBdpawn/9al1+4xdI6zcRtjEiRY8vz8H+EydMie2128y AuI2TI4Ebywem5sOo36KUNPq3f0Fo7sd+UwURbWRxO7PTlCe4BPsOXKVilV0dssgEn G0UfFdIwfE6u8J/pn9AN11EXWQa/G2Pd/MFmZXB+sp/ffIwz7KBLonqyNh79FmB0FS DN/yALNTN0GpA== Message-ID: <7b370034-b55c-3f74-84b2-624e14b0f80b@rothenpieler.org> Date: Sun, 14 Aug 2022 23:54:59 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.1.2 To: ffmpeg-devel@ffmpeg.org References: <20220810204712.3123-1-timo@rothenpieler.org> <20220810204712.3123-8-timo@rothenpieler.org> <20220811204616.GF2088045@pb2> <20220811211659.GH2088045@pb2> Content-Language: en-US From: Timo Rothenpieler In-Reply-To: Subject: Re: [FFmpeg-devel] [PATCH 08/11] avutil/half2float: move non-inline init code out of header X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: On 11.08.2022 23:31, Andreas Rheinhardt wrote: > Michael Niedermayer: >> On Thu, Aug 11, 2022 at 10:50:10PM +0200, Andreas Rheinhardt wrote: >>> Michael Niedermayer: >>>> On Wed, Aug 10, 2022 at 10:47:09PM +0200, Timo Rothenpieler wrote: >>>>> --- >>>>> libavcodec/Makefile | 8 +++--- >>>>> libavcodec/exr.c | 2 +- >>>>> libavcodec/exrenc.c | 2 +- >>>>> libavcodec/float2half.c | 19 +++++++++++++ >>>>> libavcodec/half2float.c | 19 +++++++++++++ >>>>> libavcodec/pnmdec.c | 2 +- >>>>> libavcodec/pnmenc.c | 2 +- >>>>> libavutil/float2half.c | 53 ++++++++++++++++++++++++++++++++++ >>>>> libavutil/float2half.h | 36 ++--------------------- >>>>> libavutil/half2float.c | 63 +++++++++++++++++++++++++++++++++++++++++ >>>>> libavutil/half2float.h | 46 ++---------------------------- >>>>> 11 files changed, 166 insertions(+), 86 deletions(-) >>>>> create mode 100644 libavcodec/float2half.c >>>>> create mode 100644 libavcodec/half2float.c >>>>> create mode 100644 libavutil/float2half.c >>>>> create mode 100644 libavutil/half2float.c >>>>> >>>>> diff --git a/libavcodec/Makefile b/libavcodec/Makefile >>>>> index 029f1bad3d..cb80f73d99 100644 >>>>> --- a/libavcodec/Makefile >>>>> +++ b/libavcodec/Makefile >>>>> @@ -337,8 +337,8 @@ OBJS-$(CONFIG_EIGHTSVX_FIB_DECODER) += 8svx.o >>>>> OBJS-$(CONFIG_ESCAPE124_DECODER) += escape124.o >>>>> OBJS-$(CONFIG_ESCAPE130_DECODER) += escape130.o >>>>> OBJS-$(CONFIG_EVRC_DECODER) += evrcdec.o acelp_vectors.o lsp.o >>>>> -OBJS-$(CONFIG_EXR_DECODER) += exr.o exrdsp.o >>>>> -OBJS-$(CONFIG_EXR_ENCODER) += exrenc.o >>>>> +OBJS-$(CONFIG_EXR_DECODER) += exr.o exrdsp.o half2float.o >>>>> +OBJS-$(CONFIG_EXR_ENCODER) += exrenc.o float2half.o >>>>> OBJS-$(CONFIG_FASTAUDIO_DECODER) += fastaudio.o >>>>> OBJS-$(CONFIG_FFV1_DECODER) += ffv1dec.o ffv1.o >>>>> OBJS-$(CONFIG_FFV1_ENCODER) += ffv1enc.o ffv1.o >>>>> @@ -570,8 +570,8 @@ OBJS-$(CONFIG_PGMYUV_DECODER) += pnmdec.o pnm.o >>>>> OBJS-$(CONFIG_PGMYUV_ENCODER) += pnmenc.o >>>>> OBJS-$(CONFIG_PGSSUB_DECODER) += pgssubdec.o >>>>> OBJS-$(CONFIG_PGX_DECODER) += pgxdec.o >>>>> -OBJS-$(CONFIG_PHM_DECODER) += pnmdec.o pnm.o >>>>> -OBJS-$(CONFIG_PHM_ENCODER) += pnmenc.o >>>>> +OBJS-$(CONFIG_PHM_DECODER) += pnmdec.o pnm.o half2float.o >>>>> +OBJS-$(CONFIG_PHM_ENCODER) += pnmenc.o float2half.o >>>>> OBJS-$(CONFIG_PHOTOCD_DECODER) += photocd.o >>>>> OBJS-$(CONFIG_PICTOR_DECODER) += pictordec.o cga_data.o >>>>> OBJS-$(CONFIG_PIXLET_DECODER) += pixlet.o >>>>> diff --git a/libavcodec/exr.c b/libavcodec/exr.c >>>>> index 825354873d..a3582bfdd6 100644 >>>>> --- a/libavcodec/exr.c >>>>> +++ b/libavcodec/exr.c >>>>> @@ -2208,7 +2208,7 @@ static av_cold int decode_init(AVCodecContext *avctx) >>>>> float one_gamma = 1.0f / s->gamma; >>>>> avpriv_trc_function trc_func = NULL; >>>>> >>>>> - init_half2float_tables(&s->h2f_tables); >>>>> + ff_init_half2float_tables(&s->h2f_tables); >>>> [...] >>>>> diff --git a/libavutil/float2half.c b/libavutil/float2half.c >>>>> new file mode 100644 >>>>> index 0000000000..dba14cef5d >>>>> --- /dev/null >>>>> +++ b/libavutil/float2half.c >>>> [...] >>>>> +void ff_init_float2half_tables(float2half_tables *t) >>>> >>>> this will need avpriv or break linking with shared libs >>>> >>> >>> No, because this code is duplicated into all libraries that need it. >>> (In case of static linking, only one of the variants will be used >>> (namely the first one encountered in the link.) >> >> libswscale/libswscale.so: undefined reference to `ff_init_half2float_tables' >> libswscale/libswscale.so: undefined reference to `ff_init_half2float_tables' >> clang: error: linker command failed with exit code 1 (use -v to see invocation) >> Makefile:131: recipe for target 'ffplay_g' failed >> make: *** [ffplay_g] Error 1 >> make: *** Waiting for unfinished jobs.... >> clang: error: linker command failed with exit code 1 (use -v to see invocation) >> libswscale/libswscale.so: undefined reference to `ff_init_half2float_tables' >> Makefile:131: recipe for target 'ffprobe_g' failed >> make: *** [ffprobe_g] Error 1 >> clang: error: linker command failed with exit code 1 (use -v to see invocation) >> Makefile:131: recipe for target 'ffmpeg_g' failed >> make: *** [ffmpeg_g] Error 1 >> > > That is with the whole patchset applied, isn't it!? Duplicating the init > stuff into swscale has been forgotten. It must have gotten lost in some rebase of the whole set. Added back to the Makefile locally. _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".