File w3c-markup-validator.spec of Package w3c-markup-validator

#
# spec file for package w3c-markup-validator (Version 0.8.3)
#
# Copyright (c) 2008 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


Name:           w3c-markup-validator
%define pkgname validator
%define apache_sysconfdir %{_sysconfdir}/apache2
%define apache_serverroot /srv/www
Version:        0.8.3
Release:        1
Summary:        W3C Markup Validator
Group:          Productivity/Networking/Web/Utilities
License:        Other uncritical OpenSource License
Url:            http://validator.w3.org/
Source0:        %{pkgname}-%{version}.tar.bz2
Source1:        sgml-lib-%{version}.tar.bz2
Source2:        %{pkgname}-opensuse-addons.tar.bz2
Patch0:         %{pkgname}-%{version}_httpd-conf.patch
BuildRoot:      %{_tmppath}/%{name}-%{version}-build
BuildArch:      noarch
BuildRequires:  apache2 perl sgml-skel
Requires:       perl(CGI) >= 2.81 
Requires:       apache2 opensp >= 1.5.2 perl %{name}-libs = %{version}
Requires:       perl(Encode) perl-Encode-HanExtra perl-Encode-JIS2K
Requires:       perl-Config-General >= 2.19 perl-HTML-Parser >= 3.25 perl-HTML-Template >= 2.6 perl-libwww-perl >= 5.60 perl-Net-IP perl-Set-IntSpan perl-Text-Iconv perl-URI
Requires:       perl-Class-Accessor perl-HTML-Encoding perl-SGML-Parser-OpenSP perl-Test-Exception perl-XML-LibXML
Requires:       perl-HTML-Tidy

%description
The W3C Markup Validator checks documents like HTML and XHTML for
conformance to W3C Recommendations and other standards.



Authors:
--------
    Sierk Bornemann <sierkb@gmx.de>

%package        libs
License:        Other uncritical OpenSource License
Summary:        W3C Markup Validator
Group:          Productivity/Networking/Web/Utilities
Requires:       sgml-skel

%description    libs
The W3C Markup Validator checks documents like HTML and XHTML for
conformance to W3C Recommendations and other standards.



Authors:
--------
    Sierk Bornemann <sierkb@gmx.de>

