Merge pull request #162 from atong-tcs/master

manual rpm build
This commit is contained in:
Marc-André Moreau 2011-10-19 06:27:16 -07:00
commit b3bae592ad
4 changed files with 114 additions and 13 deletions

1
.gitignore vendored
View File

@ -5,6 +5,7 @@ CMakeCache.txt
config.h
install_manifest.txt
CTestTestfile.cmake
freerdp.pc
# Make
Makefile

View File

@ -168,3 +168,10 @@ add_subdirectory(client)
add_subdirectory(server)
add_subdirectory(keymaps)
# Source package
set(CPACK_SOURCE_IGNORE_FILES "/\\\\.git/;/\\\\.gitignore;/CMakeCache.txt")
string(TOLOWER ${CMAKE_PROJECT_NAME} CMAKE_PROJECT_NAME_lower)
set(CPACK_SOURCE_PACKAGE_FILE_NAME "${CMAKE_PROJECT_NAME_lower}-${FREERDP_VERSION_FULL}")
include(CPack)

View File

@ -1,13 +0,0 @@
prefix=/usr/local
exec_prefix=/usr/local
libdir=/usr/local/lib
includedir=/usr/local/include
Name: FreeRDP
Description: A free remote desktop protocol client
URL: http://www.freerdp.com/
Version: 0.0.0
Requires:
Libs: -L${libdir} -lfreerdp-core -lfreerdp-codec -lfreerdp-gdi -lfreerdp-kbd -lfreerdp-rail -lfreerdp-chanman -lfreerdp-utils
Cflags: -I${includedir}

106
freerdp.spec Normal file
View File

@ -0,0 +1,106 @@
# cmake
# make package_source
# rpmbuild -ta freerdp-<...>.tar.gz
Summary: Remote Desktop Protocol functionality
Name: freerdp
Version: 0.0.0
Release: 1%{?dist}
License: Apache License 2.0
Group: Applications/Communications
URL: http://www.freerdp.com/
Source: http://downloads.sourceforge.net/%{name}/%{name}-%{version}.tar.gz
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: openssl-devel
BuildRequires: libX11-devel, libXcursor-devel, libXext-devel, libXinerama-devel, libXv-devel, libxkbfile-devel
BuildRequires: cups-devel
BuildRequires: alsa-lib-devel
BuildRequires: pcsc-lite-devel
%description
freerdp implements Remote Desktop Protocol (RDP), used in a number of Microsoft
products.
%package -n xfreerdp
Summary: Remote Desktop Protocol client
Group: Applications/Communications
Requires: %{name}-libs = %{version}-%{release}, %{name}-plugins-standard = %{version}-%{release}
%description -n xfreerdp
xfreerdp is a client for Remote Desktop Protocol (RDP), used in a number of
Microsoft products.
%package libs
Summary: Core libraries implementing the RDP protocol
Group: Applications/Communications
%description libs
libfreerdp can be embedded in applications.
libfreerdpchanman and libfreerdpkbd might be convenient to use in X
applications together with libfreerdp.
libfreerdp can be extended with plugins handling RDP channels.
%package plugins-standard
Summary: Plugins for handling the standard RDP channels
Group: Applications/Communications
Requires: %{name}-libs = %{version}-%{release}
%description plugins-standard
A set of plugins to the channel manager implementing the standard virtual
channels extending RDP core functionality. For example, sounds, clipboard
sync, disk/printer redirection, etc.
%package devel
Summary: Libraries and header files for embedding and extending freerdp
Group: Applications/Communications
Requires: %{name}-libs = %{version}-%{release}
Requires: pkgconfig
%description devel
Header files and unversioned libraries for libfreerdp, libfreerdpchanman and
libfreerdpkbd.
%prep
%setup -q
%build
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr -DWITH_PCSC=ON .
make %{?_smp_mflags}
%install
rm -rf $RPM_BUILD_ROOT
make install DESTDIR=$RPM_BUILD_ROOT
rm -f $RPM_BUILD_ROOT%{_libdir}/{freerdp/,lib}*.{a,la} # FIXME: They shouldn't be installed in the first place
%post libs -p /sbin/ldconfig
%postun libs -p /sbin/ldconfig
%clean
rm -rf $RPM_BUILD_ROOT
%files -n xfreerdp
%defattr(-,root,root)
%{_bindir}/xfreerdp
%{_mandir}/*/*
%files libs
%defattr(-,root,root)
%doc LICENSE README
%{_libdir}/lib*.so.*
%dir %{_libdir}/freerdp
%{_datadir}/freerdp/
%files plugins-standard
%defattr(-,root,root)
%{_libdir}/freerdp/*.so
%files devel
%defattr(-,root,root)
%{_includedir}/freerdp/
%{_libdir}/lib*.so
%{_libdir}/pkgconfig/*
%changelog
* Tue Mar 16 2010 Mads Kiilerich <mads@kiilerich.com> - 0.0.1-1
- Initial "upstream" freerdp spec - made and tested for Fedora 12