%global debug_package %{nil} %global monodir %{_prefix}/lib %global bootstrap 0 Summary: NAnt is a build tool for Mono and .NET Name: nant Version: 0.92 Release: 32%{?dist} Epoch: 1 License: GPLv2+ Url: http://nant.sourceforge.net/ Source0: http://downloads.sourceforge.net/nant/%{name}-%{version}-src.tar.gz Patch1: nant-0.92-no_ndoc.patch Patch2: nant-0.92-system_nunit.patch Patch3: nant-0.90-no_sharpcvslib.patch Patch4: nant-0.90-system_sharpziplib.patch Patch5: nant-0.92-system_log4net.patch Patch6: nant-0.92-no_netdumbster.patch Patch7: nant-fixmono42_scripttask.patch Patch8: nant-0.92-mono-4.5.patch Patch9: nant-0.92-mono-4.5-config.patch BuildRequires: make BuildRequires: mono-devel BuildRequires: nunit2-devel >= 2.6.4 %if 0%{bootstrap} # Nothing here if we're bootstrapping %else BuildRequires: log4net-devel %endif Requires: nunit2 # Mono only available on these: ExclusiveArch: %mono_arches # nunit2 fails to build on armv7hl. Mono crashes. see bug 1923663 # it is too much work to switch to nunit (version 3) at the moment. ExcludeArch: armv7hl %if 0%{bootstrap} # In bootstrap mode, filter requires of the prebuilt DLLs. Some of these # require older mono runtime, creating broken rpm deps. %filter_requires_in %{_prefix}/lib/NAnt/ # Also filter provides of the prebuilt DLLs %filter_provides_in %{_prefix}/lib/NAnt/ %filter_setup %endif %description NAnt is a free .NET build tool. In theory it is kind of like make without make's wrinkles. In practice it's a lot like Ant. %package docs Summary: Documentation package for nant Requires: %{name} = %{epoch}:%{version}-%{release} %description docs Documentation for nant %package devel Summary: Development file for nant Requires: %{name} = %{epoch}:%{version}-%{release} %description devel Development file for %{name} %prep %setup -q -n %{name}-%{version} # install to libdir instead of datadir sed -i -e "/property name=\"install\.share\"/ s/'share'/'lib'/" NAnt.build sed -i -e "s,/share/,/lib/," etc/nant.pc.in # Remove NDoc support %patch1 -p1 -b .no_ndoc rm src/NAnt.DotNet/Tasks/NDocTask.cs rm -Rf src/NDoc.Documenter.NAnt find lib -name 'NDoc*.dll' | xargs rm # Remove NUnit1 support and fix build with system NUnit. # Based on Debian's 004-nant-nunit_2.4.dpatch %patch2 -p1 -b .system_nunit find lib -iname 'nunit*' | xargs rm # Remove SharpCvsLib support %patch3 -p1 -b .no_sharpcvslib find lib -name "*SharpCvsLib*.dll" | xargs rm find lib -name "scvs.exe" | xargs rm # Use system SharpZipLib which is older than the one bundled with nant # https://bugzilla.novell.com/show_bug.cgi?id=426065 %patch4 -p1 -F 3 -b .system_sharpziplib find lib -name "*SharpZipLib*.dll" | xargs rm %patch6 -p1 -b .no_netdumbster rm tests/NAnt.Core/Tasks/MailTaskTest.cs find . -type d|xargs chmod 755 find . -type f|xargs chmod 644 sed -i 's/\r//' doc/license.html sed -i 's/\r//' COPYING.txt sed -i 's/\r//' README.txt sed -i 's/\r//' doc/releasenotes.html # Clean out the prebuilt files (unless we're bootstrapping) # If we're not bootstrapping, leave the files alone: %if 0%{bootstrap} echo "BOOTSTRAP BUILD" %else echo "NORMAL BUILD, NUKING PREBUILT BUNDLED DLL FILES" rm -rf lib/* %endif # Use system log4net, unless we're bootstrapping. %if 0%{bootstrap} # do nothing %else %patch5 -p1 -b .system_log4net %endif %patch7 -p1 %patch8 -p1 %patch9 -p1 #Fixes for Mono 4 sed -i "s#gmcs#mcs#g" Makefile sed -i "s#TARGET=mono-2.0#TARGET=mono-4.5#g" Makefile sed -i "s#dmcs#mcs#g" src/NAnt.Console/App.config find . -name "*.sln" -print -exec sed -i 's/Format Version 10.00/Format Version 11.00/g' {} \; find . -name "*.csproj" -print -exec sed -i 's#ToolsVersion="3.5"#ToolsVersion="4.0"#g; s#.*##g; s##v4.5#g' {} \; %build make %install make install prefix=%{_prefix} DESTDIR=%{buildroot} find examples -name \*.dll -o -name \*.exe|xargs rm -f rm -rf %{buildroot}%{_datadir}/NAnt/doc rm -rf %{buildroot}%{_prefix}/lib/doc/NAnt # Flush out the binary bits that we used to build, unless we're bootstrapping. %if 0%{bootstrap} # Do nothing %else rm -rf %{buildroot}%{_prefix}/lib/NAnt/bin/lib rm -rf %{buildroot}%{_prefix}/lib/NAnt/bin/log4net.dll %endif mkdir -p $RPM_BUILD_ROOT/%{_libdir}/pkgconfig test "%{_libdir}" = "%{_prefix}/lib" || mv $RPM_BUILD_ROOT/%{_prefix}/lib/pkgconfig/* $RPM_BUILD_ROOT/%{_libdir}/pkgconfig %files %{!?_licensedir:%global license %%doc} %license COPYING.txt %doc README.txt doc/*.html %{_bindir}/nant %{monodir}/NAnt/ %files docs %doc examples/* doc/help/* %files devel %{_libdir}/pkgconfig/nant.pc %changelog * Fri Jul 22 2022 Fedora Release Engineering - 1:0.92-32 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild * Thu Jan 20 2022 Fedora Release Engineering - 1:0.92-31 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild * Thu Aug 05 2021 Timotheus Pokorra - 1:0.92-30 - disable arch armv7hl * Thu Jul 22 2021 Fedora Release Engineering - 1:0.92-29 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild * Tue Jan 26 2021 Fedora Release Engineering - 1:0.92-28 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild * Sat Aug 01 2020 Fedora Release Engineering - 1:0.92-27 - Second attempt - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild * Tue Jul 28 2020 Fedora Release Engineering - 1:0.92-26 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild * Wed Jan 29 2020 Fedora Release Engineering - 1:0.92-25 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild * Sat Aug 03 2019 Timotheus Pokorra - 1:0.92-24 - Properly support mono-4.5 target framework by adding an extra section to the config file * Thu Jul 25 2019 Fedora Release Engineering - 1:0.92-23 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild * Fri Feb 01 2019 Fedora Release Engineering - 1:0.92-22 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild * Fri Jul 13 2018 Fedora Release Engineering - 1:0.92-21 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild * Thu Feb 08 2018 Fedora Release Engineering - 1:0.92-20 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild * Thu Aug 03 2017 Fedora Release Engineering - 1:0.92-19 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild * Wed Jul 26 2017 Fedora Release Engineering - 1:0.92-18 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild * Fri Jul 07 2017 Igor Gnatenko - 1:0.92-17 - Rebuild due to bug in RPM (RHBZ #1468476) * Thu Mar 16 2017 Timotheus Pokorra - 1:0.92-16 - Rebuilt for log4net 2.0.8 * Fri Feb 10 2017 Fedora Release Engineering - 1:0.92-15 - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild * Tue Jan 24 2017 Tom Callaway - 1:0.92-14 - rebuild for new log4net * Thu Oct 13 2016 Peter Robinson - 1:0.92-13 - Non bootstrap build * Thu Oct 13 2016 Peter Robinson - 1:0.92-12 - aarch64 bootstrap * Fri Aug 26 2016 Timotheus Pokorra 1:0.92-11 - requires nunit2 to build, does not work with nunit (version 3) * Thu Jun 16 2016 Timotheus Pokorra 1:0.92-10 - fix for Mono 4.2 for compiling ScriptTasks (see https://github.com/nant/nant/issues/161) * Thu Feb 04 2016 Fedora Release Engineering - 1:0.92-9 - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild * Mon Dec 14 2015 Tom Callaway - 0.92-8 - rebuild for new log4net * Fri Nov 20 2015 Than Ngo - 0.92-7 - non-bootstrap build * Fri Nov 20 2015 Than Ngo - 0.92-6 - enable bootstrap for s390*/powerpc64 * Sat Nov 14 2015 Timotheus Pokorra 1:0.92-5 - force a rebuild so that nant requires the updated log4net (fixes bug #1281954) * Thu Jul 16 2015 Timotheus Pokorra 1:0.92-4 - fix post bootstrap build, require nunit-devel >= 2.6.4 (fixes bug #1239705) - also fix problems with missing NDoc and netDumbster dlls * Wed Jun 17 2015 Fedora Release Engineering - 1:0.92-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild * Mon May 18 2015 Peter Robinson 0.92-2 - Post bootstrap (mono4) rebuild - Minor spec cleanups, use %%license - use %%mono_arches * Fri May 15 2015 Timotheus Pokorra 0.92-1 - upgrade to NAnt 0.92, build for Mono 4 * Tue Oct 14 2014 Karsten Hopp 0.90-17 - change exclusivearch from ppc64 to power64 macro to include ppc64le * Sun Aug 17 2014 Fedora Release Engineering - 1:0.90-16 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild * Mon Jun 9 2014 Tom Callaway - 1:0.90-15 - rebuild * Sat Jun 07 2014 Fedora Release Engineering - 1:0.90-14 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild * Sat May 17 2014 Kalev Lember - 1:0.90-13 - Drop scrollkeeper handling * Sat Aug 03 2013 Fedora Release Engineering - 1:0.90-12 - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild * Thu Feb 14 2013 Fedora Release Engineering - 1:0.90-11 - Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild * Fri Jul 20 2012 Fedora Release Engineering - 1:0.90-10 - Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild * Fri Jan 13 2012 Fedora Release Engineering - 1:0.90-9 - Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild * Sun Nov 20 2011 Christian Krause - 1:0.90-8 - Unbootstrap * Sun Nov 20 2011 Christian Krause - 1:0.90-7 - Change paths for mono assemblies according to updated packaging guidelines (http://fedoraproject.org/wiki/Packaging:Mono) * Tue Apr 19 2011 Dan Horák - 1:0.90-6 - updated the supported arch list * Sat Apr 09 2011 Kalev Lember - 1:0.90-5 - Unbootstrap * Fri Apr 08 2011 Kalev Lember - 1:0.90-4 - Fixed build in bootstrap mode - Added a patch to build without NDoc - Added a patch to build with system mono-nunit instead of the bundled copy and removed support for mono-nunit22 - Build without SourceControl support to avoid SharpCvsLib dep - Patch to build with system SharpZipLib - Build with system log4net if we aren't bootstrapping * Tue Feb 08 2011 Fedora Release Engineering - 1:0.90-3.1 - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild * Tue Oct 26 2010 Paul F. Johnson 1:0.90-2.1 - Fix bootstrap makefile * Mon Oct 25 2010 Paul F. Johnson 1:0.90-2 - More build path fixes * Mon Oct 25 2010 Paul F. Johnson 1:0.90-1.1 - Correct build paths * Thu Oct 14 2010 Paul F. Johnson 1:0.90-1 - Bump to 0.90 - Replace patch 2, fix other patches - Fix mono-1.0 bits - Add devel subpackage * Thu Feb 11 2010 Karsten Hopp 1:0.85-34 - enable builds on s390(x) * Tue Dec 1 2009 Tom "spot" Callaway 1:0.85-33 - disable bootstrap * Tue Dec 1 2009 Tom "spot" Callaway 1:0.85-32.1 - bootstrap again * Thu Oct 29 2009 Kevin Kofler - 1:0.85-31 - rebuild because mono-ndoc "cleverly" encodes its build date into its ABI ver * Fri Jul 31 2009 Tom "spot" Callaway - 1:0.85-30 - clarify comments on bootstrapping * Thu Jul 30 2009 Tom "spot" Callaway - 1:0.85-29 - unbootstrap * Thu Jul 30 2009 Tom "spot" Callaway - 1:0.85-28.1 - bootstrap to get mono-ndoc rebuilt * Sat Jul 25 2009 Fedora Release Engineering - 1:0.85-28 - Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild * Tue Mar 3 2009 Tom "spot" Callaway - 1:0.85-27 - unbootstrap * Mon Mar 2 2009 Tom "spot" Callaway - 1:0.85-26.2 - fix BR to be wrapped by bootstrap * Mon Mar 2 2009 Tom "spot" Callaway - 1:0.85-26.1 - bootstrap... again. *sigh* * Mon Mar 2 2009 Tom "spot" Callaway - 1:0.85-26 - disable bootstrap * Mon Mar 2 2009 Tom "spot" Callaway - 1:0.85-25.1 - proper conditionals for bootstrapping * Mon Mar 2 2009 Tom "spot" Callaway - 1:0.85-24.1 - bootstrap hack (to recover from mass rebuild) * Wed Feb 25 2009 Fedora Release Engineering - 1:0.85-24 - Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild * Tue Dec 23 2008 Tom "spot" Callaway - 1:0.85-23 - undo bootstrapping hack - readd BR mono-sharpcvslib-devel (yes, it is circular, mono is a mess) * Tue Dec 23 2008 Tom "spot" Callaway - 1:0.85-22.1 - bootstrapping hack - don't monkey with patches, bad form * Thu Dec 18 2008 Paul F. Johnson - 1:0.85-22 - rebuild - removed BR mono-sharpcvslib-devel (circular dep with mono-sharpcvslib) * Fri Jun 06 2008 Caolán McNamara - 1:0.85-21 - rebuild for dependancies * Thu Apr 10 2008 Tom "spot" Callaway - 1:0.85-20 - don't use prebuilt binary bits * Mon Apr 7 2008 Alex Lancaster - 1:0.85-19 - Downgrade to 0.85 because of issues with boo package as discussed on bug #435898). add Epoch: 1 :( - Add nant-0.85-api.patch from David Nielsen to enable build on F-9 * Thu Mar 06 2008 Paul F. Johnson 0.86-5 - bump to beta 1 * Mon Nov 12 2007 Paul F. Johnson 0.85-17 - removed excludearch in favour of exclusivearch * Mon Nov 12 2007 Paul F. Johnson 0.85.15 - removed fc5 and fc6 support - fixed small errors in the code base * Sun Dec 17 2006 Paul F. Johnson 0.85-11 - No longer the RC release * Sat Sep 16 2006 Paul F. Johnson 0.85-10 - more hacks and slashes... * Sat Sep 16 2006 Paul F. Johnson 0.85-9 - more 64bit fixes * Sat Sep 16 2006 Paul F. Johnson 0.85-8 - scrollkeeper fixes * Wed Sep 06 2006 Paul F. Johnson 0.85-7 - FC5 and FC6 fixes (libdir) * Wed Jul 19 2006 Paul F. Johnson 0.85-6 - Security fix to spec file - Other spec file fixes * Sun Jul 09 2006 Paul F. Johnson 0.85-5 - fixes to EOLs - added R scrollkeeper - changed group * Sat Jul 08 2006 John Mahowald - 0.85-4 - libdir fix * Wed Jun 07 2006 Paul F. Johnson 0.85-rc4-3 - Added docs package - Added post and postun for docs - Removed debuginfo package (empty) * Sat Jun 03 2006 Paul F. Johnson 0.85-rc4-1 - Initial import for FC Extras