2016-08-12 15:26:31 +00:00
|
|
|
cdparanoia_deps = []
|
|
|
|
cdparanoia_found = false
|
2018-07-31 07:58:59 +00:00
|
|
|
cdparanoia_option = get_option('cdparanoia')
|
|
|
|
if cdparanoia_option.disabled()
|
|
|
|
subdir_done()
|
|
|
|
endif
|
2016-08-12 15:26:31 +00:00
|
|
|
|
|
|
|
# cdparanoia upstream has a pkg-config file only in post-10.2 SVN so far, no release yet
|
2018-07-31 07:58:59 +00:00
|
|
|
cdparanoia_dep = dependency('cdparanoia-3', version : '>=10.2', required : false)
|
2016-08-12 15:26:31 +00:00
|
|
|
if cdparanoia_dep.found()
|
|
|
|
cdparanoia_deps = [cdparanoia_dep]
|
|
|
|
cdparanoia_found = true
|
|
|
|
else
|
2018-07-31 07:58:59 +00:00
|
|
|
cdparanoia_dep = cc.find_library('cdda_paranoia', required : cdparanoia_option)
|
|
|
|
cdinterface_dep = cc.find_library('cdda_interface', required : cdparanoia_option)
|
2016-08-12 15:26:31 +00:00
|
|
|
if cdparanoia_dep.found() and cdinterface_dep.found()
|
|
|
|
cdparanoia_deps = [cdparanoia_dep, cdinterface_dep]
|
|
|
|
cdparanoia_found = true
|
|
|
|
if cc.has_header_symbol('cdda/cdda_interface.h', 'cdda_open')
|
|
|
|
core_conf.set('CDPARANOIA_HEADERS_IN_DIR', true)
|
|
|
|
elif cc.has_header_symbol('cdda_interface.h', 'cdda_open')
|
|
|
|
core_conf.set('CDPARANOIA_HEADERS_IN_DIR', false)
|
|
|
|
endif
|
|
|
|
endif
|
|
|
|
endif
|
|
|
|
|
2018-07-31 07:58:59 +00:00
|
|
|
if not cdparanoia_found and cdparanoia_option.enabled()
|
|
|
|
error('cdparanoia plugin enabled but library not found')
|
|
|
|
endif
|
|
|
|
|
2016-08-12 15:26:31 +00:00
|
|
|
if cdparanoia_found
|
2022-07-06 18:45:24 +00:00
|
|
|
# The cdda/cdda_interface.h header triggers GCC 12+ warnings which
|
|
|
|
# then trickle down when we build the plugin with -Werror.
|
|
|
|
# This wouldn't be needed usually, but cdparanoia's last release
|
|
|
|
# was in 2008.
|
|
|
|
extra_args = cc.get_supported_arguments([
|
|
|
|
'-Wno-discarded-qualifiers',
|
2023-09-08 15:03:17 +00:00
|
|
|
'-Wno-incompatible-pointer-types-discards-qualifiers',
|
2022-07-06 18:45:24 +00:00
|
|
|
'-Wno-unused-variable'
|
|
|
|
])
|
|
|
|
|
2016-08-12 15:26:31 +00:00
|
|
|
gstcdparanoia = library('gstcdparanoia',
|
|
|
|
['gstcdparanoiasrc.c'],
|
|
|
|
include_directories: [configinc, libsinc],
|
2022-07-06 18:45:24 +00:00
|
|
|
c_args : gst_plugins_base_args + extra_args,
|
2022-03-25 19:00:20 +00:00
|
|
|
dependencies : cdparanoia_deps + [audio_dep, gst_dep, gst_base_dep],
|
2016-08-12 15:26:31 +00:00
|
|
|
install : true,
|
|
|
|
install_dir : plugins_install_dir,
|
|
|
|
)
|
2018-10-22 06:17:24 +00:00
|
|
|
plugins += [gstcdparanoia]
|
2016-08-12 15:26:31 +00:00
|
|
|
endif
|