X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=meson_options.txt;h=7c39018d67793cb52dd9dbf3f66dba2a013c969a;hb=HEAD;hp=4b8eaa3616cba15d4efeba47777593f3993eea4b;hpb=e9f5d94c9304aaae4ffc27ffeae1f7c49c4d3e57;p=platform%2Fupstream%2Fgstreamer.git diff --git a/meson_options.txt b/meson_options.txt index 4b8eaa3..7c39018 100644 --- a/meson_options.txt +++ b/meson_options.txt @@ -1,207 +1,64 @@ -option('gst_play_tests', type: 'boolean', value: false, - description: 'Enable GstPlay tests that need network access') +# Subproject options +option('python', type : 'feature', value : 'auto') +option('libav', type : 'feature', value : 'enabled') +option('libnice', type : 'feature', value : 'auto') +option('base', type : 'feature', value : 'enabled') +option('good', type : 'feature', value : 'enabled') +option('ugly', type : 'feature', value : 'enabled') +option('bad', type : 'feature', value : 'enabled') +option('devtools', type : 'feature', value : 'auto') +option('ges', type : 'feature', value : 'enabled') +option('rtsp_server', type : 'feature', value : 'enabled') +option('omx', type : 'feature', value : 'enabled') +option('vaapi', type : 'feature', value : 'disabled') +option('sharp', type : 'feature', value : 'disabled') +option('rs', type : 'feature', value : 'disabled') +option('gst-examples', type : 'feature', value : 'auto', description : 'Build gst-examples') +option('tls', type : 'feature', value : 'auto', description : 'TLS support using glib-networking') +option('qt5', type : 'feature', value : 'auto', description : 'Qt5 Support') +option('tools', type : 'feature', value : 'enabled', description : 'Build command line tools') -# Feature options for plugins without external deps -option('accurip', type : 'feature', value : 'auto') -option('adpcmdec', type : 'feature', value : 'auto') -option('adpcmenc', type : 'feature', value : 'auto') -option('aiff', type : 'feature', value : 'auto') -option('asfmux', type : 'feature', value : 'auto') -option('audiobuffersplit', type : 'feature', value : 'auto') -option('audiofxbad', type : 'feature', value : 'auto') -option('audiolatency', type : 'feature', value : 'auto') -option('audiomixmatrix', type : 'feature', value : 'auto') -option('audiovisualizers', type : 'feature', value : 'auto') -option('autoconvert', type : 'feature', value : 'auto') -option('bayer', type : 'feature', value : 'auto') -option('camerabin2', type : 'feature', value : 'auto') -option('coloreffects', type : 'feature', value : 'auto') -option('debugutils', type : 'feature', value : 'auto') -option('dvbsubenc', type : 'feature', value : 'auto') -option('dvbsuboverlay', type : 'feature', value : 'auto') -option('dvdspu', type : 'feature', value : 'auto') -option('faceoverlay', type : 'feature', value : 'auto') -option('festival', type : 'feature', value : 'auto') -option('fieldanalysis', type : 'feature', value : 'auto') -option('freeverb', type : 'feature', value : 'auto') -option('frei0r', type : 'feature', value : 'auto') -option('gaudieffects', type : 'feature', value : 'auto') -option('gdp', type : 'feature', value : 'auto') -option('geometrictransform', type : 'feature', value : 'auto') -option('id3tag', type : 'feature', value : 'auto') -option('inter', type : 'feature', value : 'auto') -option('interlace', type : 'feature', value : 'auto') -option('ivfparse', type : 'feature', value : 'auto') -option('ivtc', type : 'feature', value : 'auto') -option('jp2kdecimator', type : 'feature', value : 'auto') -option('jpegformat', type : 'feature', value : 'auto') -option('librfb', type : 'feature', value : 'auto') -option('midi', type : 'feature', value : 'auto') -option('mpegdemux', type : 'feature', value : 'auto') -option('mpegpsmux', type : 'feature', value : 'auto') -option('mpegtsdemux', type : 'feature', value : 'auto') -option('mpegtsmux', type : 'feature', value : 'auto') -option('mxf', type : 'feature', value : 'auto') -option('netsim', type : 'feature', value : 'auto') -option('onvif', type : 'feature', value : 'auto') -option('pcapparse', type : 'feature', value : 'auto') -option('pnm', type : 'feature', value : 'auto') -option('proxy', type : 'feature', value : 'auto') -option('qroverlay', type : 'feature', value : 'auto') -option('rawparse', type : 'feature', value : 'auto') -option('removesilence', type : 'feature', value : 'auto') -option('rist', type : 'feature', value : 'auto') -option('rtmp2', type : 'feature', value : 'auto') -option('rtp', type : 'feature', value : 'auto') -option('sdp', type : 'feature', value : 'auto') -option('segmentclip', type : 'feature', value : 'auto') -option('siren', type : 'feature', value : 'auto') -option('smooth', type : 'feature', value : 'auto') -option('speed', type : 'feature', value : 'auto') -option('subenc', type : 'feature', value : 'auto') -option('switchbin', type : 'feature', value : 'auto') -option('timecode', type : 'feature', value : 'auto') -option('videofilters', type : 'feature', value : 'auto') -option('videoframe_audiolevel', type : 'feature', value : 'auto') -option('videoparsers', type : 'feature', value : 'auto') -option('videosignal', type : 'feature', value : 'auto') -option('vmnc', type : 'feature', value : 'auto') -option('y4m', type : 'feature', value : 'auto') +# Build for fuzzing +option('oss_fuzz', type : 'feature', value : 'disabled', + description: 'Use fuzzing build environment') -# Feature options for libraries that need external deps -option('opencv', type : 'feature', value : 'auto', description : 'OpenCV computer vision library support') +# Other options +option('custom_subprojects', type : 'string', value : '', description : 'Comma-separated project names') +option('gst-full-libraries', type : 'array', value : [], + description : '''List of libraries to expose in gstreamer-full's ABI. gstreamer, glib and gobject are always included.''') +option('gst-full-version-script', type : 'string', value: 'data/misc/gstreamer-full-default.map', + description : 'path of the version script to be used by the linker, see https://www.gnu.org/software/gnulib/manual/html_node/LD-Version-Scripts.html') +option('gst-full-plugins', type : 'string', value : '*', + description : '''List of plugins to expose in gstreamer-full's ABI with the syntax plugin1;plugin2. By default '*' will export all plugins enabled by the build process.''') +option('gst-full-elements', type : 'string', value : '', + description : '''List of elements to expose in gstreamer-full's ABI with the syntax plugin1;plugin2:element1,element2. By default '' will export all element of the enabled plugin.''') +option('gst-full-typefind-functions', type : 'string', value : '', + description : '''List of typefind functions to expose in gstreamer-full's ABI with the syntax plugin:func1,func2. By default '' will export all typefind functions of the enabled plugin.''') +option('gst-full-device-providers', type : 'string', value : '', + description : '''List of device providers to expose in gstreamer-full's ABI with the syntax plugin1:dp1;plugin2:dp1:dp2. By default '' will export all device provider of the enabled plugin.''') +option('gst-full-dynamic-types', type : 'string', value : '', + description : '''List of dynamic types to expose in gstreamer-full's ABI with the syntax plugin:dt1,dt2. By default '' will export all device provider of the enabled plugin.''') +option('orc-source', type: 'combo', choices: ['system', 'subproject', 'auto'], value: 'subproject') -# Feature options for optional deps in plugins -option('wayland', type : 'feature', value : 'auto', description : 'Wayland plugin/library, support in the Vulkan plugin') -option('x11', type : 'feature', value : 'auto', description : 'X11 support in Vulkan, GL and rfb plugins') +# License-related feature options +option('gpl', type: 'feature', value: 'disabled', + description: 'Allow build of plugins that have (A)GPL-licensed dependencies') -# Feature options for plugins that need external deps -option('aom', type : 'feature', value : 'auto', description : 'AOM AV1 video codec plugin') -option('avtp', type : 'feature', value : 'auto', description : 'Audio/Video Transport Protocol (AVTP) plugin') -option('androidmedia', type : 'feature', value : 'auto', description : 'Video capture and codec plugins for Android') -option('applemedia', type : 'feature', value : 'auto', description : 'Video capture and codec access plugins for macOS and iOS') -option('assrender', type : 'feature', value : 'auto', description : 'ASS/SSA subtitle renderer plugin') -option('bluez', type : 'feature', value : 'auto', description : 'Bluetooth audio A2DP/AVDTP sink, AVDTP source plugin') -option('bs2b', type : 'feature', value : 'auto', description : 'Bauer stereophonic-to-binaural audio plugin') -option('bz2', type : 'feature', value : 'auto', description : 'bz2 stream encoder and decoder plugin') -option('chromaprint', type : 'feature', value : 'auto', description : 'Chromaprint fingerprint audio plugin') -option('closedcaption', type : 'feature', value : 'auto', description : 'Closed caption extractor, decoder, and overlay plugin') -option('colormanagement', type : 'feature', value : 'auto', description : 'Color management correction plugin') -option('curl', type : 'feature', value : 'auto', description : 'cURL network source and sink plugin') -option('curl-ssh2', type : 'feature', value : 'auto', description : 'cURL network source and sink plugin libssh2 support') -option('d3dvideosink', type : 'feature', value : 'auto', description : 'Direct3D video sink plugin') -option('d3d11', type : 'feature', value : 'auto', description : 'Direct3D11 plugin') -option('dash', type : 'feature', value : 'auto', description : 'DASH demuxer plugin') -option('dc1394', type : 'feature', value : 'auto', description : 'libdc1394 IIDC camera source plugin') -option('decklink', type : 'feature', value : 'auto', description : 'DeckLink audio/video source/sink plugin') -option('directfb', type : 'feature', value : 'auto', description : 'DirectFB video sink plugin') -option('directsound', type : 'feature', value : 'auto', description : 'Directsound audio source plugin') -option('dtls', type : 'feature', value : 'auto', description : 'DTLS encoder and decoder plugin') -option('dts', type : 'feature', value : 'auto', description : 'DTS audio decoder plugin') -option('dvb', type : 'feature', value : 'auto', description : 'DVB video bin and source plugin') -option('faac', type : 'feature', value : 'auto', description : 'Free AAC audio encoder plugin') -option('faad', type : 'feature', value : 'auto', description : 'Free AAC audio decoder plugin') -option('fbdev', type : 'feature', value : 'auto', description : 'Framebuffer video sink plugin') -option('fdkaac', type : 'feature', value : 'auto', description : 'Fraunhofer AAC audio codec plugin') -option('flite', type : 'feature', value : 'auto', description : 'Flite speech synthesizer source plugin') -option('fluidsynth', type : 'feature', value : 'auto', description : 'Fluidsynth MIDI decoder plugin') -option('gl', type : 'feature', value : 'auto', description : 'GStreamer OpenGL integration support (used by various plugins)') -option('gme', type : 'feature', value : 'auto', description : 'libgme gaming console music file decoder plugin') -option('gs', type : 'feature', value : 'auto', description : 'Google Cloud Storage source and sink plugin') -option('gsm', type : 'feature', value : 'auto', description : 'GSM encoder/decoder plugin') -option('ipcpipeline', type : 'feature', value : 'auto', description : 'Inter-process communication plugin') -option('iqa', type : 'feature', value : 'auto', description : 'Image quality assessment plugin') -option('kate', type : 'feature', value : 'auto', description : 'Kate subtitle parser, tagger, and codec plugin') -option('kms', type : 'feature', value : 'auto', description : 'KMS video sink plugin') -option('ladspa', type : 'feature', value : 'auto', description : 'LADSPA plugin bridge') -option('ldac', type : 'feature', value : 'auto', description : 'LDAC bluetooth audio codec plugin') -option('libde265', type : 'feature', value : 'auto', description : 'HEVC/H.265 video decoder plugin') -option('libmms', type : 'feature', value : 'auto', description : 'Microsoft multimedia server network source plugin') -option('openaptx', type : 'feature', value : 'auto', description : 'Open Source implementation of Audio Processing Technology codec (aptX) plugin') -option('lv2', type : 'feature', value : 'auto', description : 'LV2 audio plugin bridge') -option('mediafoundation', type : 'feature', value : 'auto', description : 'Microsoft Media Foundation plugin') -option('microdns', type : 'feature', value : 'auto', description : 'libmicrodns-based device provider') -option('modplug', type : 'feature', value : 'auto', description : 'ModPlug audio decoder plugin') -option('mpeg2enc', type : 'feature', value : 'auto', description : 'mpeg2enc video encoder plugin') -option('mplex', type : 'feature', value : 'auto', description : 'mplex audio/video multiplexer plugin') -option('msdk', type : 'feature', value : 'auto', description : 'Intel Media SDK video encoder/decoder plugin') -option('musepack', type : 'feature', value : 'auto', description : 'libmpcdec Musepack decoder plugin') -option('neon', type : 'feature', value : 'auto', description : 'NEON HTTP source plugin') -option('nvcodec', type : 'feature', value : 'auto', description : 'NVIDIA GPU codec plugin') -option('ofa', type : 'feature', value : 'auto', description : 'Open Fingerprint Architecture library plugin') -option('openal', type : 'feature', value : 'auto', description : 'OpenAL plugin') -option('openexr', type : 'feature', value : 'auto', description : 'OpenEXR plugin') -option('openh264', type : 'feature', value : 'auto', description : 'H.264 video codec plugin') -option('openjpeg', type : 'feature', value : 'auto', description : 'JPEG2000 image codec plugin') -option('openmpt', type : 'feature', value : 'auto', description : 'OpenMPT module music library plugin') -option('openni2', type : 'feature', value : 'auto', description : 'OpenNI2 library plugin') -option('opensles', type : 'feature', value : 'auto', description : 'OpenSL ES audio source/sink plugin') -option('opus', type : 'feature', value : 'auto', description : 'OPUS audio parser plugin') -option('resindvd', type : 'feature', value : 'auto', description : 'Resin DVD playback plugin') -option('rsvg', type : 'feature', value : 'auto', description : 'SVG overlayer and image decoder plugin') -option('rtmp', type : 'feature', value : 'auto', description : 'RTMP video network source and sink plugin') -option('sbc', type : 'feature', value : 'auto', description : 'SBC bluetooth audio codec plugin') -option('sctp', type : 'feature', value : 'auto', description : 'SCTP plugin') -option('shm', type : 'feature', value : 'auto', description : 'Shared memory source/sink plugin') -option('smoothstreaming', type : 'feature', value : 'auto', description : 'Microsoft Smooth Streaming demuxer plugin') -option('sndfile', type : 'feature', value : 'auto', description : 'libsndfile plugin') -option('soundtouch', type : 'feature', value : 'auto', description : 'Audio pitch controller & BPM detection plugin') -option('spandsp', type : 'feature', value : 'auto', description : 'Packet loss concealment audio plugin') -option('srt', type : 'feature', value : 'auto', description : 'Secure, Reliable, Transport client/server network source/sink plugin') -option('srtp', type : 'feature', value : 'auto', description : 'Secure RTP codec plugin') -option('svthevcenc', type : 'feature', value : 'auto', description : 'Scalable Video Technology for HEVC encoder plugin') -option('teletext', type : 'feature', value : 'auto', description : 'Teletext plugin') -option('tinyalsa', type : 'feature', value : 'auto', description : 'TinyALSA plugin') -option('transcode', type : 'feature', value : 'auto', description : 'Transcode plugin') -option('ttml', type : 'feature', value : 'auto', description : 'TTML subtitle parser and renderer plugin') -option('uvch264', type : 'feature', value : 'auto', description : 'UVC compliant H.264 camera source plugin') -option('va', type : 'feature', value : 'auto', description: 'VA-API new plugin') -option('voaacenc', type : 'feature', value : 'auto', description : 'AAC audio encoder plugin') -option('voamrwbenc', type : 'feature', value : 'auto', description : 'AMR-WB audio encoder plugin') -option('vulkan', type : 'feature', value : 'auto', description : 'Vulkan video sink plugin') -option('wasapi', type : 'feature', value : 'auto', description : 'Windows Audio Session API source/sink plugin') -option('wasapi2', type : 'feature', value : 'auto', description : 'Windows Audio Session API source/sink plugin with WinRT API') -option('webp', type : 'feature', value : 'auto', description : 'WebP image codec plugin') -option('webrtc', type : 'feature', value : 'auto', description : 'WebRTC audio/video network bin plugin') -option('webrtcdsp', type : 'feature', value : 'auto', description : 'Plugin with various audio filters provided by the WebRTC audio processing library') -option('wildmidi', type : 'feature', value : 'auto', description : 'WildMidi midi soft synth plugin') -option('winks', type : 'feature', value : 'auto', description : 'Windows Kernel Streaming video source plugin') -option('winscreencap', type : 'feature', value : 'auto', description : 'Windows Screen Capture video source plugin') -option('x265', type : 'feature', value : 'auto', description : 'HEVC/H.265 video encoder plugin') -option('zbar', type : 'feature', value : 'auto', description : 'Barcode image scanner plugin using zbar library') -option('zxing', type : 'feature', value : 'auto', description : 'Barcode image scanner plugin using zxing-cpp library') -option('wpe', type : 'feature', value : 'auto', description : 'WPE Web browser plugin') -option('magicleap', type : 'feature', value : 'auto', description : 'Magic Leap platform support') -option('v4l2codecs', type : 'feature', value : 'auto', description : 'Video4Linux Stateless CODECs support') -option('isac', type : 'feature', value : 'auto', description : 'iSAC plugin') +# Common options, automatically inherited by subprojects +option('tests', type : 'feature', value : 'auto', description : 'Build tests') +option('examples', type : 'feature', value : 'auto', description : 'Build examples') +option('introspection', type : 'feature', value : 'auto', description : 'Generate introspection data') +option('nls', type : 'feature', value : 'auto', description : 'Enable native language support (translations)') +option('orc', type : 'feature', value : 'auto', description : 'Enable Optimized Inner Loop Runtime Compiler') +option('doc', type : 'feature', value : 'auto', description : 'Generate API documentation with hotdoc') +option('gtk_doc', type : 'feature', value : 'disabled', description : 'Generate API documentation with gtk-doc') -# HLS plugin options -option('hls', type : 'feature', value : 'auto', description : 'HTTP Live Streaming plugin') -option('hls-crypto', type : 'combo', value : 'auto', choices : ['auto', 'nettle', 'libgcrypt', 'openssl'], - description: 'Crypto library to use for HLS plugin') - -# SCTP plugin options -option('sctp-internal-usrsctp', type: 'feature', value : 'enabled', - description: 'Whether to use the bundled usrsctp library or the system one') +option('package-origin', type : 'string', value : 'Unknown package origin', yield : true, + description : 'package origin URL to use in plugins') -# Common feature options -option('examples', type : 'feature', value : 'auto', yield : true) -option('tests', type : 'feature', value : 'auto', yield : true) -option('introspection', type : 'feature', value : 'auto', yield : true, description : 'Generate gobject-introspection bindings') -option('nls', type : 'feature', value : 'auto', yield: true, description : 'Enable native language support (translations)') -option('orc', type : 'feature', value : 'auto', yield : true) option('gobject-cast-checks', type : 'feature', value : 'auto', yield : true, description: 'Enable run-time GObject cast checks (auto = enabled for development, disabled for stable releases)') option('glib-asserts', type : 'feature', value : 'enabled', yield : true, description: 'Enable GLib assertion (auto = enabled for development, disabled for stable releases)') option('glib-checks', type : 'feature', value : 'enabled', yield : true, description: 'Enable GLib checks such as API guards (auto = enabled for development, disabled for stable releases)') -option('extra-checks', type : 'feature', value : 'enabled', yield : true, description : 'Enable extra runtime checks') - -# Common options -option('package-name', type : 'string', yield : true, - description : 'package name to use in plugins') -option('package-origin', type : 'string', value : 'Unknown package origin', yield : true, - description : 'package origin URL to use in plugins') -option('doc', type : 'feature', value : 'auto', yield: true, - description: 'Enable documentation.')