spec: add release def for each plugin 49/270649/2
authorEunhye Choi <eunhae1.choi@samsung.com>
Mon, 7 Feb 2022 16:54:30 +0000 (01:54 +0900)
committerEunhye Choi <eunhae1.choi@samsung.com>
Mon, 7 Feb 2022 17:02:00 +0000 (02:02 +0900)
- add release define for each plugin
- use tar.gz to reduce archive time during build

Change-Id: I1d9cb584f73c79c3486c4ebbdf8a28f3374e3ae9

packaging/gstreamer.spec

index eb33fd9..4d5731d 100644 (file)
@@ -5,14 +5,23 @@
 %define _lib_girepository %{_libdir}/girepository-%{gst_branch}
 
 #######################################################################
-## 'plugin' macro :
-## 'plugin' is user defined macro to build each plugin seperately
+## how to build each plugin :
 ## add define option at gbs build cmd like [ --define "plugin bad" ]
 ## if not, all the source code in subprojects will be built
 #######################################################################
 
-%if 0%{?plugin:1}
+## Release information for each plugin
+%define _core_release   0
+%define _base_release   0
+%define _good_release   0
+%define _bad_release    0
+%define _ugly_release   0
+%define _libav_release  0
+%define _omx_release    0
+%define _rs_release     0
+%define _es_release     0
 
+%if 0%{?plugin:1}
   %if "%{plugin}" == "core"
     %define _name gstreamer
     %define _core_opt ""
@@ -39,6 +48,7 @@
   %endif
 
   %define _source_path subprojects/%{_name}
+  %define _release _%{plugin}_release
 
 %else
 
   %define _rs_opt gst-rtsp-server:
   %define _es_opt gst-editing-services:
 
+  %define _release %{_core_release}
+
 %endif
 
 Name:           %{_name}
 Version:        1.20.0
-Release:        0
+Release:        %{_release}
 Summary:        Streaming-Media Framework Runtime
 License:        LGPL-2.0+
 Group:          Multimedia/Framework
 Url:            http://gstreamer.freedesktop.org/
-Source0:        gstreamer-%{version}.tar.xz
+Source0:        gstreamer-%{version}.tar.gz
 Source1001:     gstreamer.manifest
 BuildRequires:  meson >= 0.59.0
 BuildRequires:  gettext-tools
@@ -135,6 +147,7 @@ BuildRequires:  gst-plugins-base-devel >= %{version}
 
 %if "%{plugin}" == "all"
 %package -n gst-plugins-base
+Release:        %{_base_release}
 Summary:        GStreamer Streaming-Media Framework Plug-Ins
 Group:          Multimedia/Framework
 %endif
@@ -187,15 +200,17 @@ videos. Its plug-in-based architecture means that new data types or
 processing capabilities can be added simply by installing new plug-ins.
 
 %package -n gst-plugins-base-extension-adder
-Summary:       libgstadder.so for gst-plugins-base
-Requires:   gst-plugins-base = %{version}-%{release}
-Provides:   gst-plugins-base-profile_mobile = %{version}-%{release}
+Release:        %{_base_release}
+Summary:        libgstadder.so for gst-plugins-base
+Requires:       gst-plugins-base = %{version}-%{release}
+Provides:       gst-plugins-base-profile_mobile = %{version}-%{release}
 
 %description -n gst-plugins-base-extension-adder
 Libgstadder.so for gst-plugin-base. Supplicant for gst-plugin-base.
 This is for Tizen mobile profile.
 
 %package -n gst-plugins-base-devel
+Release:        %{_base_release}
 Summary:        Include files and Libraries
 Requires:       gst-plugins-base = %{version}
 
@@ -211,6 +226,7 @@ to compile and link applications that use gstreamer-plugins-base.
 
 %if "%{plugin}" == "all"
 %package -n gst-plugins-good
+Release:        %{_good_release}
 Summary:        GStreamer Streaming-Media Framework Plug-Ins
 Group:          Multimedia/Framework
 %endif
@@ -255,6 +271,7 @@ videos. Its plug-in-based architecture means that new data types or
 processing capabilities can be added simply by installing new plug-ins.
 
 %package -n gst-plugins-good-extra
