Damian Wrobel f74ec00
Name:          crrcsim
Damian Wrobel f74ec00
Version:       0.9.12
5d9d62b
Release:       3%{?dist}
Damian Wrobel f74ec00
Group:         Amusements/Games
Damian Wrobel f74ec00
Summary:       Model-Airplane Flight Simulation Program
Damian Wrobel f74ec00
License:       GPLv2
Damian Wrobel f74ec00
URL:           http://sourceforge.net/apps/mediawiki/crrcsim/
Damian Wrobel f74ec00
Source0:       http://prdownloads.sourceforge.net/%{name}/%{name}-%{version}.tar.gz
5d9d62b
Patch0:        %{name}-0.9.12-no-io-h.patch
Damian Wrobel f74ec00
Damian Wrobel f74ec00
Damian Wrobel f74ec00
# It is only meant for development purposes.
Damian Wrobel f74ec00
%global build_with_cmake %{?_with_cmake:1}%{!?_with_cmake:0}
Damian Wrobel f74ec00
Damian Wrobel f74ec00
%global the_desktop_file packages/Fedora/CRRCsim.desktop
Damian Wrobel f74ec00
%global the_icon_file %{_datadir}/%{name}/icons/%{name}.png
Damian Wrobel f74ec00
Damian Wrobel f74ec00
Damian Wrobel f74ec00
%if %{build_with_cmake}
Damian Wrobel f74ec00
BuildRequires: cmake
Damian Wrobel f74ec00
%endif
Damian Wrobel f74ec00
BuildRequires: portaudio-devel
Damian Wrobel f74ec00
BuildRequires: SDL-devel
Damian Wrobel f74ec00
BuildRequires: freeglut-devel
Damian Wrobel f74ec00
BuildRequires: plib-devel
Damian Wrobel f74ec00
BuildRequires: openjpeg-devel
Damian Wrobel f74ec00
BuildRequires: CGAL-devel
Damian Wrobel f74ec00
BuildRequires: desktop-file-utils
Damian Wrobel f74ec00
Damian Wrobel f74ec00
Damian Wrobel f74ec00
%description
Damian Wrobel f74ec00
Crrcsim is a model-airplane flight simulation program.
Damian Wrobel f74ec00
Using it, you can learn how to fly model aircraft, test new aircraft designs,
Damian Wrobel f74ec00
and improve your skills by practicing on your computer.
Damian Wrobel f74ec00
Damian Wrobel f74ec00
The flight model is very realistic.
Damian Wrobel f74ec00
The flight model parameters are calculated based on a 3D representation
Damian Wrobel f74ec00
of the aircraft. Stalls are properly modeled as well.
Damian Wrobel f74ec00
Model control is possible with your own RC transmitter, or any input device
Damian Wrobel f74ec00
such as joystick, mouse, keyboard.
Damian Wrobel f74ec00
Damian Wrobel f74ec00
Damian Wrobel f74ec00
%package doc
Damian Wrobel f74ec00
Group:         Documentation
Damian Wrobel f74ec00
Summary:       Documentation for %{name}
Damian Wrobel f74ec00
Requires:      %{name} = %{version}-%{release}
Damian Wrobel f74ec00
BuildArch:     noarch
Damian Wrobel f74ec00
Damian Wrobel f74ec00
Damian Wrobel f74ec00
%description doc
Damian Wrobel f74ec00
Documentation for %{name} package.
Damian Wrobel f74ec00
Damian Wrobel f74ec00
Damian Wrobel f74ec00
%prep
Damian Wrobel f74ec00
%setup -q
5d9d62b
%patch0 -p1 -b .no-io-h
Damian Wrobel f74ec00
Damian Wrobel f74ec00
# Correct EOL.
Damian Wrobel f74ec00
for i in \
Damian Wrobel f74ec00
    documentation/input_method/PARALLEL_1_to_3/crrcsim_at90s1200.hex \
