5 %define TPL_VERSION_MAJOR 1
6 %define TPL_VERSION_MINOR 9
7 %define TPL_VERSION_PATCH 11
8 %define TPL_VERSION %{TPL_VERSION_MAJOR}.%{TPL_VERSION_MINOR}.%{TPL_VERSION_PATCH}
10 #TPL WINDOW SYSTEM DEFINITION
14 %define ENABLE_TTRACE 1
16 %define ENABLE_DEFAULT_LOG 0
17 %define ENABLE_DEFAULT_DUMP 0
18 %define ENABLE_OBJECT_HASH_CHECK 1
19 %define ENABLE_WORKER_TEST_ONLY 0
20 %define ENABLE_DEFAULT_WL_THREAD 0
21 %define ENABLE_TIZEN_FEATURE 1
24 %define ENABLE_TPL_TEST 0
25 %define ENABLE_TPL_TEST_GCOV 0
27 #WAYLAND-EGL-TIZEN VERSION MACROS
28 %define WL_EGL_TIZEN_VERSION_MAJOR 1
29 %define WL_EGL_TIZEN_VERSION_MINOR 0
30 %define WL_EGL_TIZEN_VERSION_PATCH 1
31 %define WL_EGL_TIZEN_VERSION %{WL_EGL_TIZEN_VERSION_MAJOR}.%{WL_EGL_TIZEN_VERSION_MINOR}.%{WL_EGL_TIZEN_VERSION_PATCH}
33 #TPL WINDOW SYSTEM CHECK
34 %if "%{TPL_WINSYS}" != "DRI2" && "%{TPL_WINSYS}" != "DRI3" && "%{TPL_WINSYS}" != "WL"
35 BuildRequires: ERROR(No_window_system_designated)
39 Version: %{TPL_VERSION}
41 %if "%{TPL_WINSYS}" == "DRI2"
42 Summary: Tizen Porting Layer for EGL (DRI2 backend)
44 %if "%{TPL_WINSYS}" == "DRI3"
45 Summary: Tizen Porting Layer for EGL (DRI3 backend)
47 %if "%{TPL_WINSYS}" == "WL"
48 Summary: Tizen Porting Layer for EGL (Wayland backend)
50 Group: Graphics & UI Framework/GL
52 Source: %{name}-%{version}.tar.gz
55 BuildRequires: pkg-config
56 BuildRequires: pkgconfig(libtbm)
58 %if "%{TPL_WINSYS}" == "DRI2" || "%{TPL_WINSYS}" == "DRI3"
59 BuildRequires: pkgconfig(libdri2)
60 BuildRequires: pkgconfig(xext)
61 BuildRequires: pkgconfig(xfixes)
62 BuildRequires: pkgconfig(x11)
63 BuildRequires: pkgconfig(x11-xcb)
64 BuildRequires: pkgconfig(xcb)
65 BuildRequires: pkgconfig(xcb-dri3)
66 BuildRequires: pkgconfig(xcb-sync)
67 BuildRequires: pkgconfig(xcb-present)
68 BuildRequires: pkgconfig(xshmfence)
69 BuildRequires: pkgconfig(libdrm)
72 %if "%{TPL_WINSYS}" == "WL"
73 BuildRequires: libtool
74 BuildRequires: pkgconfig(libtdm-client)
75 BuildRequires: pkgconfig(wayland-client)
76 BuildRequires: pkgconfig(wayland-server)
77 BuildRequires: pkgconfig(wayland-egl)
78 BuildRequires: pkgconfig(wayland-egl-backend)
79 BuildRequires: pkgconfig(wayland-tbm-client)
80 BuildRequires: pkgconfig(wayland-tbm-server)
81 BuildRequires: pkgconfig(glib-2.0)
82 %if "%{ENABLE_TIZEN_FEATURE}" == "1"
83 BuildRequires: pkgconfig(tizen-surface-client)
84 BuildRequires: pkgconfig(presentation-time-client)
85 BuildRequires: pkgconfig(linux-explicit-synchronization-unstable-v1-client)
90 %if "%{ENABLE_TTRACE}" == "1"
91 BuildRequires: pkgconfig(ttrace)
94 %if "%{ENABLE_DLOG}" == "1"
95 BuildRequires: pkgconfig(dlog)
98 %global TZ_SYS_RO_SHARE %{?TZ_SYS_RO_SHARE:%TZ_SYS_RO_SHARE}%{!?TZ_SYS_RO_SHARE:/usr/share}
101 Tizen Porting Layer (a.k.a TPL) is a linkage between the underlying window
102 system and the EGL porting layer.
104 The following window systems are supported:
109 Summary: Development files for TPL
110 Group: System/Libraries
111 Requires: %{name} = %{version}-%{release}
114 This package contains the development libraries and header files needed by
115 the GPU Vendor DDK's EGL.
117 %if "%{TPL_WINSYS}" == "WL"
118 %package -n libwayland-egl-tizen
119 Version: %{WL_EGL_TIZEN_VERSION}
121 Summary: Wayland EGL TIZEN backend
122 BuildRequires: pkgconfig(dlog)
124 %description -n libwayland-egl-tizen
125 This package provides tizen specific extension of wayland-egl.
127 %package -n libwayland-egl-tizen-devel
128 Version: %{WL_EGL_TIZEN_VERSION}
130 Summary: Development header files for wayland-egl tizen extensions.
131 Requires: libwayland-egl libwayland-egl-tizen
133 %description -n libwayland-egl-tizen-devel
134 Development header files for wayland-egl tizen extensions.
137 %if %{with utest} || "%{ENABLE_TPL_TEST}" == "1"
139 Summary: Unit test module of libtpl-egl
140 BuildRequires: gtest-devel
143 Unit test module of libtpl-egl (previously known as tpl-test)
150 export TPL_VERSION_MAJOR=%{TPL_VERSION_MAJOR}
151 export TPL_VERSION_MINOR=%{TPL_VERSION_MINOR}
152 export TPL_VERSION_PATCH=%{TPL_VERSION_PATCH}
154 export WL_EGL_TIZEN_VERSION_MAJOR=%{WL_EGL_TIZEN_VERSION_MAJOR}
155 export WL_EGL_TIZEN_VERSION_MINOR=%{WL_EGL_TIZEN_VERSION_MINOR}
156 export WL_EGL_TIZEN_VERSION_PATCH=%{WL_EGL_TIZEN_VERSION_PATCH}
160 --with-arch=aarch64 \
162 %if "%{TPL_WINSYS}" == "WL"
164 --enable-wayland-thread=%{ENABLE_DEFAULT_WL_THREAD} \
166 %if %{with utest} || "%{ENABLE_TPL_TEST}" == "1"
168 %if %{with utest_gcov} || "%{ENABLE_TPL_TEST_GCOV}" == "1"
172 --enable-dlog=%{ENABLE_DLOG} \
173 --enable-dlog-default=%{ENABLE_DEFAULT_LOG} \
174 --enable-dump=%{ENABLE_DEFAULT_DUMP} \
175 --enable-object-hash-check=%{ENABLE_OBJECT_HASH_CHECK} \
176 --enable-ttrace=%{ENABLE_TTRACE} \
177 --enable-tizen-feature=%{ENABLE_TIZEN_FEATURE} \
179 INCLUDEDIR=%{_includedir}
190 %post -p /sbin/ldconfig
191 %postun -p /sbin/ldconfig
193 %if "%{TPL_WINSYS}" == "WL"
194 %post -n libwayland-egl-tizen -p /sbin/ldconfig
195 %postun -n libwayland-egl-tizen -p /sbin/ldconfig
199 %manifest packaging/libtpl-egl.manifest
201 %defattr(-,root,root,-)
202 %{_libdir}/libtpl-egl.so.%{TPL_VERSION_MAJOR}
203 %{_libdir}/libtpl-egl.so.%{TPL_VERSION}
206 %defattr(-,root,root,-)
208 %{_libdir}/pkgconfig/tpl-egl.pc
209 %{_libdir}/libtpl-egl.so
211 %if "%{TPL_WINSYS}" == "WL"
212 %files -n libwayland-egl-tizen
213 %manifest packaging/libwayland-egl-tizen.manifest
215 %defattr(-,root,root,-)
216 %{_libdir}/libwayland-egl-tizen.so*
218 %files -n libwayland-egl-tizen-devel
219 %defattr(-,root,root,-)
220 %{_includedir}/wayland-egl-tizen.h
221 %{_libdir}/libwayland-egl-tizen.so
222 %{_libdir}/pkgconfig/wayland-egl-tizen.pc
225 %if %{with utest} || "%{ENABLE_TPL_TEST}" == "1"
227 %defattr(-,root,root,-)