Name: webkit2-efl Summary: Webkit2 EFL Version: 152340_0.10.192.0 Release: 1 Group: Applications/Internet License: LGPLv2.1 or BSD Source0: %{name}-%{version}.tar.gz %{?wearable_build:%define _repository wearable} %{?mobile_build:%define _repository mobile} Requires(post): /sbin/ldconfig Requires(post): xkeyboard-config Requires(postun): /sbin/ldconfig BuildRequires: cmake, edje-bin, embryo-bin, python, bison, flex, gperf, libjpeg-turbo-devel, perl, gettext, ruby BuildRequires: pkgconfig(cairo) BuildRequires: pkgconfig(dlog) BuildRequires: pkgconfig(ecore) BuildRequires: pkgconfig(ecore-evas) BuildRequires: pkgconfig(ecore-file) BuildRequires: pkgconfig(edbus) BuildRequires: pkgconfig(edje) BuildRequires: pkgconfig(eina) BuildRequires: pkgconfig(elementary) BuildRequires: pkgconfig(evas) BuildRequires: pkgconfig(feedback) BuildRequires: pkgconfig(fontconfig) BuildRequires: pkgconfig(freetype2) BuildRequires: pkgconfig(glib-2.0) BuildRequires: pkgconfig(gstreamer-0.10) BuildRequires: pkgconfig(gstreamer-plugins-base-0.10) BuildRequires: pkgconfig(harfbuzz) BuildRequires: pkgconfig(icu-i18n) BuildRequires: pkgconfig(libmedia-utils) BuildRequires: pkgconfig(libsoup-2.4) BuildRequires: pkgconfig(openssl) BuildRequires: pkgconfig(libxml-2.0) BuildRequires: pkgconfig(libxslt) BuildRequires: pkgconfig(mmutil-imgp) BuildRequires: pkgconfig(mmutil-jpeg) BuildRequires: pkgconfig(mm-session) BuildRequires: pkgconfig(mm-sound) BuildRequires: pkgconfig(sqlite3) BuildRequires: pkgconfig(utilX) BuildRequires: pkgconfig(vconf) BuildRequires: pkgconfig(capi-appfw-application) BuildRequires: pkgconfig(leveldb) BuildRequires: pkgconfig(capi-system-sensor) BuildRequires: pkgconfig(capi-system-device) BuildRequires: pkgconfig(xext) BuildRequires: pkgconfig(libavcodec) BuildRequires: pkgconfig(gles20) BuildRequires: pkgconfig(capi-system-power) BuildRequires: pkgconfig(capi-system-info) %if "%{_repository}" == "wearable" BuildRequires: pkgconfig(deviced) BuildRequires: pkgconfig(libdri2) BuildRequires: pkgconfig(libtbm) BuildRequires: pkgconfig(x11) BuildRequires: pkgconfig(xfixes) BuildRequires: pkgconfig(efl-assist) #%if "%{_profile}" == "MOBILE" #BuildRequires: pkgconfig(capi-location-manager) #BuildRequires: pkgconfig(capi-network-connection) #BuildRequires: pkgconfig(capi-telephony-network-info) #BuildRequires: pkgconfig(location) #BuildRequires: pkgconfig(tts) #BuildRequires: pkgconfig(xt) #%endif %endif %if "%{_repository}" == "mobile" BuildRequires: pkgconfig(capi-network-connection) BuildRequires: pkgconfig(capi-telephony-network-info) BuildRequires: pkgconfig(efl-assist) BuildRequires: pkgconfig(xt) BuildRequires: pkgconfig(location) BuildRequires: pkgconfig(leveldb) BuildRequires: pkgconfig(ui-gadget-1) BuildRequires: pkgconfig(capi-location-manager) BuildRequires: pkgconfig(tts) BuildRequires: pkgconfig(libsmack) BuildRequires: libcap, libcap-devel %endif %description Browser Engine based on Webkit2 EFL (Shared Library) %package devel Summary: Webkit2 EFL Group: Development/Libraries Requires: %{name} = %{version}-%{release} %description devel Browser Engine dev library based on Webkit EFL (Developement files) %prep %setup -q %build %if "%{_repository}" == "wearable" %define _build_type Release %define _profile MICRO %ifarch %{arm} %define _build_target arm %define _emulator OFF %else export CFLAGS="$(echo $CFLAGS | sed 's/-Wl,--as-needed//g')" export CXXFLAGS="$(echo $CXXFLAGS | sed 's/-Wl,--as-needed//g')" %if 0%{?simulator} %define _build_target emulator %define _emulator ON %else %define _build_target i386 %define _emulator OFF %endif %endif %if 0%{?nodebug} export CFLAGS=$(echo $CFLAGS | sed 's/ -g / /') export CXXFLAGS=$(echo $CXXFLAGS | sed 's/ -g / /') %endif export SOURCE_DIR="$PWD" %if 0%{?_webkit_build_dir} %define _build_dir %{_webkit_build_dir} %else %define _build_dir BuildWK2-%{_build_target} %endif mkdir -p %{_build_dir} cd %{_build_dir} cmake $SOURCE_DIR \ -DPORT=Efl \ -DPROJECT_VERSION=152340_0.10.192.0 \ -DCMAKE_INSTALL_PREFIX=%{_prefix} \ -DCMAKE_BUILD_TYPE=%{?_build_type:%_build_type} \ -DENABLE_TIZEN_SUPPORT=ON \ -DENABLE_WEBKIT=OFF \ -DENABLE_WEBKIT2=ON \ -DENABLE_TIZEN_ALL_IN_ONE=ON \ -DENABLE_EGL=ON \ -DENABLE_GLES2=ON \ -DTIZEN_PROFILE=%{_profile} \ -DENABLE_TIZEN_EMULATOR=%{_emulator} \ %{?_webkit_cmake_options:%_webkit_cmake_options} make %{?_make_option:%_make_option} %{?jobs:-j%jobs} %endif %if "%{_repository}" == "mobile" # Temporary workaround %ifarch %{arm} export CFLAGS="$(echo $CFLAGS | sed 's/-mfpu=[a-zA-Z0-9-]*/-mfpu=neon/g')" export CXXFLAGS="$(echo $CXXFLAGS | sed 's/-mfpu=[a-zA-Z0-9-]*/-mfpu=neon/g')" export FFLAGS="$(echo $FFLAGS | sed 's/-mfpu=[a-zA-Z0-9-]*/-mfpu=neon/g')" %else export CFLAGS="$(echo $CFLAGS | sed 's/-Wl,--as-needed//g')" export CXXFLAGS="$(echo $CXXFLAGS | sed 's/-Wl,--as-needed//g')" %endif %if 0%{?nodebug} CFLAGS=$(echo $CFLAGS " " | sed 's/ -g / /g') CXXFLAGS=$(echo $CXXFLAGS " " | sed 's/ -g / /g') %endif %ifarch %{arm} %define EFL_TARGET arm %else %if 0%{?simulator} %define EFL_TARGET emulator %else %define EFL_TARGET i386 %endif %endif export SOURCE_DIR="$PWD/mobile" export WEBKIT_BUILD_DIR=%{WEBKIT_BUILD_DIR} if [ -z "$WEBKIT_BUILD_DIR" -o "{WEBKIT_BUILD_DIR}" == "${WEBKIT_BUILD_DIR#%}" ] then export WEBKIT_BUILD_DIR="BuildWK2-%{EFL_TARGET}" fi export TIZEN_WEBKIT_EXTRA_OPTIONS=%{TIZEN_WEBKIT_EXTRA_OPTIONS} if [ "{TIZEN_WEBKIT_EXTRA_OPTIONS}" == "${TIZEN_WEBKIT_EXTRA_OPTIONS#%}" ] then export TIZEN_WEBKIT_EXTRA_OPTIONS= fi mkdir -p $WEBKIT_BUILD_DIR cd $WEBKIT_BUILD_DIR export MAKE_OPTION=%{MAKE_OPTION} if [ "{MAKE_OPTION}" == "${MAKE_OPTION#%}" ] then cmake $SOURCE_DIR -DPORT=Efl -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release -DENABLE_WEBKIT=Off -DENABLE_WEBKIT2=On -DENABLE_ALLINONE=On -DEFL_TARGET=%{EFL_TARGET} -DDefaultTheme_RESOURCE_NAME=webkit.edj $TIZEN_WEBKIT_EXTRA_OPTIONS make %{?jobs:-j%jobs} else make %{MAKE_OPTION} %{?jobs:-j%jobs} fi %endif %install rm -rf %{buildroot} mkdir -p %{buildroot}/usr/share/license cp LICENSE %{buildroot}/usr/share/license/%{name} %if "%{_repository}" == "wearable" cd %{_build_dir} %endif %if "%{_repository}" == "mobile" export WEBKIT_BUILD_DIR=%{WEBKIT_BUILD_DIR} if [ -z "$WEBKIT_BUILD_DIR" -o "{WEBKIT_BUILD_DIR}" == "${WEBKIT_BUILD_DIR#%}" ] then export WEBKIT_BUILD_DIR="BuildWK2-%{EFL_TARGET}" fi cd $WEBKIT_BUILD_DIR %endif %make_install mkdir -p %{buildroot}/usr/share/edje %post #!/bin/sh #change file permissions # 1. libraries chmod 644 %{_libdir}/libewebkit2.so # 2. Resources %if "%{_repository}" == "wearable" chmod 644 %{_datadir}/edje/webkit.edj %endif %if "%{_repository}" == "mobile" chmod 644 /usr/share/edje/webkit.edj # 3. executables setfattr -n security.capability -v 0sAQAAAgAAAAAAAAAAAAAAAAIAAAA= %{_bindir}/WebProcess setfattr -n security.capability -v 0sAQAAAgAAAAAAAAAAAAAAAAIAAAA= %{_bindir}/PluginProcess %endif %postun %files %manifest %{name}.manifest %defattr(-,root,root,-) %{_libdir}/*.so* %{_bindir}/* %if "%{_repository}" == "wearable" /usr/share/license/%{name} %{_datadir}/* %endif %if "%{_repository}" == "mobile" /usr/share/* /usr/share/license/%{name} %endif %files devel %defattr(-,root,root,-) %{_includedir}/* %{_libdir}/pkgconfig/*