File log4net.spec of Package log4net

#
# spec file for package log4net (Version 1.2.10)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via http://bugs.opensuse.org/
#

# norootforbuild
# icecream 0


Name:           log4net
BuildRequires:  mono-basic mono-data-sqlite mono-devel unzip update-desktop-files
Url:            http://logging.apache.org/log4net/
%define prefix /usr
%define sysconfdir /etc
License:        The Apache Software License
Group:          System/Libraries
AutoReqProv:    on
#Requires:       mono-core >= 1.1.7.7
#Requires:       mono-data >= 1.1.7.7
#Requires:       mono-web >= 1.1.7.7
Version:        1.2.10
Release:        53
Summary:        A .NET framework for logging
Source:         incubating-log4net-1.2.10.zip
Source1:        log4net.key
Source2:        log4net.pc
BuildRoot:      %{_tmppath}/%{name}-%{version}-build
BuildArch:      noarch
#=============================================================================

%description
log4net is a tool to help the programmer output log statements to a
variety of output targets. log4net is a port of the excellent log4j
framework to the .NET runtime



Authors:
--------
    Nicko Cadell
    Niall Daley
    Gert Driesen
    Ron Grabowski
    Julian Biddle
    Daniel Cazzulino
    Aspi Havewala
    Rick Hobbs
    Lance Nehring
    Angelika Schnagl
    Edward Smit
    Douglas de la Torre
    Thomas Voss

%prep
%setup -c -n %{name}-%{version}
#=============================================================================

