rpms/sphinx/EL-5 import.log, NONE, 1.1 sphinx.init, NONE, 1.1 sphinx.spec, NONE, 1.1 .cvsignore, 1.1, 1.2 sources, 1.1, 1.2

Allisson Azevedo allisson at fedoraproject.org
Fri Aug 14 17:16:52 UTC 2009


Author: allisson

Update of /cvs/pkgs/rpms/sphinx/EL-5
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv28483/EL-5

Modified Files:
	.cvsignore sources 
Added Files:
	import.log sphinx.init sphinx.spec 
Log Message:

First import.



--- NEW FILE import.log ---
sphinx-0_9_8_1-3_fc11:EL-5:sphinx-0.9.8.1-3.fc11.src.rpm:1250269749


--- NEW FILE sphinx.init ---
#!/bin/sh
#
# sphinx searchd Free open-source SQL full-text search engine
#
# chkconfig:   - 20 80
# description: Starts and stops the sphinx searchd daemon that handles \
#	       all search requests.

### BEGIN INIT INFO
# Provides: searchd
# Required-Start: $local_fs $network
# Required-Stop: $local_fs $network
# Should-Start: $remote_fs
# Should-Stop: $remote_fs
# Default-Start: 
# Default-Stop: 0 1 2 3 4 5 6
# Short-Description: start and stop sphinx searchd daemon
# Description: Sphinx is a free open-source SQL full-text search engine     
### END INIT INFO

# Source function library.
. /etc/rc.d/init.d/functions

exec="/usr/bin/searchd"
prog="searchd"
config="/etc/sphinx/sphinx.conf"

lockfile=/var/lock/subsys/searchd

start() {
    [ -x $exec ] || exit 5
    [ -f $config ] || exit 6
    echo -n $"Starting $prog: "
    # if not running, start it up here, usually something like "daemon $exec"
    daemon $exec --config $config
    retval=$?
    echo
    [ $retval -eq 0 ] && touch $lockfile
    return $retval
}

stop() {
    echo -n $"Stopping $prog: "
    # stop it here, often "killproc $prog"
    killproc $prog
    retval=$?
    echo
    [ $retval -eq 0 ] && rm -f $lockfile
    return $retval
}

restart() {
    stop
    start
}

reload() {
    restart
}

force_reload() {
    restart
}

rh_status() {
    # run checks to determine if the service is running or use generic status
    status $prog
}

rh_status_q() {
    rh_status >/dev/null 2>&1
}


case "$1" in
    start)
        rh_status_q && exit 0
        $1
        ;;
    stop)
        rh_status_q || exit 0
        $1
        ;;
    restart)
        $1
        ;;
    reload)
        rh_status_q || exit 7
        $1
        ;;
    force-reload)
        force_reload
        ;;
    status)
        rh_status
        ;;
    condrestart|try-restart)
        rh_status_q || exit 0
        restart
        ;;
    *)
        echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload}"
        exit 2
esac
exit $?


--- NEW FILE sphinx.spec ---
Name:           sphinx
Version:        0.9.8.1
Release:        3%{?dist}
Summary:        Free open-source SQL full-text search engine

Group:          Applications/Text
License:        GPLv2+
URL:            http://sphinxsearch.com
Source0:        http://sphinxsearch.com/downloads/%{name}-%{version}.tar.gz
Source1:        %{name}.init
BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)

BuildRequires:  mysql-devel
BuildRequires:  postgresql-devel
BuildRequires:  expat-devel
#Requires:

Requires(post): chkconfig
Requires(preun): chkconfig
# This is for /sbin/service
Requires(preun): initscripts
       

%description
Sphinx is a full-text search engine, distributed under GPL version 2.
Commercial licensing (eg. for embedded use) is also available upon request.

Generally, it's a standalone search engine, meant to provide fast,
size-efficient and relevant full-text search functions to other
applications. Sphinx was specially designed to integrate well with SQL
databases and scripting languages.

Currently built-in data source drivers support fetching data either via
direct connection to MySQL, or PostgreSQL, or from a pipe in a custom XML
format. Adding new drivers (eg. to natively support some other DBMSes) is
designed to be as easy as possible.

Search API is natively ported to PHP, Python, Perl, Ruby, Java, and also
available as a pluggable MySQL storage engine. API is very lightweight so
porting it to new language is known to take a few hours.

As for the name, Sphinx is an acronym which is officially decoded as SQL
Phrase Index. Yes, I know about CMU's Sphinx project.


%package -n libsphinxclient
Summary:        Pure C searchd client API library
Group:          Development/Libraries


%description -n libsphinxclient
Pure C searchd client API library
Sphinx search engine, http://sphinxsearch.com/


%package -n libsphinxclient-devel
Summary:        Development libraries and header files for libsphinxclient
Group:          Development/Libraries
Requires:       libsphinxclient = %{version}-%{release}


%description -n libsphinxclient-devel
Pure C searchd client API library
Sphinx search engine, http://sphinxsearch.com/


%prep
%setup -q

# Fix wrong-file-end-of-line-encoding
sed -i 's/\r//' api/ruby/spec/sphinx/sphinx_test.sql
sed -i 's/\r//' api/java/mk.cmd
sed -i 's/\r//' api/ruby/spec/fixtures/keywords.php
sed -i 's/\r//' api/ruby/lib/sphinx/response.rb


