Conrad Meyer d406693
# No debugging info because the built .exe is bytecode. Re-enable
Conrad Meyer d406693
# if we get AOT working.
Conrad Meyer d406693
%global debug_package %{nil}
Conrad Meyer d406693
Conrad Meyer d406693
Name:           rescene
Conrad Meyer d406693
Version:        1.2
003c979
Release:        4%{?dist}
Conrad Meyer d406693
Summary:        Extracts RAR metadata and recreates RAR files
Conrad Meyer d406693
Group:          Applications/Archiving
Conrad Meyer d406693
License:        MIT
Conrad Meyer d406693
URL:            http://rescene.info/
Conrad Meyer d406693
Source0:        http://rescene.info/srr.%{version}.cs.zip
Conrad Meyer d406693
BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
Conrad Meyer d406693
Conrad Meyer d406693
BuildRequires:  mono-core
Conrad Meyer d406693
Requires:       mono-core
06c3005
ExclusiveArch:  %{mono_arches}
Conrad Meyer d406693
Conrad Meyer d406693
%description
Conrad Meyer d406693
ReScene is a mechanism for backing up and restoring the metadata from
Conrad Meyer d406693
RAR archives.
Conrad Meyer d406693
Conrad Meyer d406693
Conrad Meyer d406693
%prep
Conrad Meyer d406693
%setup -q -c
Conrad Meyer d406693
cat >rescene.shell_script <
Conrad Meyer d406693
#!/bin/sh
Conrad Meyer d406693
Conrad Meyer d406693
mono "%{_libdir}/%{name}/srr.exe" "\$@"
Conrad Meyer d406693
EOS
Conrad Meyer d406693
Conrad Meyer d406693
# Fix EOL encodings
Conrad Meyer d406693
sed -i -e "s|\r||" license.txt
Conrad Meyer d406693
Conrad Meyer d406693
Conrad Meyer d406693
Conrad Meyer d406693
%build
Conrad Meyer d406693
gmcs -unsafe -out:srr.exe *.cs
Conrad Meyer d406693
Conrad Meyer d406693
# Enabling AOT compilation causes rpmbuild to fail generating debuginfo.
Conrad Meyer d406693
# Disable it for now.
Conrad Meyer d406693
#mono --aot -O=all rescene.exe
Conrad Meyer d406693
Conrad Meyer d406693
Conrad Meyer d406693
%install
Conrad Meyer d406693
rm -rf $RPM_BUILD_ROOT
Conrad Meyer d406693
mkdir -p $RPM_BUILD_ROOT%{_bindir}
Conrad Meyer d406693
mkdir -p $RPM_BUILD_ROOT%{_libdir}/%{name}
Conrad Meyer d406693
Conrad Meyer d406693
install -m 755 srr.exe $RPM_BUILD_ROOT%{_libdir}/%{name}/
Conrad Meyer d406693
# Enabling AOT compilation causes rpmbuild to fail generating debuginfo.
Conrad Meyer d406693
# Disable it for now.
Conrad Meyer d406693
#install -m 755 rescene.exe.so $RPM_BUILD_ROOT%%{_libdir}/%%{name}/
Conrad Meyer d406693
install -m 755 rescene.shell_script $RPM_BUILD_ROOT%{_bindir}/srr
Conrad Meyer d406693
Conrad Meyer d406693
Conrad Meyer d406693
%clean
Conrad Meyer d406693
rm -rf $RPM_BUILD_ROOT
Conrad Meyer d406693
Conrad Meyer d406693
Conrad Meyer d406693
%files
Conrad Meyer d406693
%defattr(-,root,root,-)
Conrad Meyer d406693
%doc license.txt
Conrad Meyer d406693
%{_libdir}/%{name}
Conrad Meyer d406693
%{_bindir}/srr
Conrad Meyer d406693
Conrad Meyer d406693
Conrad Meyer d406693
%changelog
003c979
* Sat Jan 14 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.2-4
003c979
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
003c979
06c3005
* Wed Jul 20 2011 Dan HorĂ¡k <dan[at]danny.cz> - 1.2-3
06c3005
- updated the supported arch list
06c3005
Conrad Meyer d406693
* Thu Aug 26 2010 Conrad Meyer <konrad@tylerc.org> - 1.2-2
Conrad Meyer d406693
- Change to upstream binary name, "srr".
Conrad Meyer d406693
- Escape commented RPM macros so we don't get surprise expansions.
Conrad Meyer d406693
Conrad Meyer d406693
* Tue Aug 24 2010 Conrad Meyer <konrad@tylerc.org> - 1.2-1
Conrad Meyer d406693
- Bump to 1.2.
Conrad Meyer d406693
- Added support for archives with Unicode (actually UTF-8) encoded file
Conrad Meyer d406693
  names.
Conrad Meyer d406693
- Fixed a bug that caused errors when reconstructing archives with extra
Conrad Meyer d406693
  data (or padding) in their File Blocks. Specifically, if an archive
Conrad Meyer d406693
  contains a file that has a packed size larger than its original size
Conrad Meyer d406693
  (something that shouldn't ever happen with m0 compression), older
Conrad Meyer d406693
  versions of ReScene would repeat the last valid buffer of data to fill
Conrad Meyer d406693
  the difference, resulting in CRC (and SFV) errors on the last
Conrad Meyer d406693
  reconstructed file. This build fills the difference with null bytes
Conrad Meyer d406693
  instead and does not include the extra data in the CRC calculation.
Conrad Meyer d406693
  Note that although this change seems to have fixed all known issues
Conrad Meyer d406693
  with such archives, since there's no reason for the situation to occur
Conrad Meyer d406693
  in the first place, there's no guarantee this fix will handle all such
Conrad Meyer d406693
  archives in future.
Conrad Meyer d406693
Conrad Meyer d406693
* Mon Apr 26 2010 Conrad Meyer <konrad@tylerc.org> - 1.1-1
Conrad Meyer d406693
- Bump version, changelog:
Conrad Meyer d406693
  - Added -r switch to enable support for auto-locating renamed files. When
Conrad Meyer d406693
    this switch is used, if a file needed for reconstruction cannot be located
Conrad Meyer d406693
    in the input directory, the program will look for another file with the
Conrad Meyer d406693
    same extension and file size and attempt to use it instead.
Conrad Meyer d406693
  - Added archived file list to the output when using the -l switch.
Conrad Meyer d406693
  - Fixed a bug that caused an error when reconstructing a release that had
Conrad Meyer d406693
    directory structure preserved in the RAR archive. Now no attempt is made to
Conrad Meyer d406693
    open directories or 0-byte files during reconstruction since no data would
Conrad Meyer d406693
    be needed from them anyway.
Conrad Meyer d406693
Conrad Meyer d406693
* Mon Dec 14 2009 Conrad Meyer <konrad@tylerc.org> - 1.0-3
Conrad Meyer d406693
- Update license (clarified with upstream, again).
Conrad Meyer d406693
Conrad Meyer d406693
* Thu Dec 3 2009 Conrad Meyer <konrad@tylerc.org> - 1.0-2
Conrad Meyer d406693
- Update license (clarified with upstream).
Conrad Meyer d406693
Conrad Meyer d406693
* Wed Dec 2 2009 Conrad Meyer <konrad@tylerc.org> - 1.0-1
Conrad Meyer d406693
- Initial package.