Merge branch 'master' of ssh://git.indexdata.com/home/git/pub/pazpar2
authorNiels Erik G. Nielsen <nielserik@indexdata.com>
Wed, 7 Jul 2010 10:52:38 +0000 (03:52 -0700)
committerNiels Erik G. Nielsen <nielserik@indexdata.com>
Wed, 7 Jul 2010 10:52:38 +0000 (03:52 -0700)
Makefile.am
NEWS
debian/changelog
debian/rules
debian/server.xml [deleted file]
etc/server.xml [new file with mode: 0644]
etc/tmarc.xsl
pazpar2.spec.in
src/Makefile.am
src/pazpar2.rpm.init [new file with mode: 0755]

index f0b4d96..a485e2b 100644 (file)
@@ -4,7 +4,8 @@ ACLOCAL_AMFLAGS = -I m4
 
 SUBDIRS = src test js doc
 
-EXTRA_DIST = README NEWS LICENSE buildconf.sh Doxyfile.in m4/yaz.m4 \
+EXTRA_DIST = $(PACKAGE).spec README NEWS LICENSE \
+       buildconf.sh Doxyfile.in m4/yaz.m4 \
        win/makefile win/version.nsi win/version.nsi.in win/license.txt
 
 dist-hook:
diff --git a/NEWS b/NEWS
index 07b3738..83b8fb0 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,7 @@
+--- 1.4.3 2010/07/02
+
+New RPM packages: pazpar2, pazpar2-js, pazpar2-doc. These have been
+tested on CentOS 5.5 only.
 
 --- 1.4.2 2010/06/18
 
index d6f6719..dadd19d 100644 (file)
@@ -1,3 +1,9 @@
+pazpar2 (1.4.3-1indexdata) unstable; urgency=low
+
+  * Upstream.
+
+ -- Adam Dickmeiss <adam@indexdata.dk>  Thu, 01 Jul 2010 14:04:10 +0200
+
 pazpar2 (1.4.2-1indexdata) unstable; urgency=low
 
   * Upstream.