Damian Wrobel f74ec00
    documentation/models/Readmefirst_Crossfire.txt \
Damian Wrobel f74ec00
    documentation/models/Readmefirst_Erwin.txt \
Damian Wrobel f74ec00
    documentation/Install_Win32.txt \
Damian Wrobel f74ec00
    documentation/dlportio.txt; do
Damian Wrobel f74ec00
        sed -i 's#\r##g' $i;
Damian Wrobel f74ec00
done
Damian Wrobel f74ec00
Damian Wrobel f74ec00
# Remove executable permission.
Damian Wrobel f74ec00
chmod a-x src/mod_landscape/heightdata.h
Damian Wrobel f74ec00
Damian Wrobel f74ec00
# Correct file encoding.
Damian Wrobel f74ec00
for i in documentation/thermals/table*.cpp; do
Damian Wrobel f74ec00
  iconv -f iso-8859-1 -t utf-8 -o $i{.utf8,} && mv $i{.utf8,}
Damian Wrobel f74ec00
done
Damian Wrobel f74ec00
Damian Wrobel f74ec00
# Desktop file: correct the icon file location.
Damian Wrobel f74ec00
sed -i 's#^\(Icon.*=\).*#\1%{the_icon_file}#g' %{the_desktop_file}
Damian Wrobel f74ec00
Damian Wrobel f74ec00
# Desktop file: correct categories.
Damian Wrobel f74ec00
# Reported upstream: http://preview.tinyurl.com/cep8rvp
Damian Wrobel f74ec00
sed -i 's#^\(Categories=\).*#\1Game;Simulation;#g' %{the_desktop_file}
Damian Wrobel f74ec00
Damian Wrobel f74ec00
# Desktop file: remove deprecated "Encoding" key.
Damian Wrobel f74ec00
# Reported upstream: http://preview.tinyurl.com/cep8rvp
Damian Wrobel f74ec00
sed -i 's#^Encoding=.*##g' %{the_desktop_file}
Damian Wrobel f74ec00
Damian Wrobel f74ec00
# Minimal approach to satisfy the linker.
Damian Wrobel f74ec00
# Reported upstream: http://preview.tinyurl.com/d3cg4s2
Damian Wrobel f74ec00
sed -i 's#\($(GLU_LIBS)\)#\1\ -lgmp\ -lboost_thread-mt#' Makefile.in
Damian Wrobel f74ec00
Damian Wrobel f74ec00
%if %{build_with_cmake}
Damian Wrobel f74ec00
# Remove reference to not existing file.
Damian Wrobel f74ec00
sed -i 's#\(.*m44_test.*\)#\#\1#g' src/mod_math/CMakeLists.txt
Damian Wrobel f74ec00
%endif
Damian Wrobel f74ec00
Damian Wrobel f74ec00
Damian Wrobel f74ec00
%build
Damian Wrobel f74ec00
%if %{build_with_cmake}
Damian Wrobel f74ec00
 mkdir -p build
Damian Wrobel f74ec00
 pushd build
Damian Wrobel f74ec00
 %cmake ..
Damian Wrobel f74ec00
 make %{?_smp_mflags}
Damian Wrobel f74ec00
 popd
Damian Wrobel f74ec00
%else
Damian Wrobel f74ec00
 %configure
Damian Wrobel f74ec00
 make %{?_smp_mflags}
Damian Wrobel f74ec00
%endif
Damian Wrobel f74ec00
Damian Wrobel f74ec00
Damian Wrobel f74ec00
%install
Damian Wrobel f74ec00
make DESTDIR=%{buildroot} install
Damian Wrobel f74ec00
desktop-file-install \
Damian Wrobel f74ec00
    --dir=%{buildroot}%{_datadir}/applications \
Damian Wrobel f74ec00
    %{the_desktop_file}