%build
export LC_CTYPE=en_US.UTF-8
cd log4net-%{version}
mcs -out:../log4net.dll \
	-keyfile:%{S:1} \
	/target:library \
	/r:System.dll \
	/r:System.Data.dll \
	/r:System.Web.dll \
	src/Appender/AdoNetAppender.cs \
	src/Appender/AnsiColorTerminalAppender.cs \
	src/Appender/AppenderCollection.cs \
	src/Appender/AppenderSkeleton.cs \
	src/Appender/AspNetTraceAppender.cs \
	src/Appender/BufferingAppenderSkeleton.cs \
	src/Appender/BufferingForwardingAppender.cs \
	src/Appender/ColoredConsoleAppender.cs \
	src/Appender/ConsoleAppender.cs \
	src/Appender/DebugAppender.cs \
	src/Appender/EventLogAppender.cs \
	src/Appender/FileAppender.cs \
	src/Appender/ForwardingAppender.cs \
	src/Appender/IAppender.cs \
	src/Appender/IBulkAppender.cs \
	src/Appender/LocalSyslogAppender.cs \
	src/Appender/MemoryAppender.cs \
	src/Appender/NetSendAppender.cs \
	src/Appender/OutputDebugStringAppender.cs \
	src/Appender/RemoteSyslogAppender.cs \
	src/Appender/RemotingAppender.cs \
	src/Appender/RollingFileAppender.cs \
	src/Appender/SmtpAppender.cs \
	src/Appender/SmtpPickupDirAppender.cs \
	src/Appender/TelnetAppender.cs \
	src/Appender/TextWriterAppender.cs \
	src/Appender/TraceAppender.cs \
	src/Appender/UdpAppender.cs \
	src/Config/AliasDomainAttribute.cs \
	src/Config/AliasRepositoryAttribute.cs \
	src/Config/BasicConfigurator.cs \
	src/Config/ConfiguratorAttribute.cs \
	src/Config/DomainAttribute.cs \
	src/Config/DOMConfigurator.cs \
	src/Config/DOMConfiguratorAttribute.cs \
	src/Config/Log4NetConfigurationSectionHandler.cs \
	src/Config/PluginAttribute.cs \
	src/Config/RepositoryAttribute.cs \
	src/Config/SecurityContextProviderAttribute.cs \
	src/Config/XmlConfigurator.cs \
	src/Config/XmlConfiguratorAttribute.cs \
	src/Core/CompactRepositorySelector.cs \
	src/Core/DefaultRepositorySelector.cs \
	src/Core/ErrorCode.cs \
	src/Core/IAppenderAttachable.cs \
	src/Core/IErrorHandler.cs \
	src/Core/IFixingRequired.cs \
	src/Core/ILogger.cs \
	src/Core/ILoggerWrapper.cs \
	src/Core/IOptionHandler.cs \
	src/Core/IRepositorySelector.cs \
	src/Core/ITriggeringEventEvaluator.cs \
	src/Core/Level.cs \
	src/Core/LevelCollection.cs \
	src/Core/LevelEvaluator.cs \
	src/Core/LevelMap.cs \
	src/Core/LocationInfo.cs \
	src/Core/LogException.cs \
	src/Core/LoggerManager.cs \
	src/Core/LoggerWrapperImpl.cs \
	src/Core/LoggingEvent.cs \
	src/Core/LogImpl.cs \
	src/Core/SecurityContext.cs \
	src/Core/SecurityContextProvider.cs \
	src/Core/WrapperMap.cs \
	src/DateFormatter/AbsoluteTimeDateFormatter.cs \
	src/DateFormatter/DateTimeDateFormatter.cs \
	src/DateFormatter/IDateFormatter.cs \
	src/DateFormatter/Iso8601DateFormatter.cs \
	src/DateFormatter/SimpleDateFormatter.cs \
	src/Filter/DenyAllFilter.cs \
	src/Filter/FilterDecision.cs \
	src/Filter/FilterSkeleton.cs \
	src/Filter/IFilter.cs \
	src/Filter/LevelMatchFilter.cs \
	src/Filter/LevelRangeFilter.cs \
	src/Filter/LoggerMatchFilter.cs \
	src/Filter/MdcFilter.cs \
	src/Filter/NdcFilter.cs \
	src/Filter/PropertyFilter.cs \
	src/Filter/StringMatchFilter.cs \
	src/Layout/Pattern/AppDomainPatternConverter.cs \
	src/Layout/Pattern/DatePatternConverter.cs \
	src/Layout/Pattern/ExceptionPatternConverter.cs \
	src/Layout/Pattern/FileLocationPatternConverter.cs \
	src/Layout/Pattern/FullLocationPatternConverter.cs \
	src/Layout/Pattern/IdentityPatternConverter.cs \
	src/Layout/Pattern/LevelPatternConverter.cs \
	src/Layout/Pattern/LineLocationPatternConverter.cs \
	src/Layout/Pattern/LoggerPatternConverter.cs \
	src/Layout/Pattern/MessagePatternConverter.cs \
	src/Layout/Pattern/MethodLocationPatternConverter.cs \
	src/Layout/Pattern/NamedPatternConverter.cs \
	src/Layout/Pattern/NdcPatternConverter.cs \
	src/Layout/Pattern/PatternLayoutConverter.cs \
	src/Layout/Pattern/PropertyPatternConverter.cs \
	src/Layout/Pattern/RelativeTimePatternConverter.cs \
	src/Layout/Pattern/ThreadPatternConverter.cs \
	src/Layout/Pattern/TypeNamePatternConverter.cs \
	src/Layout/Pattern/UserNamePatternConverter.cs \
	src/Layout/Pattern/UtcDatePatternConverter.cs \
	src/Layout/ExceptionLayout.cs \
	src/Layout/ILayout.cs \
	src/Layout/IRawLayout.cs \
	src/Layout/Layout2RawLayoutAdapter.cs \
	src/Layout/LayoutSkeleton.cs \
	src/Layout/PatternLayout.cs \
	src/Layout/RawLayoutConverter.cs \
	src/Layout/RawPropertyLayout.cs \
	src/Layout/RawTimeStampLayout.cs \
	src/Layout/RawUtcTimeStampLayout.cs \
	src/Layout/SimpleLayout.cs \
	src/Layout/XMLLayout.cs \
	src/Layout/XMLLayoutBase.cs \
	src/Layout/XmlLayoutSchemaLog4j.cs \
	src/ObjectRenderer/DefaultRenderer.cs \
	src/ObjectRenderer/IObjectRenderer.cs \
	src/ObjectRenderer/RendererMap.cs \
	src/Plugin/IPlugin.cs \
	src/Plugin/IPluginFactory.cs \
	src/Plugin/PluginCollection.cs \
	src/Plugin/PluginMap.cs \
	src/Plugin/PluginSkeleton.cs \
	src/Plugin/RemoteLoggingServerPlugin.cs \
	src/Repository/Hierarchy/DefaultLoggerFactory.cs \
	src/Repository/Hierarchy/Hierarchy.cs \
	src/Repository/Hierarchy/ILoggerFactory.cs \
	src/Repository/Hierarchy/Logger.cs \
	src/Repository/Hierarchy/LoggerKey.cs \
	src/Repository/Hierarchy/ProvisionNode.cs \
	src/Repository/Hierarchy/RootLogger.cs \
	src/Repository/Hierarchy/XmlHierarchyConfigurator.cs \
	src/Repository/IBasicRepositoryConfigurator.cs \
	src/Repository/ILoggerRepository.cs \
	src/Repository/IXmlRepositoryConfigurator.cs \
	src/Repository/LoggerRepositorySkeleton.cs \
	src/Util/PatternStringConverters/AppDomainPatternConverter.cs \
	src/Util/PatternStringConverters/DatePatternConverter.cs \
	src/Util/PatternStringConverters/EnvironmentPatternConverter.cs \
	src/Util/PatternStringConverters/IdentityPatternConverter.cs \
	src/Util/PatternStringConverters/LiteralPatternConverter.cs \
	src/Util/PatternStringConverters/NewLinePatternConverter.cs \
	src/Util/PatternStringConverters/ProcessIdPatternConverter.cs \
	src/Util/PatternStringConverters/PropertyPatternConverter.cs \
	src/Util/PatternStringConverters/RandomStringPatternConverter.cs \
	src/Util/PatternStringConverters/UserNamePatternConverter.cs \
	src/Util/PatternStringConverters/UtcDatePatternConverter.cs \
	src/Util/TypeConverters/BooleanConverter.cs \
	src/Util/TypeConverters/ConversionNotSupportedException.cs \
	src/Util/TypeConverters/ConverterRegistry.cs \
	src/Util/TypeConverters/EncodingConverter.cs \
	src/Util/TypeConverters/IConvertFrom.cs \
	src/Util/TypeConverters/IConvertTo.cs \
	src/Util/TypeConverters/IPAddressConverter.cs \
	src/Util/TypeConverters/PatternLayoutConverter.cs \
	src/Util/TypeConverters/PatternStringConverter.cs \
	src/Util/TypeConverters/TypeConverter.cs \
	src/Util/TypeConverters/TypeConverterAttribute.cs \
	src/Util/AppenderAttachedImpl.cs \
	src/Util/CompositeProperties.cs \
	src/Util/ContextPropertiesBase.cs \
	src/Util/CountingQuietTextWriter.cs \
	src/Util/CyclicBuffer.cs \
	src/Util/EmptyCollection.cs \
	src/Util/EmptyDictionary.cs \
	src/Util/FormattingInfo.cs \
	src/Util/GlobalContextProperties.cs \
	src/Util/LevelMapping.cs \
	src/Util/LevelMappingEntry.cs \
	src/Util/LogicalThreadContextProperties.cs \
	src/Util/LogLog.cs \
	src/Util/NativeError.cs \
	src/Util/NullDictionaryEnumerator.cs \
	src/Util/NullEnumerator.cs \
	src/Util/NullSecurityContext.cs \
	src/Util/OnlyOnceErrorHandler.cs \
	src/Util/OptionConverter.cs \
	src/Util/PatternConverter.cs \
	src/Util/PatternParser.cs \
	src/Util/PatternString.cs \
	src/Util/PropertiesDictionary.cs \
	src/Util/ProtectCloseTextWriter.cs \
	src/Util/QuietTextWriter.cs \
	src/Util/ReaderWriterLock.cs \
	src/Util/ReadOnlyPropertiesDictionary.cs \
	src/Util/ReusableStringWriter.cs \
	src/Util/SystemInfo.cs \
	src/Util/SystemStringFormat.cs \
	src/Util/TextWriterAdapter.cs \
	src/Util/ThreadContextProperties.cs \
	src/Util/ThreadContextStack.cs \
	src/Util/ThreadContextStacks.cs \
	src/Util/Transform.cs \
	src/Util/WindowsSecurityContext.cs \
	src/AssemblyInfo.cs \
	src/AssemblyVersionInfo.cs \
	src/GlobalContext.cs \
	src/ILog.cs \
	src/LogicalThreadContext.cs \
	src/LogManager.cs \
	src/MDC.cs \
	src/NDC.cs \
	src/ThreadContext.cs 