+Release:        %{_good_release}
 Summary:        Complementary plugins for gst-plugins-good
 Group:          Productivity/Multimedia/Other
 Requires:       gst-plugins-good = %{version}
@@ -272,6 +289,7 @@ plugins not included in official Tizen images, which may be used for development
 
 %if "%{plugin}" == "all"
 %package -n gst-plugins-bad
+Release:        %{_bad_release}
 Summary:        GStreamer Streaming-Media Framework Plug-Ins
 Group:          Multimedia/Framework
 %endif
@@ -314,6 +332,7 @@ videos. Its plug-in-based architecture means that new data types or
 processing capabilities can be added simply by installing new plug-ins.
 
 %package -n gst-plugins-bad-devel
+Release:        %{_bad_release}
 Summary:        GStreamer Streaming-Media Framework Plug-Ins
 Requires:       gst-plugins-bad = %{version}-%{release}
 Requires:       gst-plugins-base-devel
@@ -333,6 +352,7 @@ processing capabilities can be added simply by installing new plug-ins.
 
 %if "%{plugin}" == "all"
 %package -n gst-plugins-ugly
+Release:        %{_ugly_release}
 Summary:        GStreamer plugins from the "ugly" set
 Group:          Multimedia/Framework
 %endif
@@ -364,6 +384,7 @@ BuildRequires:  pkgconfig(opencore-amrnb)
 
 %if "%{plugin}" == "all"
 %package -n gst-omx
+Release:        %{_omx_release}
 Summary:        GStreamer plug-in that allows communication with OpenMAX IL components
 Group:          Multimedia/Framework
 %endif
@@ -391,6 +412,7 @@ Multiple OpenMAX IL implementations can be used.
 
 %if "%{plugin}" == "all"
 %package -n gst-libav
+Release:        %{_libav_release}
 Summary:        Libav plugin for GStreamer
 Group:          Multimedia/Framework
 %endif
@@ -424,6 +446,7 @@ demuxing 30+ formats and colorspace conversion.
 
 %if "%{plugin}" == "all"
 %package -n gst-rtsp-server
+Release:        %{_rs_release}
 Summary:        Multimedia Framework Library
 Group:          System/Libraries
 %endif
@@ -432,7 +455,6 @@ Group:          System/Libraries
 
 Requires(post):  /sbin/ldconfig
 Requires(postun):  /sbin/ldconfig
-BuildRequires:  gobject-introspection-devel
 
 %description -n gst-rtsp-server
 This GStreamer plugin supports a large number of audio and video compression
@@ -441,9 +463,10 @@ elements for decoding 90+ formats (AVI, MPEG, OGG, Matroska, ASF, ...),
 demuxing 30+ formats and colorspace conversion.
 
 %package -n gst-rtsp-server-devel
-Summary:    Multimedia Framework RTSP server library (DEV)
-Group:      Development/Libraries
-Requires:   gst-rtsp-server = %{version}-%{release}
+Release:        %{_rs_release}
+Summary:        Multimedia Framework RTSP server library (DEV)
+Group:          Development/Libraries
+Requires:       gst-rtsp-server = %{version}-%{release}
 
 %description -n gst-rtsp-server-devel
 
@@ -455,6 +478,7 @@ Requires:   gst-rtsp-server = %{version}-%{release}
 
 %if "%{plugin}" == "all"
 %package -n gst-editing-services
+Release:        %{_es_release}
 Summary:        GStreamer Editing Service Plug-Ins
 Group:          Multimedia/Framework
 %endif
@@ -473,8 +497,9 @@ This is a high-level library for facilitating the creation of audio/video
 non-linear editors.
 
 %package -n gst-editing-services-devel
-Summary:    Development files for gst-editing-services
-Requires:   gst-editing-services = %{version}-%{release}
+Release:        %{_es_release}
+Summary:        Development files for gst-editing-services
+Requires:       gst-editing-services = %{version}-%{release}
 
 %description -n gst-editing-services-devel
 This package contains libraries and header files for