%bcond_with x %bcond_with wayland # Do not create auto-Provides from .so files of wearable so that # we can manually create .so Provides from the main package, # which eliminates ambiguity in build systems. %global __provides_exclude_from ^%{_libdir}/.*\\.so.wearable$ Name: libscl-core Summary: A library for developing software keyboards Version: 0.9.10 Release: 1 Group: Graphics & UI Framework/Input License: Apache-2.0 Source0: %{name}-%{version}.tar.gz BuildRequires: cmake BuildRequires: pkgconfig(elementary) BuildRequires: pkgconfig(vconf) BuildRequires: pkgconfig(dlog) BuildRequires: pkgconfig(isf) %if %{with wayland} BuildRequires: pkgconfig(ecore-wl2) BuildRequires: pkgconfig(wayland-client) BuildRequires: pkgconfig(input-method-client) %else BuildRequires: pkgconfig(ecore-x) BuildRequires: pkgconfig(x11) %endif BuildRequires: pkgconfig(libscl-common) BuildRequires: pkgconfig(appcore-efl) BuildRequires: pkgconfig(capi-appfw-app-common) # This is for backward-compatibility. This does not deteriorate 4.0 Configurability # if wearable || "undefined" %if "%{?profile}" != "mobile" && "%{?profile}" != "tv" && "%{?profile}" != "ivi" && "%{?profile}" != "common" BuildRequires: pkgconfig(libwebsockets) %endif Provides: %{name}-profile_common = %{version}-%{release} Provides: %{name}-profile_mobile = %{version}-%{release} Provides: %{name}-profile_tv = %{version}-%{release} Provides: %{name}-profile_ivi = %{version}-%{release} %description A library that helps developing S/W Keyboard # This is for backward-compatibility. This does not deteriorate 4.0 Configurability # if wearable || "undefined" %if "%{?profile}" != "mobile" && "%{?profile}" != "tv" && "%{?profile}" != "ivi" && "%{?profile}" != "common" %package profile_wearable Summary: libscl-core subpackage for wearable Requires: %{name} = %{version}-%{release} %description profile_wearable A library extension for %{name} for developing software keyboards for wearable. %endif %package devel Summary: SCL-Core header file Group: Development/Libraries Requires: %{name} = %{version}-%{release} %description devel A devel package of libscl-core library that helps developing S/W Keyboard %prep %setup -q %build export CFLAGS+=" -fvisibility=hidden -DTIZEN_DEBUG_ENABLE -Werror" export CXXFLAGS+=" -fvisibility=hidden -fvisibility-inlines-hidden -DTIZEN_DEBUG_ENABLE -Werror" export FFLAGS+=" -DTIZEN_DEBUG_ENABLE" rm -rf CMakeFiles rm -rf CMakeCache.txt # This is for backward-compatibility. This does not deteriorate 4.0 Configurability # if wearable || "undefined" %if "%{?profile}" != "mobile" && "%{?profile}" != "tv" && "%{?profile}" != "ivi" && "%{?profile}" != "common" # wearable mkdir -p wearable pushd wearable %if %{with wayland} cmake .. -DCMAKE_INSTALL_PREFIX=%{_prefix} -DLIB_INSTALL_DIR:PATH=%{_libdir} -Dwith_wayland=TRUE -Dwith_websocket=TRUE %else cmake .. -DCMAKE_INSTALL_PREFIX=%{_prefix} -DLIB_INSTALL_DIR:PATH=%{_libdir} -Dwith_websocket=TRUE %endif make %{?_smp_mflags} popd %endif # This is for backward-compatibility. This does not deteriorate 4.0 Configurability # if mobile || tv || ivi || common || "undefined" %if "%{?profile}" != "wearable" # common %if %{with wayland} cmake . -DCMAKE_INSTALL_PREFIX=%{_prefix} -DLIB_INSTALL_DIR:PATH=%{_libdir} -Dwith_wayland=TRUE -Dwith_websocket=FALSE %else cmake . -DCMAKE_INSTALL_PREFIX=%{_prefix} -DLIB_INSTALL_DIR:PATH=%{_libdir} -Dwith_websocket=FALSE %endif make %{?_smp_mflags} %endif %install rm -rf %{buildroot} # This is for backward-compatibility. This does not deteriorate 4.0 Configurability # if wearable || "undefined" %if "%{?profile}" != "mobile" && "%{?profile}" != "tv" && "%{?profile}" != "ivi" && "%{?profile}" != "common" pushd wearable %make_install %if "%{?profile}" == "wearable" cp %{buildroot}%{_libdir}/%{name}.so %{buildroot}%{_libdir}/%{name}.so.wearable %else mv %{buildroot}%{_libdir}/%{name}.so %{buildroot}%{_libdir}/%{name}.so.wearable %endif popd %endif # This is for backward-compatibility. This does not deteriorate 4.0 Configurability # if mobile || tv || ivi || common || "undefined" %if "%{?profile}" != "wearable" %make_install %endif %post -p /sbin/ldconfig %postun -p /sbin/ldconfig # This is for backward-compatibility. This does not deteriorate 4.0 Configurability # if wearable || "undefined" %if "%{?profile}" != "mobile" && "%{?profile}" != "tv" && "%{?profile}" != "ivi" && "%{?profile}" != "common" %post profile_wearable pushd %{_libdir} for FILE in %{name}.so.wearable; do ln -sf "$FILE" "${FILE%.wearable}"; done popd /sbin/ldconfig %preun profile_wearable rm %{_libdir}/%{name}.so /sbin/ldconfig %endif %files %manifest %{name}.manifest %defattr(-,root,root,-) %{_libdir}/%{name}.so %license LICENSE # This is for backward-compatibility. This does not deteriorate 4.0 Configurability # if wearable || "undefined" %if "%{?profile}" != "mobile" && "%{?profile}" != "tv" && "%{?profile}" != "ivi" && "%{?profile}" != "common" %files profile_wearable %manifest %{name}.manifest %defattr(-,root,root,-) %{_libdir}/%{name}.so.wearable %endif %files devel %defattr(-,root,root,-) %{_includedir}/* %{_libdir}/pkgconfig/%{name}.pc