#=============================================================================

%install
%{__rm} -rf $RPM_BUILD_ROOT
mkdir -p $RPM_BUILD_ROOT/%{prefix}/share/pkgconfig
cp %{S:2} $RPM_BUILD_ROOT/%{prefix}/share/pkgconfig
gacutil -package log4net -gacdir /usr/lib -root ${RPM_BUILD_ROOT}/usr/lib -i log4net.dll > /dev/null
#=============================================================================

%clean
%{__rm} -rf $RPM_BUILD_ROOT
#=============================================================================

%files
%defattr(755,root,root)
%{prefix}/share/pkgconfig/log4net.pc
%{prefix}/lib/mono/gac
%{prefix}/lib/mono/log4net

%changelog
* Thu Apr 03 2008 hpj@suse.de
- Upgraded to version 1.2.10.
  * [LOG4NET-11] - Add Flush command to API
  * [LOG4NET-24] - Programmatic flush of BufferingAppenderSkeleton buffer
  * [LOG4NET-37] - Allow the RepositorySelector type to be specified using
  the AppSettings config
  * [LOG4NET-46] - Support appenders that can output multiple events
  efficiently
  * [LOG4NET-51] - WmiAppender
  * [LOG4NET-3] - Support per event patterns in FileAppender File name
  * [LOG4NET-13] - Allow SMTPAppender to have replaceable parameters in
  Subject
  * [LOG4NET-15] - Email high "importance" priority setting with
  SmtpAppender
  * [LOG4NET-17] - Line-wrapping Appender Layouts
  * [LOG4NET-33] - Ability to use global property to point to log4net
  configuration file
  * [LOG4NET-34] - Allow xml config values to be set via XmlNodeType.CDATA
  or XmlNodeType.Text rather than just value="foo"
  * [LOG4NET-45] - PluginAttribute does not allow plugin type to be
  specified as a Type, only as a string
  * [LOG4NET-52] - Allow XML configurator to set properties of type Object
  * [LOG4NET-53] - Allow repository properties to be set in the config file
  * [LOG4NET-56] - Support rendering IEnumerator objects as well as
  ICollections
  * [LOG4NET-58] - Support clean build on .NET 2.0
  * [LOG4NET-72] - Performance of ILog.xxxFormat methods
  * [LOG4NET-74] - Change MemoryAppender member variables to protected
  * [LOG4NET-21] - RemotingAppender fails once NDC becomes empty
  * [LOG4NET-22] - XmlLayout allows output of invalid control characters
  * [LOG4NET-23] - example-apps.html links are off by one folder level
  * [LOG4NET-25] - RollingFileAppender can fail if
  RollOverIfDateBoundaryCrossing required
  * [LOG4NET-28] - AdoNetAppender does not support inserting NULL into
  columns
  * [LOG4NET-29] - LevelMatchFilter should return Neutral when no match is
  found
  * [LOG4NET-32] - AdoNetAppender losing first entry
  * [LOG4NET-35] - Exception rendering ThreadContextStack if null value
  pushed into stack
  * [LOG4NET-36] - System.Diagnostics.Trace may throw exception if AppDomain
  does not have config file
  * [LOG4NET-40] - RollingFileAppender does not limit files to
  MaxSizeRollBackups when CountDirection is 1
  * [LOG4NET-41] - RollingFileAppender roll over date fail
  * [LOG4NET-42] - Serialised LoggingEvent does not preserve the Fix flags
  * [LOG4NET-43] - Specifying an empty string as a property in the config
  file results in an error
  * [LOG4NET-44] - XmlLayout emits all properties under a node named
  global-properties, rather than just properties.
  * [LOG4NET-49] - CountingQuietTextWriter does not count strings written
  with WriteLine
  * [LOG4NET-50] - Process.StartTime hangs on some systems
  * [LOG4NET-60] - Bug in RollingFileAppender.cs causing failure to timely
  roll files on monthly interval
  * [LOG4NET-63] - 1.2.9.0 Documentation typos
  * [LOG4NET-65] - Unhandled SecurityException exception for
  FileIOPermission while loading configuration file
  * [LOG4NET-67] - CVE-2006-0743 Security vulnerability in
  LocalSyslogAppender
  * [LOG4NET-69] - Exception thrown when *Format methods are given a
  malformed format string
  * [LOG4NET-70] - CoreDll.dll referenced with different capitalisation
  * [LOG4NET-73] - ADONetAppender.ActivateOptions() leaks database
  connection when called multiple times
* Thu Mar 29 2007 rguenther@suse.de
- add unzip BuildRequires
* Mon May 22 2006 jhargadon@novell.com
- fix for bug 148685 This was a remotely triggerable vulnerability
  issue where the syslog() function from glibc was used incorrectly.
* Wed Apr 26 2006 wberrier@suse.de
- Change to noarch package, remove unnecessary deps
* Sat Feb 25 2006 aj@suse.de
- Do not build as root
- Reduce BuildRequires.
* Tue Feb 07 2006 ro@suse.de
- drop self obsoletes
* Wed Jan 25 2006 mls@suse.de
- converted neededforbuild to BuildRequires
* Thu Jan 12 2006 ro@suse.de
- modified neededforbuild (use mono-devel-packages)
* Mon Nov 28 2005 cgaisford@novell.com
- Initial package creation