Re: [Refdb-users] ANN: RefDB RPM packages pulled, packagers wanted

David Nebauer <[email protected]>
Newsgroups gmane.text.refdb.devel
Message-ID <[email protected]>
Markus Hoenicka wrote:

>David Nebauer writes:
> > If there have been no takers for this, I'll have a stab at it.
>

I'm finding this a rather challenging project.  The build process for 
RefDB is complex and difficult to unravel -- at least for someone with 
my rudimentary knowledge of the GNU build process.

Two things I'd like the Debian install process to do that don't happen 
in the current standard install are:

1.  Install the refdb daemon as well as the relevant links to in the 
/etc/init.d|rc?.d tree.  The links are easy to create using the 
'update-rc.d' tool.  What I'd like the make system to handle is the 
copying of 'refdb' to '/etc/init.d' and ensuring it has the proper 
permissions -- what changes would be required to do this?

2.  Copy a html version of the manual to debian's document system.  What 
changes would be required to accomplish this?

Here are some of the components of the Debian install process as I've so 
far designed it.  Please feel free to comment on any changes you think 
advisable:

Dependencies:
docbook-xsl (>= 1.66.1-1), libacl1 (>= 2.2.23-1), libattr1 (>= 
2.4.16-1), libexpat1 (>= 1.95.8-1), libreadline4-dev (>= 4.3-11), 
libxml2 (>= 2.6.16-3), libxml2-utils (>=2.6.16-3), libxml-parser-perl 
(>= 2.34-4), zlib1g (>= 1), libdbi0-dev (>= 0.7.2-1), sqlite 
(>=2.8.16-1), libdbd-sqlite (>=0.7.1-2), sgml-data (>=2.0.2)

Suggested packages:
libtext-iconv-perl (>=1.2-3), libbtparse0 (>=0.34-1), libdbd-mysql 
(>=0.7.1-2), libdbd-pgsql (>=0.7.1-2)

One line description (hard limit 80 chars, recommended size < 60 chars):
reference database and bibliography tool for structured documents

Long description:
 RefDB is a reference database and bibliography tool for SGML,
 XML and LaTeX/BibTeX documents. It allows users to share
 databases over a network.
 .
 RefDB appears to be the only available tool to create HTML,
 PostScript, PDF, DVI, MIF, or RTF output from DocBook or
 TEI sources with fully formatted citations and bibliographies
 according to publisher's specifications. Additional document
 types can be easily added.

Copyright file (format is that recommended by debian manual):
.....................................................................................
This package was debianized by David Nebauer <[email protected]> on
Sat, 26 Feb 2005 18:26:08 +0930.

It was downloaded from 
<http://refdb.sourceforge.net/pre/refdb-latest.tar.gz>.

Copyright:
This software is copyright (c) 2004 by Markus Hoenicka 
<[email protected]>.

Upstream Author:
Markus Hoenicka <[email protected]>.

License:
This software is released under the GNU General Public License.
The full text of this license can be found via internet at 
<http://www.gnu.org/copyleft/gpl.html> and on Debian systems at 
</usr/share/common-licenses/GPL>.
.....................................................................................

Configure command from 'rules' file:
    CFLAGS="$(CFLAGS)" ./configure --host=$(DEB_HOST_GNU_TYPE) 
--build=$(DEB_BUILD_GNU_TYPE) --prefix=/usr 
--mandir=\$${prefix}/share/man --infodir=\$${prefix}/share/info 
--sysconfdir=/etc --sharedstatedir=/var --localstatedir=/var 
--with-classpath-root=/usr/share/java --with-db-server=sqlite 
--with-xml-declaration=/usr/share/xml/declaration/xml.dcl

README.Debian file:
.....................................................................................
refdb for Debian
----------------