%prep
%setup -q -n %{pkgname}-%{version} -a 1 -a 2
mv %{pkgname}-%{version}/htdocs/sgml-lib .
rm -r %{pkgname}-%{version}/
%patch0
# Localize configs.
%{__perl} -pi -e \
  's|/usr/local/validator\b|%{apache_serverroot}/htdocs/%{name}|' \
  htdocs/config/validator.conf httpd/conf/httpd.conf httpd/cgi-bin/*
%{__perl} -pi -e \
  's|^(\s*)#Base\s*=\s*(.*)|${1}Base = ${2}| ;
   s|^(\s*Library\s*=\s*).*|${1}%{_datadir}/sgml/%{name}| ;
   s|^(\s*TidyConf\s*=\s*).*|${1}%{_sysconfdir}/w3c/tidy.conf| ;
   s|\bwww-validator\@w3\.org\b|root\@localhost| ;
   s|/validator\.w3\.org/|/localhost/w3c-markup-validator/|' \
  htdocs/config/validator.conf
# Move config out of the way
mv htdocs/config __config
# Fixup permissions
find . -type d | xargs chmod 755
find . -type f | xargs chmod 644
chmod 755 httpd/cgi-bin/check
chmod 755 httpd/cgi-bin/sendfeedback.pl

%build

%install
rm -rf $RPM_BUILD_ROOT
# Config files
install -dm 755 $RPM_BUILD_ROOT%{_sysconfdir}/w3c
install -pm 644 __config/* $RPM_BUILD_ROOT%{_sysconfdir}/w3c
install -Dpm 644 httpd/conf/httpd.conf $RPM_BUILD_ROOT%{apache_sysconfdir}/conf.d/%{name}.conf
install -Dpm 644 %{pkgname}-opensuse-addons/validator-vhost.conf $RPM_BUILD_ROOT%{apache_sysconfdir}/vhosts.d/%{name}.conf.template
# Scripts, HTML, etc.
install -dm 755 $RPM_BUILD_ROOT%{apache_serverroot}/htdocs/%{name}
cp -pR httpd/cgi-bin htdocs share $RPM_BUILD_ROOT%{apache_serverroot}/htdocs/%{name}
# SGML library
install -dm 755 $RPM_BUILD_ROOT%{_datadir}/sgml
cp -pR sgml-lib $RPM_BUILD_ROOT%{_datadir}/sgml/%{name}
install -dm 755 $RPM_BUILD_ROOT%{_sysconfdir}/sgml
touch $RPM_BUILD_ROOT%{_sysconfdir}/sgml/%{name}-%{version}-%{release}.cat
# Files for local use
install -dm 755 $RPM_BUILD_ROOT%{_defaultdocdir}/%{name}
mv %{pkgname}-opensuse-addons/README.openSUSE .

%clean
rm -rf $RPM_BUILD_ROOT

%post
%{_initrddir}/apache2 reload &>/dev/null || :

%postun
%{_initrddir}/apache2 reload &>/dev/null || :

%post libs
for catalog in sgml.soc xml.soc ; do
  install-catalog --add \
    %{_sysconfdir}/sgml/%{name}-%{version}-%{release}.cat \
    %{_datadir}/sgml/%{name}/$catalog >/dev/null 2>&1 || :
done

%preun libs
for catalog in sgml.soc xml.soc ; do
  install-catalog --remove \
    %{_sysconfdir}/sgml/%{name}-%{version}-%{release}.cat \
    %{_datadir}/sgml/%{name}/$catalog >/dev/null 2>&1 || :
done

%files
%defattr(-, root, root)
# Configs not "noreplace", they're incompatible to some extent between releases
%doc README*
%config %{apache_sysconfdir}/conf.d/%{name}.conf
%config %{apache_sysconfdir}/vhosts.d/%{name}.conf.template
%config %{_sysconfdir}/w3c/
%{apache_serverroot}/htdocs/%{name}/

%files libs
%defattr(-, root, root)
%ghost %config %{_sysconfdir}/sgml/%{name}-%{version}-%{release}.cat
%{_datadir}/sgml/%{name}/

%changelog
* Tue Aug 19 2008 pgajdos@suse.cz
- Update validator and sgml-libs to stable release version 0.8.3:
  *   The 0.8.3 release of the W3C Markup Validator is a bug fix
  release, with a few small additional features.
  *   Changes include:
      - Bug Fix: in version 0.8.2, revalidation of an uploaded file
  was broken (missing markup in the HTML form)
      - Updates: Added support for XHTML Basic 1.1, XHTML Mobile
  Profiles (1.0, 1.1 and 1.2) and the historical HTML i18n
      - Bug Fix: the validator won't override a given document
  type with itself
      - Conformance: The validator now warns about inconsistent
  public/system identifiers combinations
      - API: The custom HTTP headers in validator responses now also
  include the number of warnings
      - Experimental Feature: added the new option to send specific
  'Accept-Charset' and 'User-Agent' headers, in addition to
  'Accept' and 'Accept-Language' in version 0.8.2.
      - Experimental Feature: the validator can output its results
  as JSON.
      - Documentation: Some documentation updates
      - Development: New automated support and regression test suite
* Thu Jan 17 2008 pgajdos@suse.cz
- updated to 0.8.2:
  *  Bug Fix: processing of documents through HTML Tidy would be triggered
  even when not requested. The fix should provide a noticeable performance boost.
  * Bug Fix: forcing or overriding the Doctype declaration would not work with
  documents using an XML Declaration (Bug 857). The fix should make it much
  easier to validate e.g. SVG documents.
  * Bug Fix: Making sure that the validator requests a fresh version of the online
  resources, when an older cached version could be returned.
  * Usability: when using file upload or direct input modes, the result page will
  now include a text area filled with the validated source, for easy fixing
  and revalidation.(Bug 4342)
  * Accessibility: the main interface was made friendlier to screen readers
  * Experimental Feature: new options were added to trigger Format and
  Language negotiation.
  * New Feature: automatic detection of the document type for SVG documents,
  even without a DOCTYPE declaration. Validation of SVG only supported for
  standalone SVG documents, up to SVG 1.1.
  * Documentation updates
* Tue Aug 28 2007 pgajdos@suse.cz
- [#220343]
- Update validator and sgml-libs to stable release version 0.8.1:
  The 0.8.1 release of the W3C Markup Validator is a bug fix
  release, addressing the following issues:
  - Bug Fix: changed set up of parser responsible for checking XML
  well-formedness, which would retrieve schemas for entities
  each time the validator would run.
  - Bug Fix: the validator would incorrectly complain about HTML/XML
  named entities (such as ©).
  - Bug Fix: fixing referer checking
  when running with Apache and mod_perl2.
  - Bug Fix: the validator would crash when called from browsers with rare language preference settings
  - ... and small performance and code cleanup fixes.
* Thu Jul 26 2007 pgajdos@suse.cz
- package moved from OBS, version 0.8.0
  Wed Jul 25 12:00:00 CEST 2007 sierkb@gmx.de
- Update validator and sgml-libs to stable release version 0.8.0:
  Releasing version 0.8.0 of the W3C Markup Validator,
  a major milestone in the development of the validator,
  including changes in its architecture, UI, new features
  and fewer bugs, for a better, more accurate and helpful quality process.
  This release includes all the changes and bug reports of the 0.8.0 Beta 1
  and 0.8.0 Beta 2.
  Fri Jun 1 00:00:00 CEST 2007 sierkb@gmx.de
- Update validator and sgml-libs to version 0.8.0 Beta 2:
  Testing the second beta revision of the validator version 0.8.0. This new version
  builds upon the 0.8.0 Beta 1, and adds bug fixes, documentation
  updates and a polished UI with improved style and interaction. Changes include:
  - Revised main UI. Cleaner design. Improved tabbing between validation methods. Adding toggled option visibility
  - Bug Fix: Fixing transcoding issues, encoding of source display
  - Bug Fix: For XML document types, not reporting xmlns:* attributes as an error
  - New Feature: Adding error message id to the SOAP API, error context (source snippet), added error message explanation
  - Bug Fix: Fixed fatal error display in SOAP API
  - Bug Fix: Fixed line number display in case of broken encoding
  - Usability: more usable fatal error displays, removed "reset form" button, rewordings, error message explanations...
  - Bug Fix: Fixed outline for non-xml document types
  - New FEature: Added support for XHTML + RDFa
  - New Feature: For non-xhtml XML documents without document type,
  the validator will not try to perform validation and will only check well-formedness
  - code cleanup, other bug fixes
  Tue Apr 19 00:00:00 CEST 2007 sierkb@gmx.de
- Update validator and sgml-libs to version 0.8.0 Beta 1:
  Testing version 0.8.0 Beta #1 of the Markup Validator; a new version including
  important changes in architecture, performance, reliability of validation for XML-based languages,
  improvements to the User Interface, and a number of new features. Changes include:
  - New architecture, faster and more reliable, scaling better to the growing usage of the validator
  - Improved interface for better usability, accessibility
  - New feature: automatic cleanup of markup (with Tidy)
  - New feature: additional XML-Well-Formedness check, for more reliable validation of XML-based languages
  - Back by popular demand: document outline feature
  - New feature: checking that the documents are sent with proper Internet Media Type (MIME type)
  - New feature: for XML documents, checking that the xmlns is present, and properly set.
  - New feature: grouped messages, an alternate view to the sequential display of errors
  - New feature: Direct Input validation can check full documents AND HTML fragments
  - Added support for SMIL 2.1, XHTML Basic 1.1
  - Bug fixes
  Tue Jan 13 00:00:00 CET 2007 sierkb@gmx.de
- Rebuild for openSUSE 10.2.
- Spec file cleanups.
  Tue Nov 14 00:00:00 CET 2006 sierkb@gmx.de
- Update validator and sgml-libs to stable release version 0.7.4:
  Releasing version 0.7.4 of the W3C Markup Validator,
  a maintenance release including bug fixes and documentation updates.
  Changes include:
  - Bug fixes to the validator's API
  - The proprietary XML output format is (still) deprecated, and will be removed in version 0.8.0
  - The outline feature, broken in version 0.7.3, is back.
  - Local installations of the validator can be configured to enable or disable  the API
  - Validation icons are now available in two colors and 4 file formats, including PNG and SVG
  - Documentation updates
  Mon Oct 23 00:00:00 CET 2006 sierkb@gmx.de
- Update validator and sgml-libs to stable release version 0.7.3:
  Releasing version 0.7.3 of the W3C Markup Validator,
  a maintenance release including fixes, updates, and includes an
  experimental API to interface the validator with other programs and services.
  Changes include:
   - A new (experimental) Web Services API (docs/api.html)
   - The proprietary (and experimental) XML output format is deprecated
   - New Document type supported: XHTML-Print
   - New Character Encoding supported ISO-8859-11 (Thai)
   - Usability fix: better error messages for documents with no character encoding
  declared, and for which the encoding fallback fails
   - HTTP Fix: Be more lenient about whitespace and linefeeds in Content-Type
   - Usability Fix: Adding the possibility of Doctype Override for SVG Document Types
   - Compatibility Fix for OpenSP 1.5.2
   - documentation updates and improvements
   - Improved Feedback mechanisms
- 'valid SVG' badges added to openSUSE addons for local use.
- htdocs/config/types.conf:
  Relative URIs of 'valid SVG' badge and 'valid SVG Tiny' badge for local use.
  Thu Jun 15 00:00:00 CEST 2006 sierkb@gmx.de
- Rebuild for SUSE Linux 10.1
  Tue Apr 23 00:00:00 CET 2006 sierkb@gmx.de
- Update validator and sgml-libs to latest stable CVS 0.7.2-release
  Mon Apr 3 00:00:00 CET 2006 sierkb@gmx.de
- Update validator and sgml-libs to stable CVS 0.7.2-release
  Note: some hot fixes, which are part of this release,
  didn't make it into the release published in february.
  Wed Mar 15 00:00:00 CET 2006 sierkb@gmx.de
- Spec file cleanup: removed #neededforbuild
  Mon Feb 20 00:00:00 CET 2006 sierkb@gmx.de
- Update validator and sgml-libs to stable release version 0.7.2:
  Releasing version 0.7.2 of the Markup Validator, a maintenance release
  including minor fixes as described below:
  - update for compatibility with new version of Config::General module
  - fixed the recognized root element for XHTML 1.1 plus MathML 2.0 (plus SVG)
  - avoid Text::Wrap error with deeply nested documents
  - documentation fixes (typos, broken link)
  - avoid trailing comma in failed validation results if number of errors is unknown
  - consistency fixes for character encoding selection
  - fixed support for iso-8859-3 and iso-8859-4 encodings, added support for iso-ir-111
  Wed Nov 23 00:00:00 CET 2005 sierkb@gmx.de
- SUSE addons are now comprised in a Tarball instead of spread files.
  Thu Nov 17 00:00:00 CET 2005 sierkb@gmx.de
- types.conf: using the proper root elements for the doctype override to
  XHTML 1.1 plus MathML 2.0 or XHTML 1.1 plus MathML 2.0 plus SVG 1.1.
- Spec file: removed depency from apxs (apache2-devel package).
- Rebuild for SuSE Linux 10.0 OSS (GCC 4.0.2).
  Wed Nov 9 00:00:00 CET 2005 sierkb@gmx.de
- validator.conf: With respect to default security, I changed
  'Allow Private IPs = yes' back to 'Allow Private IPs = no'.
- Wrote and added README file.
- Spec file: Improved Requires Directive.
  Tue Nov 1 00:00:00 CET 2005 sierkb@gmx.de
- Update validator and sgml-libs to stable release version 0.7.1:
  Releasing version 0.7.1 of the Markup Validator,
  a maintenance release introducing performance enhancements
  and including minor fixes in the user interface
  and in the "Direct Input" validation results.
- Spec file: Updated and optimized patches for local use.
  Thu Aug 11 00:00:00 CEST 2005 sierkb@gmx.de
- Update validator and sgml-libs to stable release version 0.7.0:
  Stable release including all fixes and improvements made in consecutive
  beta versions 0.7.0 Beta #2 and 0.7.0 Beta #1.
  Mon Aug 1 00:00:00 CEST 2005 sierkb@gmx.de
- Update validator and sgml-libs to 0.7.0b2 (beta version 2):
  Testing version 0.7.0 Beta #2 of the Markup Validator, the second phase of
  beta test of a new version, including the results of feedback during the
  first phase of beta testing.
  Most bugs and issues resolved were recorded in our bugzilla database.
  Changes from version 0.7.0 Beta#1 include:
  - Improvements in the way the results and errors number is displayed,
  with a bug fix in error count.
  - Bug fixes:
    - The error number count in resuts now only counts errors,
  not warnings or other messages
    - A missing entry in the SGML catalog was added
    - The direct input interface now handles cases where n- content is
  set properly
  - Running the validator under mod_perl is n- longer supported
  - Simplified configuration sample for an installation on the Apache Server
  - Documentation updates
  Tue Jul 19 00:00:00 CEST 2005 sierkb@gmx.de
- Update validator and sgml-libs to 0.7.0b1 (beta version 1):
  Testing version 0.7.0 Beta #1 of the Markup Validator; a new version
  including small architectural changes, improvements t- the User Interface,
  documentation and user-friendliness, as well as a number of bug fixes.
  Most bugs and issues resolved were recorded in our bugzilla database.
  Changes include:
  - Templates for the XHTML output of validation results:
    - less inline markup
    - easier for multi-format output
    - getting close t- the possibility of localization
  - Better feedback mechanisms
    - Integration of the feedback page with validation results for better
  error message feedback
    - The feedback page now allows direct search of the mailing-list and
  bug database
  - Additional and improved error messages explanations and documentation
  - Variants of HTML2, MathML and SVG added t- the bundled SGML and XML catalogs
  - Better support for validation of non-W3C document types, including custom DTDs
  - User Interface and style changes for a user-friendlier experience, including
    - New print stylesheet, handheld stylesheets
    - Style differentiating errors, warnings and information in
  validation results
  - (re-)Added the possibility of validating markup by direct input
  - Simplified configuration syntax (for local installations)
  - Made easier t- run on Windows platform (still needs testing and
  documentation)
  - Global updates t- the documentation
  - Simplified, documented and checked the consistency of our usage of Access Keys
- Spec file: Brought -libs post(un)install scriptlets up to date with sgml-lib/*.soc.
  Fri Jun 17 00:00:00 CEST 2005 sierkb@gmx.de
- Updated sgml-libs to 0.6.7.
  Tue Jun 14 00:00:00 CEST 2005 sierkb@gmx.de
- Added patches for local use.
- Added configuration for VirtualHost use.
  Thu Jun 9 00:00:00 CEST 2005 sierkb@gmx.de
- Initial build for SuSE Linux.
- validator 0.6.7, sgml-libs 0.6.5.
openSUSE Build Service is sponsored by