diff --git a/pluginBuild-CMakeLists.txt b/pluginBuild-CMakeLists.txt new file mode 100644 index 0000000..c228e6b --- /dev/null +++ b/pluginBuild-CMakeLists.txt @@ -0,0 +1,34 @@ +# Remmina - The GTK+ Remote Desktop Client +# +# Copyright (C) 2014 Pavel Alexeev +# Work based on https://github.com/muflone/remmina-plugin-builder/blob/master/CMakeLists.txt +# dramatically simplified and tied with Fedora remmina package. Thanks to Fabio Castelli. +# +# To build remmina plugin you need: +# 1) install remmina-devel package +# 2) ln -s %{_includedir}/remmina/config.h.in . +# 3) ln -s %{_includedir}/remmina/pluginBuild-CMakeLists.txt CMakeLists.txt +# 4) Put plugin source code in remmina-plugin-to-build directory +# 5) Build it as usual: %{cmake} . ; make %{?_smp_mflags}… + +cmake_minimum_required(VERSION 2.6) +set(CMAKE_COLOR_MAKEFILE ON) +project(Remmina C) + +set(CMAKE_MODULE_PATH "${LIB_INSTALL_DIR}/cmake/remmina/") + +set(REMMINA_DATADIR "${CMAKE_INSTALL_PREFIX}/share") +set(REMMINA_LOCALEDIR "${CMAKE_INSTALL_PREFIX}/share/locale") +set(REMMINA_PLUGINDIR "${LIB_INSTALL_DIR}/remmina/plugins") + +include(FindPkgConfig) +include(FindOptionalPackage) + +include_directories(.) + +add_definitions(-DHAVE_PTHREAD) + +find_required_package(GTK) +add_subdirectory(remmina-plugin-to-build) + +configure_file(${CMAKE_CURRENT_SOURCE_DIR}/config.h.in ${CMAKE_CURRENT_SOURCE_DIR}/config.h) diff --git a/remmina.spec b/remmina.spec index 8bc98c3..f62bd3a 100644 --- a/remmina.spec +++ b/remmina.spec @@ -6,7 +6,7 @@ Name: remmina Version: 1.0.0 -Release: 11%{?shortcommit:.git.%{shortcommit}}%{?dist} +Release: 12%{?shortcommit:.git.%{shortcommit}}%{?dist} Summary: Remote Desktop Client License: GPLv2+ and MIT @@ -14,6 +14,12 @@ URL: http://remmina.sourceforge.net #VCS: git:https://github.com/FreeRDP/Remmina.git Source0: https://github.com/FreeRDP/Remmina/archive/%{commit}/Remmina-%{commit}.tar.gz +# Cmake helper file to easy build plugins outside remmina sourse tree +# See http://www.muflone.com/remmina-plugin-rdesktop/english/install.html which +# use http://www.muflone.com/remmina-plugin-builder/ with remmina bundled source. +# So we can't use it directly only as instructions. +Source1: pluginBuild-CMakeLists.txt + BuildRequires: avahi-ui-devel BuildRequires: cmake >= 2.8 BuildRequires: desktop-file-utils @@ -148,12 +154,16 @@ sed -i \ -e 's@%s/.%{name}@%{_libexecdir}/%{name}@g' \ %{name}/src/%{name}_external_tools.c +#? Hack: https://github.com/FreeRDP/Remmina/issues/292 +sed -i 's#install(DIRECTORY include/remmina DESTINATION include/remmina #install(DIRECTORY remmina/include/remmina DESTINATION include/ #' CMakeLists.txt + %build mkdir -p build %cmake --build=build \ -DCMAKE_INSTALL_LIBDIR=%{_lib} \ -DCMAKE_INSTALL_PREFIX=%{_prefix} \ + -DCMAKE_INSTALL_COMPONENT=1 \ -DLIBVNCSERVER_WITH_CLIENT_TLS=1 \ -DWITH_APPINDICATOR=OFF \ -DWITH_AVAHI=ON \ @@ -172,10 +182,15 @@ mkdir -p build make %{?_smp_mflags} %install -make install/fast DESTDIR=%{buildroot} +%make_install desktop-file-validate %{buildroot}/%{_datadir}/applications/%{name}.desktop +mkdir -p %{buildroot}/%{_libdir}/cmake/%{name}/ +cp -pr cmake/*.cmake %{buildroot}/%{_libdir}/cmake/%{name}/ +cp -pr config.h.in %{buildroot}/%{_includedir}/%{name}/ +cp -p %{SOURCE1} %{buildroot}/%{_includedir}/%{name}/ + %find_lang %{name} %find_lang %{name}-plugins @@ -256,6 +271,7 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : %files devel %{_includedir}/%{name}/ %{_libdir}/pkgconfig/%{name}.pc +%{_libdir}/cmake/%{name}/*.cmake %files plugins-gnome %{_libdir}/remmina/plugins/remmina-plugins-gnome.so @@ -284,6 +300,13 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : %changelog +* Mon Aug 11 2014 Pavel Alexeev - 1.0.0-12.git.1470c97 +- Include in devel sub-package for build external plugins: + o %%{_libdir}/cmake/%%{name}/*.cmake + o config.h.in + o Source1: pluginBuild-CMakeLists.txt (with short instructions inside) +- Fix error installing devel files /usr/include/remmina/*.h (hack!) + * Fri Jul 18 2014 Simone Caronni - 1.0.0-11.git.1470c97 - Update to latest snapshot. - Release number bumped to 1.2.0 beta 1 and then reverted to 1.0.0 upstram,