https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=296754

            Bug ID: 296754
           Summary: graphics/jpeg-turbo: Fails to build on riscv64
           Product: Ports & Packages
           Version: Latest
          Hardware: riscv
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: Individual Port(s)
          Assignee: [email protected]
          Reporter: [email protected]
                CC: [email protected]
                CC: [email protected]
             Flags: maintainer-feedback?([email protected])
          Assignee: [email protected]

Created attachment 272799
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=272799&action=edit
Proposed fix

3.1.4.1 had a bug that's since been fixed on the 3.1.x branch[1], which causes
it to fail to build on riscv64 with the following error:

> FAILED: [code=1] simd/simdcoverage 
> : && /usr/bin/cc -O2 -pipe -march=rv64imafdc -mabi=lp64d  -ffp-model=strict 
> -fstack-protector-strong -fno-strict-aliasing -O2 -pipe -march=rv64imafdc 
> -mabi=lp64d  -ffp-model=strict -fstack-protector-strong -fno-strict-aliasing  
> -DNDEBUG -Xlinker --dependency-file=simd/CMakeFiles/simdcoverage.dir/link.d 
> simd/CMakeFiles/simdcoverage.dir/simdcoverage.c.o -o simd/simdcoverage  
> libjpeg.a && :
> ld.lld: error: undefined symbol: jsimd_can_rgb_ycc
> >>> referenced by simdcoverage.c
> >>>               simd/CMakeFiles/simdcoverage.dir/simdcoverage.c.o:(main)
> 
> ld.lld: error: undefined symbol: jsimd_can_rgb_gray
> >>> referenced by simdcoverage.c
> >>>               simd/CMakeFiles/simdcoverage.dir/simdcoverage.c.o:(main)
> 
> ld.lld: error: undefined symbol: jsimd_can_ycc_rgb
> >>> referenced by simdcoverage.c
> >>>               simd/CMakeFiles/simdcoverage.dir/simdcoverage.c.o:(main)
> 
> ld.lld: error: undefined symbol: jsimd_can_ycc_rgb565
> >>> referenced by simdcoverage.c
> >>>               simd/CMakeFiles/simdcoverage.dir/simdcoverage.c.o:(main)
> 
> ld.lld: error: undefined symbol: jsimd_can_h2v1_downsample
> >>> referenced by simdcoverage.c
> >>>               simd/CMakeFiles/simdcoverage.dir/simdcoverage.c.o:(main)
> 
> ld.lld: error: undefined symbol: jsimd_can_h2v2_downsample
> >>> referenced by simdcoverage.c
> >>>               simd/CMakeFiles/simdcoverage.dir/simdcoverage.c.o:(main)
> 
> ld.lld: error: undefined symbol: jsimd_can_h2v1_upsample
> >>> referenced by simdcoverage.c
> >>>               simd/CMakeFiles/simdcoverage.dir/simdcoverage.c.o:(main)
> 
> ld.lld: error: undefined symbol: jsimd_can_h2v2_upsample
> >>> referenced by simdcoverage.c
> >>>               simd/CMakeFiles/simdcoverage.dir/simdcoverage.c.o:(main)
> 
> ld.lld: error: undefined symbol: jsimd_can_h2v1_fancy_upsample
> >>> referenced by simdcoverage.c
> >>>               simd/CMakeFiles/simdcoverage.dir/simdcoverage.c.o:(main)
> 
> ld.lld: error: undefined symbol: jsimd_can_h2v2_fancy_upsample
> >>> referenced by simdcoverage.c
> >>>               simd/CMakeFiles/simdcoverage.dir/simdcoverage.c.o:(main)
> 
> ld.lld: error: undefined symbol: jsimd_can_h2v1_merged_upsample
> >>> referenced by simdcoverage.c
> >>>               simd/CMakeFiles/simdcoverage.dir/simdcoverage.c.o:(main)
> 
> ld.lld: error: undefined symbol: jsimd_can_h2v2_merged_upsample
> >>> referenced by simdcoverage.c
> >>>               simd/CMakeFiles/simdcoverage.dir/simdcoverage.c.o:(main)
> 
> ld.lld: error: undefined symbol: jsimd_can_convsamp
> >>> referenced by simdcoverage.c
> >>>               simd/CMakeFiles/simdcoverage.dir/simdcoverage.c.o:(main)
> 
> ld.lld: error: undefined symbol: jsimd_can_convsamp_float
> >>> referenced by simdcoverage.c
> >>>               simd/CMakeFiles/simdcoverage.dir/simdcoverage.c.o:(main)
> 
> ld.lld: error: undefined symbol: jsimd_can_fdct_islow
> >>> referenced by simdcoverage.c
> >>>               simd/CMakeFiles/simdcoverage.dir/simdcoverage.c.o:(main)
> 
> ld.lld: error: undefined symbol: jsimd_can_fdct_ifast
> >>> referenced by simdcoverage.c
> >>>               simd/CMakeFiles/simdcoverage.dir/simdcoverage.c.o:(main)
> 
> ld.lld: error: undefined symbol: jsimd_can_fdct_float
> >>> referenced by simdcoverage.c
> >>>               simd/CMakeFiles/simdcoverage.dir/simdcoverage.c.o:(main)
> 
> ld.lld: error: undefined symbol: jsimd_can_quantize
> >>> referenced by simdcoverage.c
> >>>               simd/CMakeFiles/simdcoverage.dir/simdcoverage.c.o:(main)
> 
> ld.lld: error: undefined symbol: jsimd_can_quantize_float
> >>> referenced by simdcoverage.c
> >>>               simd/CMakeFiles/simdcoverage.dir/simdcoverage.c.o:(main)
> 
> ld.lld: error: undefined symbol: jsimd_can_idct_islow
> >>> referenced by simdcoverage.c
> >>>               simd/CMakeFiles/simdcoverage.dir/simdcoverage.c.o:(main)
> 
> ld.lld: error: too many errors emitted, stopping now (use --error-limit=0 to 
> see all errors)
> cc: error: linker command failed with exit code 1 (use -v to see invocation)
> ninja: build stopped: subcommand failed.
> *** Error code 1

I'd like to commit and MFH the attached patch to pull in this one-line targeted
fix.

[1]
https://github.com/libjpeg-turbo/libjpeg-turbo/commit/7cdbf9144d40d68d97c498f54dd88a68aee4e36d

-- 
You are receiving this mail because:
You are the assignee for the bug.

Reply via email to