diff options
author | Nirbheek Chauhan <nirbheek@centricular.com> | 2018-09-01 15:43:34 +0530 |
---|---|---|
committer | Nirbheek Chauhan <nirbheek@centricular.com> | 2018-09-01 15:48:41 +0530 |
commit | 3ff65b61caaaa7d74e5c5ca6d74c41040b093120 (patch) | |
tree | 2c2c03846f06313dc191b4dc80301de75e842852 | |
parent | dd317a9727755400cac327c65969b70e07401526 (diff) |
Port all gstreamer recipes to Meson
Tested on: Fedora 28, macOS, cross-win32, cross-win64,
cross-android-universal, cross-ios-universal, Windows.
-rw-r--r-- | config/windows.config | 11 | ||||
-rw-r--r-- | recipes/custom.py | 1 | ||||
-rw-r--r-- | recipes/gst-editing-services-1.0.recipe | 13 | ||||
-rw-r--r-- | recipes/gst-omx-1.0.recipe | 12 | ||||
-rw-r--r-- | recipes/gst-plugins-bad-1.0.recipe | 81 | ||||
-rw-r--r-- | recipes/gst-plugins-base-1.0.recipe | 16 | ||||
-rw-r--r-- | recipes/gst-plugins-good-1.0.recipe | 34 | ||||
-rw-r--r-- | recipes/gst-plugins-ugly-1.0.recipe | 9 | ||||
-rw-r--r-- | recipes/gst-rtsp-server-1.0.recipe | 4 | ||||
-rw-r--r-- | recipes/gst-validate.recipe | 3 | ||||
-rw-r--r-- | recipes/gstreamer-1.0.recipe | 7 |
11 files changed, 93 insertions, 98 deletions
diff --git a/config/windows.config b/config/windows.config index 8c9c17bf..6979f8ca 100644 --- a/config/windows.config +++ b/config/windows.config @@ -51,7 +51,7 @@ else: ccache = use_ccache and 'ccache ' or '' # Toolchain environment -os.environ['CFLAGS'] += "-DWINVER=0x0600 -D_WIN32_WINNT=0x0600" +os.environ['CFLAGS'] += " -DWINVER=0x0600 -D_WIN32_WINNT=0x0600 " os.environ['CXXFLAGS']=os.environ['CFLAGS'] os.environ['PERL'] = 'perl' os.environ['NM']= cmd('nm') @@ -68,6 +68,8 @@ if not export_msvc: os.environ['STRIP']= cmd('strip') os.environ['WINDRES']= cmd('windres') os.environ['RC']= cmd('windres') + # With MinGW, DirectX headers are inside a subdir + os.environ['CFLAGS'] += ' -I%s/%s/include/directx ' % (toolchain_prefix, host) # PATH toolchainbin = os.path.join(toolchain_prefix, 'bin') if os.path.isdir(toolchainbin) and not toolchainbin in os.environ['PATH']: @@ -81,13 +83,6 @@ os.environ['lt_cv_deplibs_check_method'] = 'pass_all' os.environ['ac_cv_lib_bz2_BZ2_bzlibVersion'] = 'yes' os.environ['ac_cv_c_attribute_aligned'] = '64' -# DirectX and DirectSound -os.environ['DIRECTSOUND_CFLAGS'] = '-I%s/%s/include/directx' % (toolchain_prefix, host) -os.environ['DIRECSOUND_LDFLAGS'] = '-L%s/lib' % toolchain_prefix -os.environ['DIRECTX_CFLAGS']= '-I%s/include/DirectX' % toolchain_prefix -os.environ['DIRECTX_CFLAGS'] = '-I%s/%s/include/directx' % (toolchain_prefix, host) -os.environ['DIRECTX_LDFLAGS'] = '-L%s/lib' % toolchain_prefix - if platform == Platform.WINDOWS: os.environ['ACLOCAL'] = 'aclocal-1.11' # We use Visual Studio by default on Windows diff --git a/recipes/custom.py b/recipes/custom.py index 2a42d4f1..bf6d0728 100644 --- a/recipes/custom.py +++ b/recipes/custom.py @@ -14,6 +14,7 @@ class GStreamer(recipe.Recipe): licenses = [License.LGPLv2Plus] version = '1.15.0.1' commit = 'origin/master' + can_msvc = False def list_gstreamer_1_0_plugins_by_category(config): cookbook = CookBook(config) diff --git a/recipes/gst-editing-services-1.0.recipe b/recipes/gst-editing-services-1.0.recipe index 0e49035f..2aa0765d 100644 --- a/recipes/gst-editing-services-1.0.recipe +++ b/recipes/gst-editing-services-1.0.recipe @@ -3,12 +3,11 @@ from cerbero.utils import shell class Recipe(custom.GStreamer): name = 'gst-editing-services-1.0' - licenses = [License.LGPLv2Plus] + btype = BuildType.MESON + # Explicitly enable plugins that we provide dependencies for to ensure that + # we error out if they weren't found. + meson_options = {'examples': 'disabled', 'gtk_doc': 'disabled'} remotes = {'origin': 'https://anongit.freedesktop.org/git/gstreamer/gst-editing-services'} - autoreconf = True - autoreconfig_sh = './autogen.sh --noconfigure' - configure_options = "--program-prefix= --disable-examples --enable-static \ - --disable-gtk-doc --disable-docbook --disable-fatal-warnings " deps = ['gstreamer-1.0', 'gst-plugins-base-1.0', 'gst-plugins-good-1.0', 'gst-validate'] files_bins = ['ges-launch-1.0'] @@ -20,7 +19,3 @@ class Recipe(custom.GStreamer): files_plugins_ges_devel = ['lib/gstreamer-1.0/libgstnle.a', 'lib/gstreamer-1.0/libgstnle.la'] # files_python = ['site-packages/ges%(pext)s'] - - def prepare(self): - # Disable -Werror and other error cflags - self.make += ' ERROR_CFLAGS=' diff --git a/recipes/gst-omx-1.0.recipe b/recipes/gst-omx-1.0.recipe index cbbf33aa..af10630e 100644 --- a/recipes/gst-omx-1.0.recipe +++ b/recipes/gst-omx-1.0.recipe @@ -2,11 +2,9 @@ class Recipe(custom.GStreamer): name = 'gst-omx-1.0' - licenses = [License.LGPLv2_1] - config_sh = 'sh ./autogen.sh --noconfigure && ./configure' - configure_options = '--disable-examples --enable-static ' - remotes = { 'origin': 'https://anongit.freedesktop.org/git/gstreamer/gst-omx' } - deps = [ 'gstreamer-1.0', 'gst-plugins-base-1.0' ] + btype = BuildType.MESON + remotes = {'origin': 'https://anongit.freedesktop.org/git/gstreamer/gst-omx'} + deps = ['gstreamer-1.0', 'gst-plugins-base-1.0'] files_plugins_codecs = ['lib/gstreamer-1.0/libgstomx%(mext)s'] files_plugins_codecs_devel = [ @@ -19,9 +17,9 @@ class Recipe(custom.GStreamer): flags = ['-I/opt/vc/include', '-I/opt/vc/include/IL', '-I/opt/vc/include/interface/vcos/pthreads', '-I/opt/vc/include/interface/vmcs_host/linux'] - self.configure_options += ' --with-omx-target=rpi ' self.append_env('CFLAGS', *flags) self.append_env('CPPFLAGS', *flags) self.append_env('LDFLAGS', '-L/opt/vc/lib') + self.meson_options['target'] = 'rpi' else: - self.configure_options += ' --with-omx-target=generic ' + self.meson_options['target'] = 'generic' diff --git a/recipes/gst-plugins-bad-1.0.recipe b/recipes/gst-plugins-bad-1.0.recipe index 026bfe6b..01ab4cb2 100644 --- a/recipes/gst-plugins-bad-1.0.recipe +++ b/recipes/gst-plugins-bad-1.0.recipe @@ -4,27 +4,17 @@ from cerbero.utils import fix_android_ndk16_cxx class Recipe(custom.GStreamer): name = 'gst-plugins-bad-1.0' - config_sh = 'sh ./autogen.sh --noconfigure && ./configure' - configure_options = '--enable-static --disable-introspection --disable-gsm \ - --disable-examples --disable-faad --disable-festival \ - --disable-videomaxrate --disable-bz2 --disable-libde265 \ - --disable-linsys --disable-fbdev --disable-apexsink \ - --disable-celt --disable-curl --disable-dc1394 --disable-directfb \ - --disable-dirac --disable-faac --disable-flite --disable-gme \ - --disable-lv2 --disable-mimic --disable-modplug \ - --disable-mpeg2enc --disable-mplex --disable-musepack --disable-mythtv \ - --disable-neon --disable-ofa --disable-openal --disable-opencv \ - --disable-pvr --disable-sdl --disable-sndfile \ - --disable-teletextdec --disable-timidity \ - --disable-vdpau --disable-voamrwbenc --disable-wildmidi \ - --disable-xvid --disable-zbar --disable-sdi --disable-gtk-doc --disable-fatal-warnings ' - # Explicitly enable plugins - configure_options += ' --enable-bz2 --enable-assrender \ - --enable-kate --enable-openh264 --enable-opus \ - --enable-hls --enable-rtmp --enable-srtp --enable-dts \ - --enable-libmms --enable-resindvd --enable-soundtouch \ - --enable-voaacenc --enable-rsvg --enable-openjpeg --enable-spandsp \ - --enable-decklink --enable-webrtc --enable-dtls --enable-srt' + btype = BuildType.MESON + # Explicitly enable plugins that we provide dependencies for to ensure that + # we error out if they weren't found. + meson_options = {'examples': 'disabled', 'gtk_doc': 'disabled', 'bz2': 'enabled', + 'assrender': 'enabled', 'kate': 'enabled', 'openh264': 'enabled', + 'opus': 'enabled', 'hls': 'enabled', 'rtmp': 'enabled', + 'srtp': 'enabled', 'dts': 'enabled', 'libmms': 'enabled', + 'resindvd': 'enabled', 'soundtouch': 'enabled', 'openjpeg': 'enabled', + 'voaacenc': 'enabled', 'rsvg': 'enabled', 'openglmixers': 'enabled', + 'spandsp': 'enabled', 'decklink': 'enabled', 'webrtc': 'enabled', + 'dtls': 'enabled', 'srt': 'enabled', 'webrtcdsp': 'enabled'} remotes = {'origin': 'https://anongit.freedesktop.org/git/gstreamer/gst-plugins-bad'} deps = ['gstreamer-1.0', 'gst-plugins-base-1.0', 'bzip2', 'libass', 'libkate', 'zlib', 'openh264', 'opus', 'nettle', 'librtmp', @@ -286,6 +276,14 @@ class Recipe(custom.GStreamer): ] } + files_plugins_sys = [ + 'lib/gstreamer-1.0/libgstopenglmixers%(mext)s', + ] + + files_plugins_sys_devel = [ + 'lib/gstreamer-1.0/libgstopenglmixers.a', 'lib/gstreamer-1.0/libgstopenglmixers.la', + ] + files_plugins_vis = [ 'lib/gstreamer-1.0/libgstaudiovisualizers%(mext)s', ] @@ -297,58 +295,48 @@ class Recipe(custom.GStreamer): platform_files_plugins_sys = { Platform.LINUX: [ 'lib/gstreamer-1.0/libgstshm%(mext)s', - 'lib/gstreamer-1.0/libgstopenglmixers%(mext)s', 'lib/gstreamer-1.0/libgstdecklink%(mext)s', ], Platform.WINDOWS: [ 'lib/gstreamer-1.0/libgstd3d%(mext)s', 'lib/gstreamer-1.0/libgstwasapi%(mext)s', - 'lib/gstreamer-1.0/libgstopenglmixers%(mext)s', 'lib/gstreamer-1.0/libgstdecklink%(mext)s', ], Platform.DARWIN: [ 'lib/gstreamer-1.0/libgstapplemedia%(mext)s', 'lib/gstreamer-1.0/libgstshm%(mext)s', - 'lib/gstreamer-1.0/libgstopenglmixers%(mext)s', 'lib/gstreamer-1.0/libgstdecklink%(mext)s', ], Platform.IOS: [ 'lib/gstreamer-1.0/libgstapplemedia%(mext)s', 'lib/gstreamer-1.0/libgstshm%(mext)s', - 'lib/gstreamer-1.0/libgstopenglmixers%(mext)s', ], Platform.ANDROID: [ 'lib/gstreamer-1.0/libgstopensles%(mext)s', - 'lib/gstreamer-1.0/libgstopenglmixers%(mext)s', ] } platform_files_plugins_sys_devel = { Platform.LINUX: [ 'lib/gstreamer-1.0/libgstshm.a', 'lib/gstreamer-1.0/libgstshm.la', - 'lib/gstreamer-1.0/libgstopenglmixers.a', 'lib/gstreamer-1.0/libgstopenglmixers.la', 'lib/gstreamer-1.0/libgstdecklink.a', 'lib/gstreamer-1.0/libgstdecklink.la', ], Platform.WINDOWS: [ 'lib/gstreamer-1.0/libgstd3d.a', 'lib/gstreamer-1.0/libgstd3d.la', 'lib/gstreamer-1.0/libgstwasapi.a', 'lib/gstreamer-1.0/libgstwasapi.la', - 'lib/gstreamer-1.0/libgstopenglmixers.a', 'lib/gstreamer-1.0/libgstopenglmixers.la', 'lib/gstreamer-1.0/libgstdecklink.a', 'lib/gstreamer-1.0/libgstdecklink.la', ], Platform.DARWIN: [ 'lib/gstreamer-1.0/libgstapplemedia.a', 'lib/gstreamer-1.0/libgstapplemedia.la', 'lib/gstreamer-1.0/libgstshm.a', 'lib/gstreamer-1.0/libgstshm.la', - 'lib/gstreamer-1.0/libgstopenglmixers.a', 'lib/gstreamer-1.0/libgstopenglmixers.la', 'lib/gstreamer-1.0/libgstdecklink.a', 'lib/gstreamer-1.0/libgstdecklink.la', ], Platform.IOS: [ 'lib/gstreamer-1.0/libgstapplemedia.a', 'lib/gstreamer-1.0/libgstapplemedia.la', - 'lib/gstreamer-1.0/libgstopenglmixers.a', 'lib/gstreamer-1.0/libgstopenglmixers.la', 'lib/gstreamer-1.0/libgstshm.a', 'lib/gstreamer-1.0/libgstshm.la', ], Platform.ANDROID: [ 'lib/gstreamer-1.0/libgstopensles.a', 'lib/gstreamer-1.0/libgstopensles.la', - 'lib/gstreamer-1.0/libgstopenglmixers.a', 'lib/gstreamer-1.0/libgstopenglmixers.la', ] } @@ -373,18 +361,29 @@ class Recipe(custom.GStreamer): self.files_plugins_effects.remove('lib/gstreamer-1.0/libgstwebrtcdsp%(mext)s') self.files_plugins_effects_devel.remove('lib/gstreamer-1.0/libgstwebrtcdsp.a') self.files_plugins_effects_devel.remove('lib/gstreamer-1.0/libgstwebrtcdsp.la') - - if self.config.target_platform == Platform.WINDOWS: - self.configure_options += \ - ' --disable-cog --disable-sdl '\ - '--disable-cdaudio' + self.meson_options['webrtcdsp'] = 'disabled' + self.meson_options['wasapi'] = 'enabled' + self.meson_options['d3dvideosink'] = 'enabled' + self.meson_options['directsound'] = 'enabled' + self.meson_options['winks'] = 'enabled' + self.meson_options['winscreencap'] = 'enabled' + else: + # webrtc-audio-processing headers require C++11, older GCCs require + # explicitly opting in (f.ex., mingw gcc and android) + self.meson_options['cpp_std'] = 'gnu++11' + + if self.config.target_platform in (Platform.LINUX, Platform.DARWIN, Platform.IOS): + self.meson_options['shm'] = 'enabled' + + if self.config.target_platform in (Platform.DARWIN, Platform.IOS): + self.meson_options['applemedia'] = 'enabled' if self.config.target_platform in [ Platform.ANDROID, Platform.IOS ]: - for d in ['libdvdnav']: - self.deps.remove(d) + self.deps.remove('libdvdnav') self.files_plugins_dvd.remove('lib/gstreamer-1.0/libgstresindvd%(mext)s') self.files_plugins_dvd_devel.remove('lib/gstreamer-1.0/libgstresindvd.a') self.files_plugins_dvd_devel.remove('lib/gstreamer-1.0/libgstresindvd.la') + self.meson_options['resindvd'] = 'disabled' if self.config.variants.nodebug: self.append_env('CFLAGS', '-DGST_LEVEL_MAX=GST_LEVEL_FIXME') @@ -393,9 +392,3 @@ class Recipe(custom.GStreamer): self.platform_files_plugins_capture[Platform.LINUX].remove('lib/gstreamer-1.0/libgstdvb%(mext)s') self.platform_files_plugins_capture_devel[Platform.LINUX].remove('lib/gstreamer-1.0/libgstdvb.a') self.platform_files_plugins_capture_devel[Platform.LINUX].remove('lib/gstreamer-1.0/libgstdvb.la') - - def configure (self): - fix_android_ndk16_cxx (self.config, os.path.join(self.make_dir, 'ext', 'openh264')) - fix_android_ndk16_cxx (self.config, os.path.join(self.make_dir, 'ext', 'soundtouch')) - fix_android_ndk16_cxx (self.config, os.path.join(self.make_dir, 'ext', 'webrtcdsp')) - super(recipe.Recipe, self).configure() diff --git a/recipes/gst-plugins-base-1.0.recipe b/recipes/gst-plugins-base-1.0.recipe index 28ae3d7a..ada648ee 100644 --- a/recipes/gst-plugins-base-1.0.recipe +++ b/recipes/gst-plugins-base-1.0.recipe @@ -3,9 +3,8 @@ class Recipe(custom.GStreamer): name = 'gst-plugins-base-1.0' - config_sh = 'sh ./autogen.sh --noconfigure && ./configure' - configure_options = "--enable-static --program-prefix= --disable-examples \ - --disable-gtk-doc --disable-fatal-warnings " + btype = BuildType.MESON + meson_options = {'examples': 'disabled', 'gtk_doc': 'disabled', 'gl': 'enabled'} remotes = {'origin': 'https://anongit.freedesktop.org/git/gstreamer/gst-plugins-base'} deps = ['glib', 'gstreamer-1.0', 'libxml2', 'libogg', 'pango', 'libtheora', 'libvisual', 'libvorbis', 'zlib', 'orc', 'opus', 'graphene', @@ -222,8 +221,9 @@ class Recipe(custom.GStreamer): self.files_plugins_sys_devel += [ 'lib/gstreamer-1.0/libgstcdparanoia.a', 'lib/gstreamer-1.0/libgstcdparanoia.la', ] + self.meson_options['cdparanoia'] = 'enabled' else: - self.configure_options += ' --disable-cdparanoia' + self.meson_options['cdparanoia'] = 'disabled' if self.config.variants.x11: self.files_plugins_sys += [ @@ -235,16 +235,20 @@ class Recipe(custom.GStreamer): 'lib/gstreamer-1.0/libgstximagesink.a', 'lib/gstreamer-1.0/libgstximagesink.la', 'lib/gstreamer-1.0/libgstxvimagesink.a', 'lib/gstreamer-1.0/libgstxvimagesink.la', ] + self.meson_options['x11'] = 'enabled' + self.meson_options['xvideo'] = 'enabled' else: - self.configure_options += ' --disable-x --disable-xvideo ' + self.meson_options['x11'] = 'disabled' + self.meson_options['xvideo'] = 'disabled' if self.config.variants.alsa: self.files_plugins_sys += ['lib/gstreamer-1.0/libgstalsa%(mext)s'] self.files_plugins_sys_devel += [ 'lib/gstreamer-1.0/libgstalsa.a', 'lib/gstreamer-1.0/libgstalsa.la', ] + self.meson_options['alsa'] = 'enabled' else: - self.configure_options += ' --disable-alsa' + self.meson_options['alsa'] = 'disabled' if self.config.variants.nodebug: self.append_env('CFLAGS', '-DGST_LEVEL_MAX=GST_LEVEL_FIXME') diff --git a/recipes/gst-plugins-good-1.0.recipe b/recipes/gst-plugins-good-1.0.recipe index c02bbe09..ad5bc19b 100644 --- a/recipes/gst-plugins-good-1.0.recipe +++ b/recipes/gst-plugins-good-1.0.recipe @@ -4,10 +4,11 @@ from cerbero.utils import fix_android_ndk16_cxx class Recipe(custom.GStreamer): name = 'gst-plugins-good-1.0' - config_sh = 'sh ./autogen.sh --noconfigure && ./configure' - configure_options = '--enable-static --disable-examples --disable-oss4 --disable-oss \ - --disable-dv1394 --disable-aalib --disable-libcaca --disable-jack --disable-shout2 \ - --disable-twolame --disable-qt --disable-gtk3 --disable-gtk-doc --disable-fatal-warnings ' + btype = BuildType.MESON + meson_options = {'examples': 'disabled', 'oss': 'disabled', 'oss4': 'disabled', + 'dv1394': 'disabled', 'aalib': 'disabled', 'libcaca': 'disabled', + 'jack': 'disabled', 'shout2': 'disabled', 'twolame': 'disabled', + 'qt5': 'disabled', 'gtk3': 'disabled'} remotes = {'origin': 'https://anongit.freedesktop.org/git/gstreamer/gst-plugins-good'} deps = ['gstreamer-1.0', 'gst-plugins-base-1.0', 'libjpeg-turbo', 'libpng', 'speex', 'gdk-pixbuf', 'libsoup', 'mpg123', 'lame', @@ -199,38 +200,43 @@ class Recipe(custom.GStreamer): self.append_env('CFLAGS', '-DGSTREAMER_GLIB_COCOA_NSAPPLICATION=1', '-DLIBSOUP_DOES_NOT_STEAL_OUR_CONTEXT=1') self.append_env('OBJCFLAGS', '-DGSTREAMER_GLIB_COCOA_NSAPPLICATION=1') - if self.config.target_platform == Platform.WINDOWS: - self.configure_options += ' --disable-aalib --disable-esd ' - elif self.config.target_platform == Platform.LINUX: + if self.config.target_platform == Platform.LINUX: self.use_system_libs = True + if self.config.target_platform == Platform.WINDOWS: + self.meson_options['directsound'] = 'enabled' + elif self.config.target_platform == Platform.DARWIN: + self.meson_options['osxaudio'] = 'enabled' + self.meson_options['osxvideo'] = 'enabled' + elif self.config.target_platform == Platform.IOS: + self.meson_options['osxaudio'] = 'enabled' + if self.config.variants.v4l2: self.files_plugins_capture += ['lib/gstreamer-1.0/libgstvideo4linux2%(mext)s'] self.files_plugins_capture_devel += [ 'lib/gstreamer-1.0/libgstvideo4linux2.a', 'lib/gstreamer-1.0/libgstvideo4linux2.la', ] + self.meson_options['v4l2'] = 'enabled' else: - self.configure_options += ' --disable-gst_v4l2' + self.meson_options['v4l2'] = 'disabled' if self.config.variants.x11: self.files_plugins_capture += ['lib/gstreamer-1.0/libgstximagesrc%(mext)s'] self.files_plugins_capture_devel += [ 'lib/gstreamer-1.0/libgstximagesrc.a', 'lib/gstreamer-1.0/libgstximagesrc.la', ] + self.meson_options['x11'] = 'enabled' else: - self.configure_options += ' --disable-x --disable-xvideo' + self.meson_options['x11'] = 'disabled' if self.config.variants.pulse: self.files_plugins_sys += ['lib/gstreamer-1.0/libgstpulseaudio%(mext)s'] self.files_plugins_sys_devel += [ 'lib/gstreamer-1.0/libgstpulseaudio.a', 'lib/gstreamer-1.0/libgstpulseaudio.la', ] + self.meson_options['pulse'] = 'enabled' else: - self.configure_options += ' --disable-pulse' + self.meson_options['pulse'] = 'disabled' if self.config.variants.nodebug: self.append_env('CFLAGS', '-DGST_LEVEL_MAX=GST_LEVEL_FIXME') - - def configure(self): - fix_android_ndk16_cxx (self.config, os.path.join(self.make_dir, 'ext', 'taglib')) - super(recipe.Recipe, self).configure() diff --git a/recipes/gst-plugins-ugly-1.0.recipe b/recipes/gst-plugins-ugly-1.0.recipe index 039a4e14..d6a5b5d8 100644 --- a/recipes/gst-plugins-ugly-1.0.recipe +++ b/recipes/gst-plugins-ugly-1.0.recipe @@ -3,7 +3,10 @@ class Recipe(custom.GStreamer): name = 'gst-plugins-ugly-1.0' - config_sh = 'sh ./autogen.sh --noconfigure && ./configure' + btype = BuildType.MESON + meson_options = {'examples': 'disabled', 'gtk_doc': 'disabled', 'a52dec': 'enabled', + 'dvdread': 'enabled', 'amrnb': 'enabled', 'amrwbdec': 'enabled', + 'x264': 'enabled'} configure_options = "--enable-static --disable-examples --disable-iec958 --disable-mpegstream \ --disable-cdio --disable-sidplay --disable-gtk-doc --disable-fatal-warnings " remotes = {'origin': 'https://anongit.freedesktop.org/git/gstreamer/gst-plugins-ugly'} @@ -46,11 +49,11 @@ class Recipe(custom.GStreamer): def prepare(self): if self.config.target_platform in [ Platform.ANDROID, Platform.IOS ]: - for d in ['libdvdread']: - self.deps.remove(d) + self.deps.remove('libdvdread') self.files_plugins_dvd.remove('lib/gstreamer-1.0/libgstdvdread%(mext)s') self.files_plugins_dvd_devel.remove('lib/gstreamer-1.0/libgstdvdread.la') self.files_plugins_dvd_devel.remove('lib/gstreamer-1.0/libgstdvdread.a') + self.meson_options['dvdread'] = 'disabled' if self.config.variants.nodebug: self.append_env('CFLAGS', '-DGST_LEVEL_MAX=GST_LEVEL_FIXME') diff --git a/recipes/gst-rtsp-server-1.0.recipe b/recipes/gst-rtsp-server-1.0.recipe index dfb58a6a..1851e7bc 100644 --- a/recipes/gst-rtsp-server-1.0.recipe +++ b/recipes/gst-rtsp-server-1.0.recipe @@ -2,8 +2,8 @@ class Recipe(custom.GStreamer): name = 'gst-rtsp-server-1.0' - config_sh = 'sh ./autogen.sh --noconfigure && ./configure' - configure_options = "--disable-examples --enable-static --disable-gtk-doc --disable-fatal-warnings " + btype = BuildType.MESON + meson_options = {'examples': 'disabled', 'gtk_doc': 'disabled'} remotes = {'origin': 'https://anongit.freedesktop.org/git/gstreamer/gst-rtsp-server'} deps = ['gstreamer-1.0', 'gst-plugins-base-1.0' ] diff --git a/recipes/gst-validate.recipe b/recipes/gst-validate.recipe index 859b83f4..5e81a327 100644 --- a/recipes/gst-validate.recipe +++ b/recipes/gst-validate.recipe @@ -3,9 +3,10 @@ from cerbero.utils import shell class Recipe(custom.GStreamer): name = 'gst-validate' + btype = BuildType.MESON + meson_options = {'gtk_doc': 'disabled'} remotes = {'origin': 'https://anongit.freedesktop.org/git/gstreamer/gst-devtools'} srcdir = 'validate' - config_sh = 'sh ./autogen.sh --noconfigure && ./configure --enable-static --program-transform-name= ' deps = ['gstreamer-1.0', 'gst-plugins-base-1.0', 'json-glib'] files_bins = ['gst-validate-1.0', 'gst-validate-transcoding-1.0', 'gst-validate-media-check-1.0', diff --git a/recipes/gstreamer-1.0.recipe b/recipes/gstreamer-1.0.recipe index 909fd654..9181b8a3 100644 --- a/recipes/gstreamer-1.0.recipe +++ b/recipes/gstreamer-1.0.recipe @@ -3,9 +3,8 @@ import shutil class Recipe(custom.GStreamer): name = 'gstreamer-1.0' - config_sh = 'sh ./autogen.sh --noconfigure && ./configure' - configure_options = "--enable-static --program-prefix= --disable-examples \ - --disable-gtk-doc --disable-docbook --disable-fatal-warnings " + btype = BuildType.MESON + meson_options = {'examples': 'disabled', 'gtk_doc': 'disabled'} remotes = {'origin': 'https://anongit.freedesktop.org/git/gstreamer/gstreamer'} deps = ['glib', 'gtk-doc-lite'] @@ -70,7 +69,7 @@ class Recipe(custom.GStreamer): if self.config.target_platform == Platform.IOS: # iOS only supports static builds so plugins must be linked # and registered statically. - self.configure_options += ' --disable-registry ' + self.meson_options['registry'] = 'false' if self.config.variants.nodebug: self.append_env('CFLAGS', '-DGST_LEVEL_MAX=GST_LEVEL_FIXME') |