#
# spec file for package openjade
#
# Copyright (c) 2017 SUSE LINUX 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/
#
%define regcat %{_bindir}/sgml-register-catalog
Name: openjade
Version: 1.3.2
Release: 372.13
Summary: DSSSL Engine for SGML Documents
License: MIT
Group: Productivity/Publishing/SGML
Url: http://openjade.sourceforge.net/
Source: http://switch.dl.sourceforge.net/sourceforge/openjade/openjade-1.3.2.tar.bz2
Source1: jade_style-sheet.dtd
Source2: %{name}-README.SUSE
Patch1: openjade-1.3.1-autoconf.dif
Patch2: openjade-1.3.2-makefile.patch
Patch3: openjade-1.3.2-shared.patch
Patch4: gcc46_default_ctors.patch
Patch5: openjade-1.3.2-getopts.patch
Patch100: openjade-1.3.2-autoconf-2.70.patch
BuildRequires: gcc-c++
BuildRequires: libtool
BuildRequires: opensp-devel
Requires: opensp
Requires(pre): %{regcat}
# Conflicts: jade_dsl
Obsoletes: jade_dsl
Provides: jade
Provides: jade_dsl
%description
OpenJade, the follow-up to Jade by James Clark, is an implementation of
the ISO/IEC 10179:1996 standard DSSSL (Document Style, Semantics, and
Specification Language); pronounce it "dissl"--it rhymes with whistle.
It has back-ends for SGML, RTF, MIF, TeX, and HTML.
The parser, "nsgmls," and helper tools like "sgmlnorm," "spam,"
"spent," and "sx" are now included in the separate "opensp" package.
%package devel
Summary: DSSSL Engine (development package)
Group: Development/Languages/C and C++
Requires: %{name} = %{version}
%description devel
Libraries and includes to compile applications that use the OpenJade
framework (package 'openjade').
%define INSTALL install -m755 -s
%define INSTALL_DIR install -d -m755
%define INSTALL_DATA install -m644
%define sgml_dir %{_datadir}/sgml
%define sgml_dir_pkg %{sgml_dir}/%{name}
%define sgml_var_dir %{_localstatedir}/lib/sgml
%prep
%setup -q
# -n %%{name}-1.3.2-rc2
cp %{SOURCE1} dsssl
cp %{SOURCE2} README.SUSE
%patch1
%patch2 -p1
%patch3
%patch4
%patch5
%patch100 -p1
%build
# export CXXFLAGS='-O'
%if 0%{?suse_version} > 1320
export CXXFLAGS="%{optflags} -fno-lifetime-dse"
%else
export CXXFLAGS="%{optflags}"
%endif
# export CXXFLAGS="-g -march=i486 -mcpu=i686"
# export DEFAULT_SCHEME_BUILTINS=/usr/share/sgml/openjade/builtins.dsl
# % {?suse_update_config:% {suse_update_config config}}
rm -fv aclocal.m4 missing
[ -r config/configure.in ] && mv config/configure.in .
libtoolize --force
aclocal -I config
#automake --force --copy
# libtoolize --copy --force
autoconf --force
# # not using autoconf, because we don't have Makefile.am and that is
# # the only way to pass flags to aclocal called by autoreconf
# autoreconf --force --install -I config
%configure --disable-static --with-gnu-ld --with-pic \
--datadir=%{sgml_dir}/openjade \
--enable-splibdir=%{_libdir} \
--enable-http \
--enable-mif \
--enable-default-catalog="CATALOG:%{_sysconfdir}/sgml/catalog:%{sgml_dir}/CATALOG"
# [ -r jade/openjade.orig ] && mv jade/openjade.orig jade/openjade
make %{?_smp_mflags}
# # now start building the debug version
# mv jade/openjade jade/openjade.orig
# zcat %%{P:5} | patch -s -p 1
# make
# mv jade/openjade jade/openjade-valid-fo
# mv jade/openjade.orig jade/openjade
%install
%{INSTALL_DIR} %{buildroot}%{_libdir} \
%{buildroot}%{sgml_dir}/%{name} \
%{buildroot}%{_includedir}/%{name}
%make_install
ln -sf openjade %{buildroot}%{_bindir}/jade
[ -r jade/openjade-valid-fo ] && install -s jade/openjade-valid-fo %{buildroot}%{_bindir}
make install-man DESTDIR=%{buildroot}
pushd %{buildroot}%{_mandir}
# find . ! -name 'jade*' -exec rm -f {} \;
pushd man1 && ln -sf openjade.1 jade.1 && popd
popd
/sbin/ldconfig -n %{buildroot}%{_libdir}
# %%{INSTALL_DATA} include/*.* $RPM_BUILD_ROOT%%{_includedir}/%%{name}
%{INSTALL_DATA} generic/*.h %{buildroot}%{_includedir}/%{name}
%{INSTALL_DATA} grove/Node.h %{buildroot}%{_includedir}/%{name}
%{INSTALL_DATA} spgrove/GroveApp.h \
spgrove/GroveBuilder.h %{buildroot}%{_includedir}/%{name}
%{INSTALL_DATA} style/FOTBuilder.h style/GroveManager.h \
style/DssslApp.h style/dsssl_ns.h \
%{buildroot}%{_includedir}/%{name}
# pushd $RPM_BUILD_ROOT%%{_mandir}/man1
# popd
# pushd $RPM_BUILD_ROOT%%{_bindir}
# popd
# %%{INSTALL_DIR} $RPM_BUILD_ROOT/etc/profile.d
# %%{INSTALL_DATA} jade_dsl.sh $RPM_BUILD_ROOT/etc/profile.d
%{INSTALL_DIR} %{buildroot}%{sgml_dir_pkg}
# comes with opensp:
# %%{INSTALL_DATA} japan.sgmldecl $RPM_BUILD_ROOT%%{sgml_dir_pkg}/japan.dcl
# %%{INSTALL_DATA} pubtext/xml.dcl $RPM_BUILD_ROOT%%{sgml_dir_pkg}/xml.dcl
# sed 's|decl|dcl|' pubtext/xml.soc > $RPM_BUILD_ROOT%%{sgml_dir_pkg}/xml.soc
pushd dsssl
%{INSTALL_DATA} catalog dsssl.dtd extensions.dsl fot.dtd style-sheet.dtd \
builtins.dsl jade_style-sheet.dtd %{buildroot}%{sgml_dir_pkg}
%{INSTALL_DIR} %{buildroot}%{sgml_var_dir}
sed 's:"\([^"]*\(dtd\|dsl\)\)"$:"%{sgml_dir_pkg}/\1":' catalog \
> %{buildroot}%{sgml_var_dir}/CATALOG.%{name}
ln -sf CATALOG.%{name} %{buildroot}%{sgml_var_dir}/CATALOG.jade_dsl
cd %{buildroot}%{sgml_dir} \
&& ln -sf ../../..%{sgml_var_dir}/CATALOG.%{name} CATALOG.%{name} \
&& ln -sf ../../..%{sgml_var_dir}/CATALOG.%{name} CATALOG.jade_dsl
popd
%{INSTALL_DIR} %{buildroot}%{sgml_dir}/James_Clark/dtd
%{INSTALL_DIR} %{buildroot}%{sgml_dir}/OpenJade/dtd
%{INSTALL_DIR} %{buildroot}%{sgml_dir}/ISO_IEC_10179:1996/dtd
(cd %{buildroot}%{sgml_dir}/James_Clark/dtd \
&& ln -sf ../../$RPM_PACKAGE_NAME/jade_style-sheet.dtd DSSSL_Style_Sheet \
&& ln -sf ../../$RPM_PACKAGE_NAME/fot.dtd DSSSL_Flow_Object_Tree)
(cd %{buildroot}%{sgml_dir}/OpenJade/dtd \
&& ln -sf ../../$RPM_PACKAGE_NAME/style-sheet.dtd DSSSL_Style_Sheet)
(cd %{buildroot}%{sgml_dir}/ISO_IEC_10179:1996/dtd \
&& ln -sf ../../$RPM_PACKAGE_NAME/dsssl.dtd DSSSL_Architecture)
# for compatibility with SL <= 8.1
pushd %{buildroot}%{sgml_dir}
pushd %{name}
ln -s ../opensp/japan.dcl .
ln -s ../opensp/opensp-implied.dcl sp_implied.dcl
ln -s ../opensp/xml.dcl .
ln -s ../opensp/xml.soc .
for d in *.dcl; do
ln -sf $d ${d/.dcl/.decl}
done
popd
popd
rm -fr html
cp -a jadedoc html
echo "\
README.SUSE
OpenJade documentation (html)" > index.html
grep -r include %{buildroot}%{_includedir}
%post
/sbin/ldconfig
if [ -x %{regcat} ]; then
%{regcat} -a %{sgml_dir}/CATALOG.%{name} >/dev/null 2>&1
fi
exit 0
%postun
/sbin/ldconfig
if [ "$1" = "0" -a -x %{regcat} ]; then
%{regcat} -r %{sgml_dir}/CATALOG.%{name} >/dev/null 2>&1
fi
exit 0
%files
%doc COPYING NEWS README*
%doc index.html html
%doc dsssl develdoc testsuite
%doc japan.sgmldecl
%doc releasenotes.{html,pdf}
%{sgml_dir}/openjade
%{_bindir}/*jade*
# %%{_mandir}/*/*jade*
%{_mandir}/*/*
# %%config /etc/profile.d/jade_dsl.sh
%{sgml_dir}/CATALOG.%{name}
%config %{sgml_var_dir}/CATALOG.%{name}
#for compatibility <= 8.1
%{sgml_dir}/CATALOG.jade_dsl
%{sgml_var_dir}/CATALOG.jade_dsl
%{sgml_dir}/ISO_IEC_10179:1996
%{sgml_dir}/James_Clark
%{sgml_dir}/OpenJade
%{_libdir}/lib*.so.*
%files devel
%{_includedir}/%{name}
%{_libdir}/lib*.so
%exclude %{_libdir}/*a
%changelog
* Mon Nov 13 2017 mpluskal@suse.com
- Run spec-cleaner
* Mon Nov 13 2017 dimstar@opensuse.org
- Rename README.SuSE to README.SUSE, adhering to the correct
spelling.
- Set RPM group for -devel package to "Development/Languages/C and
C++" (fix rpmlint warning).
* Mon Feb 15 2016 rguenther@suse.com
- Build with -fno-lifetime-dse because of object lifetime violations
within style/Collector.h
* Mon Jun 11 2012 mls@suse.de
- don't use obsolete getops.pl
* Sun Nov 27 2011 coolo@suse.com
- add libtool as buildrequire to avoid implicit dependency
* Thu May 26 2011 idonmez@novell.com
- Drop unapplied openjade-1.3-starlink-0.1.patch and
valid_fo_patch2.gz patches
* Tue May 10 2011 cgiboudeaux@gmx.com
- Add gcc46_default-ctors.patch. Adds the missing ctors to build with gcc 4.6
* Mon Jan 14 2008 crrodriguez@suse.de
- fix build to build with recent versions of opensp
* Fri Feb 9 2007 aj@suse.de
- Add defattr.
* Wed Jan 25 2006 mls@suse.de
- converted neededforbuild to BuildRequires
* Wed Sep 21 2005 ke@suse.de
- openjade-1.3.2-spgrove-makefile-fix.patch: Remove misleading link
specifications; thanks for hints to Dirk Mueller.
* Mon Oct 6 2003 kukuk@suse.de
- Remove sgml-skel from needed for build
* Wed May 21 2003 ke@suse.de
- Install jade manpage properly [# 26995]; reported by Tomas Kouba.
- Use %%postun and remove actalog entry on update only.
* Mon May 12 2003 ro@suse.de
- run libtoolize
* Mon Feb 17 2003 ke@suse.de
- Remove aclocal.m4 and missing before calling aclocal; reported by Olaf
Hering.
* Thu Feb 6 2003 ke@suse.de
- Register CATALOG.openjade in /etc/sgml/catalog; reported by Marcus
Meissner.
* Thu Jan 30 2003 ke@suse.de
- Stop providing the jade_dsl compatibility link in /usr/share/sgml.
- Add README.SuSE: it explains how to create the link if wanted.
* Mon Dec 2 2002 ke@suse.de
- Update to 1.3.2:
* Minor fixes to MIF backend.
* Correct typo in definition of "attribute" in builtin.dsl.
* Fix quoted of ampersand in XML/SGML transformations.
* Wed Nov 27 2002 ke@suse.de
- Link against %%_libdir.
* Tue Nov 26 2002 ke@suse.de
- Update to version 1.3.2rc2.
- Make opensp/opensp-devel a package on its own; provide openjade-devel
as a subpackage.
- Provide compatibility links with jade_dsl (these links will go away
on SuSE Linux 9.0).
* Mon Nov 11 2002 ke@suse.de
- Create subpackage opensp-devel (from opensp).
- Fix various jade_dsl compatibility issues.
* Fri Nov 8 2002 ke@suse.de
- Prepare package as the default DSSSL engine on SuSE Linux, replacing
jade_dsl; provide links for compatibility.
- Create subpackage 'opensp'.
- Add, but don't activate valid_fo_patch2.gz, provided by N. Lundblad,
Peter.
* Wed Aug 21 2002 ke@suse.de
- Rename 'sx' man page to 's2x' resp. 'osgml2xml'.
- Don't install files under /usr/share/sgml conflicting with jade_dsl.
* Mon Aug 19 2002 ke@suse.de
- Install man pages; reported by Ian Castle [# 18047].
* Fri Jun 21 2002 ke@suse.de
- openjade-dtddecl-warning.diff: Remove DTDDECL warning (cf. jade_dsl).
- Add convenience links again (take over from jade_dsl) [# 4413].
* Fri Apr 19 2002 ro@suse.de
- work around linking problem with undefined
Options::Options[in-charge](int, char* const*, char const*)
* Mon Apr 8 2002 ro@suse.de
- build with latest automake/autoconf
* Mon Feb 11 2002 schwab@suse.de
- Remove workaround for ia64.
- Simplify config cleanup a bit.
* Mon Feb 11 2002 ke@suse.de
- Update to version 1.3.1 (thus most of our config and build patches
are superfluous):
- Improve Tex back end; table processing works by far better now.
- Fopr more info cf. release notes in the documentation directory.
- Don't apply latex back end patch.
* Tue Jun 12 2001 schwab@suse.de
- Use namespaces with gcc 3.0.
- Fix configure script.
* Wed May 9 2001 mfabian@suse.de
- bzip2 sources
* Wed Feb 21 2001 mmj@suse.de
- Fixed to build on S/390 (yes, I know it's ugly so if someone
have a cleaner solution, let me know)
* Mon Jan 29 2001 ke@suse.de
- Apply latex backend patch.
- Use more rpm macros.
* Sun Dec 10 2000 schwab@suse.de
- Fix visibility bugs.
* Thu Nov 23 2000 ke@suse.de
- Don't install convenience links (at the moment they are useless)
[partially fix for #4413].
* Wed Nov 15 2000 ke@suse.de
- Add group tag.
- Use spec file macros.
* Fri May 12 2000 schwab@suse.de
- Fix for ia64.
* Fri Oct 29 1999 ke@suse.de
- Install `builtins.dsl'.
* Mon Oct 25 1999 ke@suse.de
- Initial package: version 1.3 (bug #172 resolved).