Damian Wrobel f74ec00
rm -f %{buildroot}%{_datadir}/%{name}/icons/%{name}.{ico,xpm}
Damian Wrobel f74ec00
%find_lang %{name}
Damian Wrobel f74ec00
%find_lang %{name} --with-man
Damian Wrobel f74ec00
Damian Wrobel f74ec00
Damian Wrobel f74ec00
%files -f %{name}.lang
Damian Wrobel f74ec00
%doc AUTHORS COPYING HISTORY
Damian Wrobel f74ec00
%{_bindir}/crrcsim
Damian Wrobel f74ec00
%{_datadir}/applications/CRRCsim.desktop
Damian Wrobel f74ec00
%dir %{_datadir}/%{name}
Damian Wrobel f74ec00
%dir %{_datadir}/%{name}/icons
Damian Wrobel f74ec00
%{_datadir}/%{name}/icons/%{name}.png
Damian Wrobel f74ec00
%dir %{_datadir}/%{name}/models
Damian Wrobel f74ec00
%{_datadir}/%{name}/models/*.xml
Damian Wrobel f74ec00
%dir %{_datadir}/%{name}/models/battery
Damian Wrobel f74ec00
%{_datadir}/%{name}/models/battery/*.xml
Damian Wrobel f74ec00
%dir %{_datadir}/%{name}/models/engine
Damian Wrobel f74ec00
%{_datadir}/%{name}/models/engine/*.xml
Damian Wrobel f74ec00
%dir %{_datadir}/%{name}/objects
Damian Wrobel f74ec00
%{_datadir}/%{name}/objects/*.ac
Damian Wrobel f74ec00
%{_datadir}/%{name}/objects/*.3ds
Damian Wrobel f74ec00
%dir %{_datadir}/%{name}/scenery
Damian Wrobel f74ec00
%{_datadir}/%{name}/scenery/*.xml
Damian Wrobel f74ec00
%dir %{_datadir}/%{name}/sounds
Damian Wrobel f74ec00
%{_datadir}/%{name}/sounds/*.wav
Damian Wrobel f74ec00
%dir %{_datadir}/%{name}/sounds/f3f
Damian Wrobel f74ec00
%dir %{_datadir}/%{name}/sounds/f3f/default
Damian Wrobel f74ec00
%{_datadir}/%{name}/sounds/f3f/default/*.wav
Damian Wrobel f74ec00
%dir %{_datadir}/%{name}/sounds/f3f/sport
Damian Wrobel f74ec00
%{_datadir}/%{name}/sounds/f3f/sport/*.wav
Damian Wrobel f74ec00
%dir %{_datadir}/%{name}/textures
Damian Wrobel f74ec00
%{_datadir}/%{name}/textures/*.bw
Damian Wrobel f74ec00
%{_datadir}/%{name}/textures/*.jpg
Damian Wrobel f74ec00
%{_datadir}/%{name}/textures/*.rgb
Damian Wrobel f74ec00
%{_datadir}/%{name}/textures/*.txf
Damian Wrobel f74ec00
%{_mandir}/man1/%{name}.1*
Damian Wrobel f74ec00
Damian Wrobel f74ec00
Damian Wrobel f74ec00
%files doc
Damian Wrobel f74ec00
%doc %{_defaultdocdir}/%{name}
Damian Wrobel f74ec00
Damian Wrobel f74ec00
Damian Wrobel f74ec00
%changelog
5d9d62b
* Fri Feb 01 2013 Dan HorĂ¡k <dan[at]danny.cz> - 0.9.12-3
5d9d62b
- fix build on platforms without io.h
5d9d62b
Damian Wrobel f74ec00
* Tue Jan 29 2013 Damian Wrobel <dwrobel@ertelnet.rybnik.pl> - 0.9.12-2
Damian Wrobel f74ec00
- doc subpackage BuildArch adn Requires corrected.
Damian Wrobel f74ec00
Damian Wrobel f74ec00
* Tue Jun 12 2012 Damian Wrobel <dwrobel@ertelnet.rybnik.pl> - 0.9.12-1
Damian Wrobel f74ec00
- initial RPM release.