index 2a9b4ac..e5d60be 100755 (executable)
@@ -78,7 +78,7 @@ binary-arch: build install
        # pazpar2-doc package
        mv $(CURDIR)/debian/pazpar2/usr/share/doc/pazpar2/* $(CURDIR)/debian/pazpar2-doc/usr/share/doc/pazpar2-doc
        # pazpar2 package
-       cp $(CURDIR)/debian/server.xml $(CURDIR)/debian/pazpar2/etc/pazpar2/server.xml
+       cp $(CURDIR)/etc/server.xml $(CURDIR)/debian/pazpar2/etc/pazpar2/server.xml
        cp $(CURDIR)/etc/default.xml $(CURDIR)/debian/pazpar2/etc/pazpar2/services-available/
        cp $(CURDIR)/etc/services/*.xml $(CURDIR)/debian/pazpar2/etc/pazpar2/services-available
        cp $(CURDIR)/etc/settings/*.xml $(CURDIR)/debian/pazpar2/etc/pazpar2/settings/
diff --git a/debian/server.xml b/debian/server.xml
deleted file mode 100644 (file)
index eb6c1b0..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<pazpar2 xmlns="http://www.indexdata.com/pazpar2/1.0">
-
-  <threads number="0"/> <!-- non-zero to enable threaded operation -->
-  <server>
-    <listen port="8004"/>
-
-    <!-- character set mapping.. This can be overriden in services -->
-    <relevance>
-      <icu_chain id="relevance" locale="en">
-       <transform rule="[:Control:] Any-Remove"/>
-       <tokenize rule="l"/>
-       <transform rule="[[:WhiteSpace:][:Punctuation:]] Remove"/>
-       <casemap rule="l"/>
-      </icu_chain>
-    </relevance>
-    
-    <sort>
-      <icu_chain id="sort" locale="en">
-       <transform rule="[[:Control:][:WhiteSpace:][:Punctuation:]] Remove"/>
-       <casemap rule="l"/>
-      </icu_chain>
-    </sort>
-    
-    <mergekey>
-      <icu_chain id="mergekey" locale="en">
-       <tokenize rule="l"/>
-       <transform rule="[[:Control:][:WhiteSpace:][:Punctuation:]] Remove"/>
-       <casemap rule="l"/>
-      </icu_chain>
-    </mergekey>
-
-    <include src="services-enabled/*.xml"/>
-
-  </server>
-  
-</pazpar2>
-<!-- Keep this comment at the end of the file
-     Local variables:
-     mode: nxml
-     End:
--->
-
diff --git a/etc/server.xml b/etc/server.xml
new file mode 100644 (file)
index 0000000..eb6c1b0
--- /dev/null
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<pazpar2 xmlns="http://www.indexdata.com/pazpar2/1.0">
+
+  <threads number="0"/> <!-- non-zero to enable threaded operation -->
+  <server>
+    <listen port="8004"/>
+
+    <!-- character set mapping.. This can be overriden in services -->
+    <relevance>
+      <icu_chain id="relevance" locale="en">
+       <transform rule="[:Control:] Any-Remove"/>
+       <tokenize rule="l"/>
+       <transform rule="[[:WhiteSpace:][:Punctuation:]] Remove"/>
+       <casemap rule="l"/>
+      </icu_chain>
+    </relevance>
+    
+    <sort>
+      <icu_chain id="sort" locale="en">
+       <transform rule="[[:Control:][:WhiteSpace:][:Punctuation:]] Remove"/>
+       <casemap rule="l"/>
+      </icu_chain>
+    </sort>
+    
+    <mergekey>
+      <icu_chain id="mergekey" locale="en">
+       <tokenize rule="l"/>
+       <transform rule="[[:Control:][:WhiteSpace:][:Punctuation:]] Remove"/>
+       <casemap rule="l"/>
+      </icu_chain>
+    </mergekey>
+
+    <include src="services-enabled/*.xml"/>
+
+  </server>
+  
+</pazpar2>
+<!-- Keep this comment at the end of the file
+     Local variables:
+     mode: nxml
+     End:
+-->
+
index b46ebcf..4f86209 100644 (file)
 
       <xsl:for-each select="tmarc:d260">
         <pz:metadata type="date">
-          <xsl:value-of select="tmarc:sc" />
+          <xsl:value-of select="translate(tmarc:sc, 'cp[].', '')" />
         </pz:metadata>
       </xsl:for-each>
 
index 8683174..b064130 100644 (file)
@@ -2,7 +2,7 @@ Summary: Metasearcher
 Name: pazpar2
 Version: @VERSION@
 Release: 1
-License: BSD
+License: GPL
 Group: Applications/Internet
 Vendor: Index Data ApS <info@indexdata.dk>
 Source: pazpar2-%{version}.tar.gz
@@ -16,18 +16,45 @@ Pazpar2 is a high-performance, user interface-independent, data
 model-independent metasearching middleware featuring merging, relevance
 ranking, record sorting, and faceted results.
 
-%package -n pazpar2
 Summary: pazpar2 daemon
-Group: Applications/Internet
 Requires: libyaz4
 
+%package -n pazpar2-js
+Summary: pazpar2 JS
+Group: Data
+Requires: pazpar2
+
+%post
+/sbin/chkconfig --add pazpar2
+/sbin/service pazpar2 start > /dev/null 2>&1
+
+%preun
+if [ $1 = 0 ]; then
+       /sbin/service pazpar2 stop > /dev/null 2>&1
+       /sbin/chkconfig --del pazpar2
+fi
+
 %description -n pazpar2-js
 This package includes the Java Script library pz2.js. It also adds an
 Alias for Apache2 so that this library and other demo portals are
 available.
 
-%post -p /sbin/ldconfig 
-%postun -p /sbin/ldconfig 
+%post -n pazpar2-js
+if [ -d /etc/httpd/conf.d ]; then
+       ln -sf /etc/pazpar2/ap2pazpar2-js.cfg /etc/httpd/conf.d/pazpar2-js.conf
+       /sbin/service httpd condrestart
+fi
+%preun -n pazpar2-js
+if [ -L /etc/httpd/conf.d/pazpar2-js.conf ]; then
+       rm /etc/httpd/conf.d/pazpar2-js.conf
+       /sbin/service httpd condrestart
+fi
+%package -n pazpar2-doc
+Summary: pazpar2 documentation
+Group: Data
+
+%description -n pazpar2-doc
+This package includes documentation for Pazpar2 - the metasearcher.
 
 %prep
 %setup
@@ -43,8 +70,18 @@ make CFLAGS="$RPM_OPT_FLAGS"
 rm -fr ${RPM_BUILD_ROOT}
 make prefix=${RPM_BUILD_ROOT}/%{_prefix} mandir=${RPM_BUILD_ROOT}/%{_mandir} \
        libdir=${RPM_BUILD_ROOT}/%{_libdir} install
-rm ${RPM_BUILD_ROOT}/%{_libdir}/*.la
-
+mkdir -p ${RPM_BUILD_ROOT}/etc/pazpar2
+mkdir -p ${RPM_BUILD_ROOT}/etc/pazpar2/settings
+mkdir -p ${RPM_BUILD_ROOT}/etc/pazpar2/services-enabled
+mkdir -p ${RPM_BUILD_ROOT}/etc/pazpar2/services-available
+cp etc/server.xml ${RPM_BUILD_ROOT}/etc/pazpar2/
+cp etc/default.xml ${RPM_BUILD_ROOT}/etc/pazpar2/services-available/
+cp etc/services/*.xml ${RPM_BUILD_ROOT}/etc/pazpar2/services-available/
+cp etc/settings/*.xml ${RPM_BUILD_ROOT}/etc/pazpar2/settings/
+cp etc/*.xsl ${RPM_BUILD_ROOT}/etc/pazpar2/
+mkdir -p ${RPM_BUILD_ROOT}/etc/rc.d/init.d
+install -m755 src/pazpar2.rpm.init ${RPM_BUILD_ROOT}/etc/rc.d/init.d/pazpar2
+echo "Alias /pazpar2 /usr/share/pazpar2" >${RPM_BUILD_ROOT}/etc/pazpar2/ap2pazpar2-js.cfg
 %clean
 rm -fr ${RPM_BUILD_ROOT}
 
@@ -52,11 +89,24 @@ rm -fr ${RPM_BUILD_ROOT}
 %defattr(-,root,root)
 %doc README LICENSE NEWS
 %{_sbindir}/pazpar2
-%{_etcdir}/pazpar2
+%dir %{_sysconfdir}/pazpar2
+%dir %{_sysconfdir}/pazpar2/settings
+%dir %{_sysconfdir}/pazpar2/services-enabled
+%dir %{_sysconfdir}/pazpar2/services-available
+%config %{_sysconfdir}/pazpar2/*.xml
+%config %{_sysconfdir}/pazpar2/*.xsl
+%config %{_sysconfdir}/pazpar2/settings/*.xml
+%config %{_sysconfdir}/pazpar2/services-available/*.xml
+%config %{_sysconfdir}/rc.d/init.d/pazpar2
 %{_mandir}/man5/pazpar2*
 %{_mandir}/man7/pazpar2*
 %{_mandir}/man8/pazpar2*
 
 %files -n pazpar2-js
 %defattr(-,root,root)
-%{_datadir}/js/pz2.js
+%{_datadir}/pazpar2/js/pz2.js
+%config %{_sysconfdir}/pazpar2/ap2pazpar2-js.cfg
+
+%files -n pazpar2-doc
+%defattr(-,root,root)
+%{_defaultdocdir}/pazpar2
index 54292be..9004ce9 100644 (file)
@@ -2,6 +2,8 @@
 
 sbin_PROGRAMS = pazpar2
 
+EXTRA_DIST = pazpar2.rpm.init
+
 check_PROGRAMS = \
       test_sel_thread \
       test_normalize
diff --git a/src/pazpar2.rpm.init b/src/pazpar2.rpm.init
new file mode 100755 (executable)
index 0000000..da5d642
--- /dev/null
@@ -0,0 +1,82 @@
+#!/bin/bash
+#
+# pazpar2      Startup script for Pazpar2
+#
+# chkconfig: - 85 15
+# description: Pazpar2 Metasearcher
+# processname: pazpar2
+# config: /etc/pazpar2/server.xml
+# config: /etc/sysconfig/pazpar2
+# pidfile: /var/run/pazpar2.pid
+
+# Source function library.
+OPTIONS="-l /var/log/pazpar2.log -f /etc/pazpar2/server.xml"
+. /etc/rc.d/init.d/functions
+
+if [ -f /etc/sysconfig/pazpar2 ]; then
+        . /etc/sysconfig/pazpar2
+fi
+
+# Path to the apachectl script, server binary, and short-form for messages.
+DAEMON=${DAEMON-/usr/sbin/pazpar2}
+prog=pazpar2
+pidfile=${PIDFILE-/var/run/pazpar2.pid}
+lockfile=${LOCKFILE-/var/lock/subsys/pazpar2}
+RETVAL=0
+
+start() {
+        echo -n $"Starting $prog: "
+        daemon --pidfile=${pidfile} $DAEMON $OPTIONS -D -p ${pidfile}
+        RETVAL=$?
+        echo
+        [ $RETVAL = 0 ] && touch ${lockfile}
+        return $RETVAL
+}
+
+stop() {
+       echo -n $"Stopping $prog: "
+       killproc -p ${pidfile} -d 10 $DAEMON
+       RETVAL=$?
+       echo
+       [ $RETVAL = 0 ] && rm -f ${lockfile} ${pidfile}
+}
+reload() {
+    stop
+    start
+}
+
+# See how we were called.
+case "$1" in
+  start)
+       start
+       ;;
+  stop)
+       stop
+       ;;
+  status)
+        status -p ${pidfile} $DAEMON
+       RETVAL=$?
+       ;;
+  restart)
+       stop
+       start
+       ;;
+  condrestart)
+       if [ -f ${pidfile} ] ; then
+               stop
+               start
+       fi
+       ;;
+  reload)
+        reload
+       ;;
+  configtest)
+       $DAEMON $OPTIONS -t
+       RETVAL=$?
+       ;;
+  *)
+       echo $"Usage: $prog {start|stop|restart|help|configtest}"
+       exit 1
+esac
+
+exit $RETVAL