%build
%configure --sysconfdir=/etc/sphinx --with-mysql --with-pgsql
make %{?_smp_mflags}

# Build libsphinxclient
cd api/libsphinxclient/
%configure
make #%{?_smp_mflags}


%install
rm -rf $RPM_BUILD_ROOT
make install DESTDIR=$RPM_BUILD_ROOT INSTALL="%{__install} -p -c"

# Install sphinx initscript
install -p -D -m 0755 %{SOURCE1} $RPM_BUILD_ROOT%{_initrddir}/searchd

# Create /var/log/sphinx
mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/log/sphinx

# Create /var/run/sphinx
mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/run/sphinx

# Create /var/lib/sphinx
mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/lib/sphinx

# Create sphinx.conf
cp $RPM_BUILD_ROOT%{_sysconfdir}/sphinx/sphinx-min.conf.dist \
    $RPM_BUILD_ROOT%{_sysconfdir}/sphinx/sphinx.conf
    
# Modify sphinx.conf
sed -i 's/\/var\/log\/searchd.log/\/var\/log\/sphinx\/searchd.log/g' \
$RPM_BUILD_ROOT%{_sysconfdir}/sphinx/sphinx.conf

sed -i 's/\/var\/log\/query.log/\/var\/log\/sphinx\/query.log/g' \
$RPM_BUILD_ROOT%{_sysconfdir}/sphinx/sphinx.conf

sed -i 's/\/var\/log\/searchd.pid/\/var\/run\/sphinx\/searchd.pid/g' \
$RPM_BUILD_ROOT%{_sysconfdir}/sphinx/sphinx.conf

sed -i 's/\/var\/data\/test1/\/var\/lib\/sphinx\/test1/g' \
$RPM_BUILD_ROOT%{_sysconfdir}/sphinx/sphinx.conf

# Create /etc/logrotate.d/sphinx
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d
cat > $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/sphinx << EOF
/var/log/sphinx/*.log {
       weekly
       rotate 10
       copytruncate
       delaycompress
       compress
       notifempty
       missingok
}
EOF

# Install libsphinxclient
cd api/libsphinxclient/
make install DESTDIR=$RPM_BUILD_ROOT INSTALL="%{__install} -p -c"

# clean-up .la archives
find $RPM_BUILD_ROOT -name '*.la' -exec rm -f {} ';'

# clean-up .a archives
find $RPM_BUILD_ROOT -name '*.a' -exec rm -f {} ';'


%clean
rm -rf $RPM_BUILD_ROOT

%post
/sbin/chkconfig --add searchd

%preun
if [ $1 = 0 ] ; then
    /sbin/service searchd stop >/dev/null 2>&1
    /sbin/chkconfig --del searchd
fi


%post -p /sbin/ldconfig -n libsphinxclient


%postun -p /sbin/ldconfig -n libsphinxclient
 


%files
%defattr(-,root,root,-)
%doc COPYING doc/sphinx.txt sphinx-min.conf.dist sphinx.conf.dist example.sql
%dir %{_sysconfdir}/sphinx
%config(noreplace) %{_sysconfdir}/sphinx/sphinx.conf
%exclude %{_sysconfdir}/sphinx/*.conf.dist
%exclude %{_sysconfdir}/sphinx/example.sql
%{_initrddir}/searchd
%config(noreplace) %{_sysconfdir}/logrotate.d/sphinx
%{_bindir}/*
%dir %{_localstatedir}/log/sphinx
%dir %{_localstatedir}/run/sphinx
%dir %{_localstatedir}/lib/sphinx

%files -n libsphinxclient
%defattr(-,root,root,-)
%doc api/java api/ruby api/*.php api/*.py api/libsphinxclient/README
%{_libdir}/libsphinxclient-0*.so


%files -n libsphinxclient-devel
%defattr(-,root,root,-)
%{_libdir}/libsphinxclient.so
%{_includedir}/*

%changelog
* Wed Aug 12 2009 Allisson Azevedo <allisson at gmail.com> 0.9.8.1-3
- Fixed macros consistency.
- Modified make install to keep timestamps.
- Added libsphinxclient package.

* Fri Aug  7 2009 Allisson Azevedo <allisson at gmail.com> 0.9.8.1-2
- Added sysv init.
- Added logrotate.d entry.

* Thu Jul 30 2009 Allisson Azevedo <allisson at gmail.com> 0.9.8.1-1
- Initial rpm release.


Index: .cvsignore
===================================================================
RCS file: /cvs/pkgs/rpms/sphinx/EL-5/.cvsignore,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -p -r1.1 -r1.2
--- .cvsignore	14 Aug 2009 16:19:13 -0000	1.1
+++ .cvsignore	14 Aug 2009 17:16:52 -0000	1.2
@@ -0,0 +1 @@
+sphinx-0.9.8.1.tar.gz


Index: sources
===================================================================
RCS file: /cvs/pkgs/rpms/sphinx/EL-5/sources,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -p -r1.1 -r1.2
--- sources	14 Aug 2009 16:19:13 -0000	1.1
+++ sources	14 Aug 2009 17:16:52 -0000	1.2
@@ -0,0 +1 @@
+428a14df41fb425e664d9e2d6178c037  sphinx-0.9.8.1.tar.gz




More information about the fedora-extras-commits mailing list