Bug#827302: v4l-utils: FTBFS: jpeg_memsrcdest.h:6:1: error: conflicting types for 'jpeg_mem_src'

2016-06-15 Thread Bill Allombert
On Wed, Jun 15, 2016 at 02:09:05PM +0200, Gregor Jasny wrote:
> Hello Bill and Ondřej,
> 
> Do you know how to properly detect jpeg_mem_src presence in libjpeg(turbo)?
> 
> Since the transition to jpegturbo my package FTBFS:
> 
> On 14/06/16 20:42, Chris Lamb wrote:
> >  In file included from jpeg.c:28:0:
> >  jpeg_memsrcdest.h:6:1: error: conflicting types for 'jpeg_mem_src'
> >   jpeg_mem_src (j_decompress_ptr cinfo, unsigned char * buffer,
> >   ^
> >  In file included from libv4lconvert-priv.h:31:0,
> >   from jpeg.c:26:
> >  /usr/include/jpeglib.h:923:14: note: previous declaration of 
> > 'jpeg_mem_src' was here
> >   EXTERN(void) jpeg_mem_src (j_decompress_ptr cinfo,
> >^
> 
> Would it make sense to change the check in the emulation layer [1] from
> 
> #if JPEG_LIB_VERSION < 80

As far as IJG jpeg  is converned, the above is correct.
I do not know for turbo.

Cheers,
-- 
Bill. 

Imagine a large red swirl here. 



Bug#827302: v4l-utils: FTBFS: jpeg_memsrcdest.h:6:1: error: conflicting types for 'jpeg_mem_src'

2016-06-15 Thread Ondřej Surý
Hi Gregor,

[removing Bill Allombert from Cc as he was not involved in the
transition to LJT]

$ grep -r MEM_SRCDST_SUPPORTED /usr/include
/usr/include/x86_64-linux-gnu/jconfig.h:#define MEM_SRCDST_SUPPORTED 1

so

#if JPEG_LIB_VERSION < 80 && !defined(MEM_SRCDST_SUPPORTED)

should be sufficient.

Cheers,
-- 
Ondřej Surý 
Knot DNS (https://www.knot-dns.cz/) – a high-performance DNS server
Knot Resolver (https://www.knot-resolver.cz/) – secure, privacy-aware,
fast DNS(SEC) resolver

On Wed, Jun 15, 2016, at 14:09, Gregor Jasny wrote:
> Hello Bill and Ondřej,
> 
> Do you know how to properly detect jpeg_mem_src presence in
> libjpeg(turbo)?
> 
> Since the transition to jpegturbo my package FTBFS:
> 
> On 14/06/16 20:42, Chris Lamb wrote:
> >   In file included from jpeg.c:28:0:
> >   jpeg_memsrcdest.h:6:1: error: conflicting types for 'jpeg_mem_src'
> >jpeg_mem_src (j_decompress_ptr cinfo, unsigned char * buffer,
> >^
> >   In file included from libv4lconvert-priv.h:31:0,
> >from jpeg.c:26:
> >   /usr/include/jpeglib.h:923:14: note: previous declaration of 
> > 'jpeg_mem_src' was here
> >EXTERN(void) jpeg_mem_src (j_decompress_ptr cinfo,
> > ^
> 
> Would it make sense to change the check in the emulation layer [1] from
> 
> #if JPEG_LIB_VERSION < 80
> 
> to
> 
> #if JPEG_LIB_VERSION < 80 && !defined(MEM_SRCDST_SUPPORTED)
> 
> or should I add a check during autoconf?
> 
> Thanks,
> Gregor
> 
> [1] 
> https://git.linuxtv.org/v4l-utils.git/tree/lib/libv4lconvert/jpeg_memsrcdest.h



Bug#827302: v4l-utils: FTBFS: jpeg_memsrcdest.h:6:1: error: conflicting types for 'jpeg_mem_src'

2016-06-15 Thread Gregor Jasny

Hello Bill and Ondřej,

Do you know how to properly detect jpeg_mem_src presence in libjpeg(turbo)?

Since the transition to jpegturbo my package FTBFS:

On 14/06/16 20:42, Chris Lamb wrote:

  In file included from jpeg.c:28:0:
  jpeg_memsrcdest.h:6:1: error: conflicting types for 'jpeg_mem_src'
   jpeg_mem_src (j_decompress_ptr cinfo, unsigned char * buffer,
   ^
  In file included from libv4lconvert-priv.h:31:0,
   from jpeg.c:26:
  /usr/include/jpeglib.h:923:14: note: previous declaration of 'jpeg_mem_src' 
was here
   EXTERN(void) jpeg_mem_src (j_decompress_ptr cinfo,
^


Would it make sense to change the check in the emulation layer [1] from

#if JPEG_LIB_VERSION < 80

to

#if JPEG_LIB_VERSION < 80 && !defined(MEM_SRCDST_SUPPORTED)

or should I add a check during autoconf?

Thanks,
Gregor

[1] 
https://git.linuxtv.org/v4l-utils.git/tree/lib/libv4lconvert/jpeg_memsrcdest.h




Bug#827302: v4l-utils: FTBFS: jpeg_memsrcdest.h:6:1: error: conflicting types for 'jpeg_mem_src'

2016-06-14 Thread Chris Lamb
Source: v4l-utils
Version: 1.10.0-2
Severity: serious
Justification: fails to build from source
User: reproducible-bui...@lists.alioth.debian.org
Usertags: ftbfs
X-Debbugs-Cc: reproducible-bui...@lists.alioth.debian.org

Dear Maintainer,

v4l-utils fails to build from source in unstable/amd64:

  [..]

  checking for inttypes.h... yes
  checking for stdint.h... yes
  checking for unistd.h... yes
  checking minix/config.h usability... no
  checking minix/config.h presence... no
  checking for minix/config.h... no
  checking whether it is safe to define __EXTENSIONS__... yes
  checking for a BSD-compatible install... /usr/bin/install -c
  checking whether build environment is sane... yes
  checking for a thread-safe mkdir -p... /bin/mkdir -p
  checking for gawk... no
  checking for mawk... mawk
  checking whether make sets $(MAKE)... yes
  checking for style of include used by make... GNU
  checking whether make supports nested variables... yes
  checking dependency style of gcc... none
  checking whether to enable maintainer-specific portions of Makefiles... no
  checking whether make supports nested variables... (cached) yes
  checking for g++... g++
  checking whether we are using the GNU C++ compiler... yes
  checking whether g++ accepts -g... yes
  checking dependency style of g++... none
  checking for gcc option to accept ISO C99... none needed
  checking build system type... x86_64-pc-linux-gnu
  checking host system type... x86_64-pc-linux-gnu
  checking how to print strings... printf
  checking for a sed that does not truncate output... /bin/sed
  checking for fgrep... /bin/grep -F
  checking for ld used by gcc... /usr/bin/ld
  checking if the linker (/usr/bin/ld) is GNU ld... yes
  checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
  checking the name lister (/usr/bin/nm -B) interface... BSD nm
  checking whether ln -s works... yes
  checking the maximum length of command line arguments... 1572864
  checking how to convert x86_64-pc-linux-gnu file names to x86_64-pc-linux-gnu 
format... func_convert_file_noop
  checking how to convert x86_64-pc-linux-gnu file names to toolchain format... 
func_convert_file_noop
  checking for /usr/bin/ld option to reload object files... -r
  checking for objdump... objdump
  checking how to recognize dependent libraries... pass_all
  checking for dlltool... no
  checking how to associate runtime and link libraries... printf %s\n
  checking for ar... ar
  checking for archiver @FILE support... @
  checking for strip... strip
  checking for ranlib... ranlib
  checking command to parse /usr/bin/nm -B output from gcc object... ok
  checking for sysroot... no
  checking for a working dd... /bin/dd
  checking how to truncate binary pipes... /bin/dd bs=4096 count=1
  checking for mt... no
  checking if : is a manifest tool... no
  checking for dlfcn.h... yes
  checking for objdir... .libs
  checking if gcc supports -fno-rtti -fno-exceptions... no
  checking for gcc option to produce PIC... -fPIC -DPIC
  checking if gcc PIC flag -fPIC -DPIC works... yes
  checking if gcc static flag -static works... yes
  checking if gcc supports -c -o file.o... yes
  checking if gcc supports -c -o file.o... (cached) yes
  checking whether the gcc linker (/usr/bin/ld -m elf_x86_64) supports shared 
libraries... yes
  checking whether -lc should be explicitly linked in... no
  checking dynamic linker characteristics... GNU/Linux ld.so
  checking how to hardcode library paths into programs... immediate
  checking whether stripping libraries is possible... yes
  checking if libtool supports shared libraries... yes
  checking whether to build shared libraries... yes
  checking whether to build static libraries... yes
  checking how to run the C++ preprocessor... g++ -E
  checking for ld used by g++... /usr/bin/ld -m elf_x86_64
  checking if the linker (/usr/bin/ld -m elf_x86_64) is GNU ld... yes
  checking whether the g++ linker (/usr/bin/ld -m elf_x86_64) supports shared 
libraries... yes
  checking for g++ option to produce PIC... -fPIC -DPIC
  checking if g++ PIC flag -fPIC -DPIC works... yes
  checking if g++ static flag -static works... yes
  checking if g++ supports -c -o file.o... yes
  checking if g++ supports -c -o file.o... (cached) yes
  checking whether the g++ linker (/usr/bin/ld -m elf_x86_64) supports shared 
libraries... yes
  checking dynamic linker characteristics... (cached) GNU/Linux ld.so
  checking how to hardcode library paths into programs... immediate
  checking whether ln -s works... yes
  checking for pkg-config... /usr/bin/pkg-config
  checking pkg-config is at least version 0.9.0... yes
  checking for doxygen... /usr/bin/doxygen
  checking for perl... /usr/bin/perl
  checking for dot... /usr/bin/dot
  checking whether NLS is requested... yes
  checking for msgfmt... /usr/bin/msgfmt
  checking for gmsgfmt... /usr/bin/msgfmt
  checking for xgettext... /usr/bin/xgettext
  checking for msgmerge... /usr/bin/msgmerge
  checking for ld used by gcc...