RefDB is highly configurable during its build process.  Here are the 
possible configure options (as per the source tree's './configure 
--help' command):

------------------------------------------------------------------------
Defaults for the options are specified in brackets.

Configuration:
  -h, --help              display this help and exit
      --help=short        display options specific to this package
      --help=recursive    display the short help of all the included 
packages
  -V, --version           display version information and exit
  -q, --quiet, --silent   do not print `checking...' messages
      --cache-file=FILE   cache test results in FILE [disabled]
  -C, --config-cache      alias for `--cache-file=config.cache'
  -n, --no-create         do not create output files
      --srcdir=DIR        find the sources in DIR [configure dir or `..']

Installation directories:
  --prefix=PREFIX         install architecture-independent files in PREFIX
                          [/usr/local]
  --exec-prefix=EPREFIX   install architecture-dependent files in EPREFIX
                          [PREFIX]

By default, `make install' will install all the files in
`/usr/local/bin', `/usr/local/lib' etc.  You can specify
an installation prefix other than `/usr/local' using `--prefix',
for instance `--prefix=$HOME'.

For better control, use the options below.

Fine tuning of the installation directories:
  --bindir=DIR           user executables [EPREFIX/bin]
  --sbindir=DIR          system admin executables [EPREFIX/sbin]
  --libexecdir=DIR       program executables [EPREFIX/libexec]
  --datadir=DIR          read-only architecture-independent data 
[PREFIX/share]
  --sysconfdir=DIR       read-only single-machine data [PREFIX/etc]
  --sharedstatedir=DIR   modifiable architecture-independent data 
[PREFIX/com]
  --localstatedir=DIR    modifiable single-machine data [PREFIX/var]
  --libdir=DIR           object code libraries [EPREFIX/lib]
  --includedir=DIR       C header files [PREFIX/include]
  --oldincludedir=DIR    C header files for non-gcc [/usr/include]
  --infodir=DIR          info documentation [PREFIX/info]
  --mandir=DIR           man documentation [PREFIX/man]

Program names:
  --program-prefix=PREFIX            prepend PREFIX to installed program 
names
  --program-suffix=SUFFIX            append SUFFIX to installed program 
names
  --program-transform-name=PROGRAM   run sed PROGRAM on installed 
program names

System types:
  --build=BUILD     configure for building on BUILD [guessed]
  --host=HOST       cross-compile to build programs to run on HOST [BUILD]

Optional Features:
  --disable-FEATURE       do not include FEATURE (same as 
--enable-FEATURE=no)
  --enable-FEATURE[=ARG]  include FEATURE [ARG=yes]
  --disable-dependency-tracking Speeds up one-time builds
  --enable-dependency-tracking  Do not reject slow dependency extractors
  --disable-server          Exclude server.
  --disable-clients          Exclude clients.
  --disable-rpath         do not hardcode runtime library paths

Optional Packages:
  --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
  --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
  --with-libdbi-lib=DIR         Find libdbi lib in DIR
  --with-expat-lib=DIR          Find expat lib in DIR
  --with-btparse-lib=DIR        Find btparse lib in DIR
  --with-sgml-declaration=PATH  Use this file as SGML declaration
  --with-xml-declaration=PATH   Use this file as XML declaration
  --with-docbook-xsl=PATH       Path to the DocBook XSL stylesheet root
  --with-tei-xsl=PATH           Path to the TEI XSL stylesheet root
  --with-classpath-root=PATH    Path to a Java class repository for XSL 
processors
  --with-refdb-url=URL          Root URL for the web interface HTML files
  --with-var-dir=PATH           Path of a directory for PID files
  --with-log-dir=PATH           Path of a directory for log files
  --with-main-db=name           The name of the RefDB system database
  --with-db-server=DBS          Preconfigure for sqlite (default), 
pgsql, or mysql
  --with-trang-jar=PATH  specify the full path to trang
  --with-gnu-ld           assume the C compiler uses GNU ld default=no
  --with-libiconv-prefix[=DIR]  search for libiconv in DIR/include and 
DIR/lib
  --without-libiconv-prefix     don't search for libiconv in includedir 
and libdir
------------------------------------------------------------------------

This debian package of RefDB was compiled with the following options:
--prefix=/usr
--mandir=/usr/share/man
--infodir=/usr/share/info
--sysconfdir=/etc
--sharedstatedir=/var
--localstatedir=/var
--with-classpath-root=/usr/share/java
--with-db-server=sqlite
--with-xml-declaration=/usr/share/xml/declaration/xml.dcl

Please note the following:
1. The database server selected is SQLite.  This choice can be 
overridden by setting the 'dbserver' variable in your local 
(~/.refdbdrc) or global (/etc/refdb/refdbdrc) refdbd configuration file.
2. RefDB uses 'xmlcatalog' to locate xml files.  According to debian 
policy, "update-xmlcatalog is the de-facto standard tool to be used to 
maintain XML catalog files on a Debian system" and "update-xmlcatalog 
and xmlcatalog(1) are incompatible" (see 'update-xmlcatalog' man page).  
Closer examination of the policy, however, reveals that the main concern 
is adding to and deleting from catalogs using these tools.  On my 
interpretation, using 'xmlcatalog' to query catalogs does not violate 
debian policy.
3. The '--with-docbook-xsl' option is omitted on the assumption that 
RefDB can use catalogs to locate it.  This should be the case with 
standard installs of the 'docbook-xsl' package.

 -- David Nebauer <[email protected]>, Sat, 26 Feb 2005 18:26:08 +0930
.....................................................................................

Regards,
David.


-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.