%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.4.36
+Version: 0.9.11
Release: 1
Group: Graphics & UI Framework/Input
License: Apache-2.0
BuildRequires: pkgconfig(dlog)
BuildRequires: pkgconfig(isf)
%if %{with wayland}
-BuildRequires: pkgconfig(ecore-wayland)
+BuildRequires: pkgconfig(ecore-wl2)
BuildRequires: pkgconfig(wayland-client)
BuildRequires: pkgconfig(input-method-client)
%else
%endif
BuildRequires: pkgconfig(libscl-common)
BuildRequires: pkgconfig(appcore-efl)
-BuildRequires: pkgconfig(capi-appfw-application)
+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
-Requires: %{name}-compat = %{version}-%{release}
-Recommends: %{name}-profile_common = %{version}-%{release}
-%description
-A library that helps developing S/W Keyboard
-
-# This is for backward-compatibility. This does not deteriorate 4.0 Configurability
-# if mobile || tv || ivi || common || "undefined"
-%if "%{?profile}" != "wearable"
-%package profile_common
-Summary: libscl-core subpackage for common/mobile/tv/ivi
-Provides: %{name}-compat = %{version}-%{release}
+Provides: %{name}-profile_common = %{version}-%{release}
Provides: %{name}-profile_mobile = %{version}-%{release}
Provides: %{name}-profile_tv = %{version}-%{release}
Provides: %{name}-profile_ivi = %{version}-%{release}
-Conflicts: %{name}-profile_wearable
-%description profile_common
-A library for developing software keyboards for common/mobile/tv/ivi.
-%endif
+
+%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
-Provides: %{name}-compat = %{version}-%{release}
-Conflicts: %{name}-profile_common
+Requires: %{name} = %{version}-%{release}
%description profile_wearable
-A library for developing software keyboards for wearable.
+A library extension for %{name} for developing software keyboards for wearable.
%endif
%package devel
%setup -q
%build
-export CFLAGS+=" -DTIZEN_DEBUG_ENABLE -Werror"
-export CXXFLAGS+=" -DTIZEN_DEBUG_ENABLE -Werror"
+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
%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
%files
%manifest %{name}.manifest
%defattr(-,root,root,-)
-%license LICENSE
-
-# This is for backward-compatibility. This does not deteriorate 4.0 Configurability
-# if mobile || tv || ivi || common || "undefined"
-%if "%{?profile}" != "wearable"
-
-%files profile_common
-%manifest %{name}.manifest
-%defattr(-,root,root,-)
%{_libdir}/%{name}.so
-%endif
+%license LICENSE
# This is for backward-compatibility. This does not deteriorate 4.0 Configurability
# if wearable || "undefined"