diff options
author | Anas Nashif <anas.nashif@intel.com> | 2012-11-07 06:40:21 -0800 |
---|---|---|
committer | Anas Nashif <anas.nashif@intel.com> | 2012-11-07 06:40:21 -0800 |
commit | 0ff5c26b2325a3dca51fd98da79b102380664642 (patch) | |
tree | 1d8dc27da76ab2f52f522e2f953312cfb198eaa2 | |
parent | 400658dcfa9907410cbdd2389b0272ae00856516 (diff) | |
download | xmlcharent-0ff5c26b2325a3dca51fd98da79b102380664642.tar.gz xmlcharent-0ff5c26b2325a3dca51fd98da79b102380664642.tar.bz2 xmlcharent-0ff5c26b2325a3dca51fd98da79b102380664642.zip |
add packaging
-rw-r--r-- | packaging/xmlcharent.spec | 161 |
1 files changed, 161 insertions, 0 deletions
diff --git a/packaging/xmlcharent.spec b/packaging/xmlcharent.spec new file mode 100644 index 0000000..690373e --- /dev/null +++ b/packaging/xmlcharent.spec @@ -0,0 +1,161 @@ +# +# spec file for package xmlcharent (Version 0.3) +# +# Copyright (c) 2010 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/ +# + + + +Name: xmlcharent +Version: 0.3 +Release: 405 +License: BSD-3-Clause +Summary: XML Character Entities +Url: http://www.oasis-open.org/committees/docbook/xmlcharent/ +Group: Productivity/Publishing/XML +Source0: http://www.oasis-open.org/committees/docbook/%{name}/%{version}/%{name}-%{version}.zip +Source1: catalog.xml +Source2: CATALOG.xmlcharent +BuildRequires: sgml-skel +BuildRequires: unzip +%define regcat /usr/bin/sgml-register-catalog +Requires(pre): %{regcat} +Requires(pre): /usr/bin/edit-xml-catalog +Requires(pre): /usr/bin/xmlcatalog +Requires(pre): gawk +Requires(pre): grep +Requires(pre): sed +Requires: libxml2 +Requires: sgml-skel +BuildRoot: %{_tmppath}/%{name}-%{version}-build +BuildArch: noarch + +%description +XML encodings for the 19 standard character entity sets defined in +non-normative Annex D of [ISO 8879:1986]. + +%define INSTALL install -m755 -s +%define INSTALL_DIR install -d -m755 +%define INSTALL_DATA install -m644 +%define INSTALL_SCRIPT install -m755 -o root -g root +%define sgml_dir %{_datadir}/sgml +%define sgml_var_dir /var/lib/sgml +%define sgml_mod_dir %{sgml_dir}/xmlcharent +%define xml_dir %{_datadir}/xml +%define xml_mod_dir %{xml_dir}/entities/%{name}/%{version} +%define sgml_config_dir /var/lib/sgml +%define sgml_sysconf_dir %{_sysconfdir}/sgml +%define xml_config_dir /var/lib/xml +%define xml_sysconf_dir %{_sysconfdir}/xml + +%prep +%setup -n %{name} -c -T +unzip -aq %{SOURCE0} +sed 's|@VERSION@|%{version}| +s|@DIR@|%{xml_mod_dir}|' %{SOURCE1} >catalog.xml +sed 's|@VERSION@|%{version}| +s|@DIR@|%{xml_mod_dir}|' %{SOURCE2} >CATALOG.%{name} +#%setup -q -n %{name} + +%build +# # lynx -width=300 -dump entities-2002-03-19.html \ +# # | grep '\(Public\|System\) identifier' \ +# # | awk -F 'entifier: ' ' +# # / System i/ {printf "\"%s\"\n", gensub(/.*\//,"%{sgml_dir_iso}/", g, $2)} +# # / Public i/ {printf "PUBLIC \"-//%s\" ", $2}' > CATALOG.xmlcharent +# { +# for f in iso-*.ent; do +# { +# grep ' *ISO 8879:1986' $f | sed 's:^ \+::' \ +# | awk '{printf "PUBLIC \"-//%s\"", $0}'; +# echo " \"%{sgml_dir_iso}/$f\""; +# } +# done +# } > CATALOG.xmlcharent +# sed 's:%{xml_mod_dir}/::' CATALOG.xmlcharent > sgml.catalog +# Prep XML catalog fragment +%define FOR_ROOT_CAT for-catalog-%{name}-%{version}.xml +xmlcatbin=/usr/bin/xmlcatalog +# build root catalog fragment +rm -f %{FOR_ROOT_CAT}.tmp +$xmlcatbin --noout --create %{FOR_ROOT_CAT}.tmp +CATALOG=%{xml_mod_dir}/catalog.xml +$xmlcatbin --noout --add "delegatePublic" "ISO 8879:1986//ENTITIES" \ + "file://$CATALOG" %{FOR_ROOT_CAT}.tmp +# Create tag +sed '/<catalog/a\ + <group id="%{name}-%{version}"> +/<\/catalog/i\ + </group>' \ + %{FOR_ROOT_CAT}.tmp > %{FOR_ROOT_CAT} + +%install +%{INSTALL_DIR} %{buildroot}{%{xml_mod_dir},%{sgml_dir},%{sgml_var_dir}} +%{INSTALL_DATA} catalog.xml *.ent %{buildroot}%{xml_mod_dir} +%{INSTALL_DATA} CATALOG.xmlcharent %{buildroot}%{sgml_var_dir} +pushd %{buildroot}%{sgml_dir} +ln -sf ../../../var/lib/sgml/CATALOG.* . +popd +pushd %{buildroot}%{xml_mod_dir} +for f in *.ent; do + ln -sf "$f" "${f/-}" +done +popd +# parse-sgml-catalog.sh CATALOG.xmlcharent > CATALOG.norm +# sgml2xmlcat.sh -i CATALOG.norm \ +# -l -s '%{buildroot}/usr/share/sgml' -p xmlcharent +# +mkdir -p %{buildroot}%{_sysconfdir}/xml +install -m644 %{FOR_ROOT_CAT} %{buildroot}%{_sysconfdir}/xml +# +%define all_cat xmlcharent + +%post +if [ -x %{regcat} ]; then + for c in %{all_cat}; do + grep -q -e "%{sgml_dir}/CATALOG.$c\\>" /etc/sgml/catalog \ + || %{regcat} -a %{sgml_dir}/CATALOG.$c >/dev/null 2>&1 || : + done +fi +xmlcatbin=usr/bin/xmlcatalog +if [ -x /usr/bin/edit-xml-catalog ]; then +/usr/bin/edit-xml-catalog --group --catalog /etc/xml/suse-catalog.xml \ + --add /etc/xml/%{FOR_ROOT_CAT} +fi + +%postun +if [ "$1" = "0" -a -x %{regcat} ]; then + for c in %{all_cat}; do + %{regcat} -r %{sgml_dir}/CATALOG.$c >/dev/null 2>&1 || : + done +fi +xmlcatbin=/usr/bin/xmlcatalog +# remove entries only on removal of file +if [ ! -f %{xml_sysconf_dir}/%{FOR_ROOT_CAT} -a -x /usr/bin/edit-xml-catalog ] ; then + /usr/bin/edit-xml-catalog --group --catalog /etc/xml/suse-catalog.xml \ + --del %{name}-%{version} +fi + +%files +%defattr(-, root, root) +# %doc entities-*.html +%{xml_mod_dir} +%config %{_sysconfdir}/xml/%{FOR_ROOT_CAT} +%config %{sgml_var_dir}/CATALOG.* +# %{sgml_dir}/ISO* +%{sgml_dir}/CATALOG.* +%dir %{xml_dir}/entities +%dir %{xml_dir}/entities/xmlcharent + +%changelog |