Sophie

Sophie

distrib > Fedora > 15 > i386 > by-pkgid > ff2415ebcd087a5d7c8fed600d86c1f7 > files > 2

hyperestraier-1.4.13-7.fc15.src.rpm

%define		rubyver		1.8
%{!?ruby_sitelib:	%define ruby_sitelib	%(ruby -rrbconfig -e 'puts Config::CONFIG["sitelibdir"]')}
%define		qdbm_ver	1.8.75

# Workaround for ruby side bug (bug 226381 c11)
%{!?ruby_arch:	%define ruby_arch	%(ruby -rrbconfig -e "puts Config::CONFIG['archdir']")}

Name:		hyperestraier
Version:	1.4.13
Release:	7%{?dist}
Summary:	A full-text search system

Group:		System Environment/Libraries
License:	LGPLv2+
URL:		http://hyperestraier.sourceforge.net/
Source0:	http://hyperestraier.sourceforge.net/%{name}-%{version}.tar.gz
BuildRoot:	%{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)

BuildRequires:	bzip2-devel zlib-devel
%if 0%{?fedora} >= 6
BuildRequires:	lzo-devel >= 2.02
%endif
BuildRequires:	gcc-java libgcj-devel
BuildRequires:	qdbm-devel >= %{qdbm_ver}
BuildRequires:	ruby-rdoc
BuildRequires:	ruby-devel
BuildRequires:	ruby(abi) = %{rubyver}
BuildRequires:	perl(ExtUtils::MakeMaker)

%description
Hyper Estraier is a full-text search system. You can search 
lots of documents for some documents including specified words. 
If you run a web site, it is useful as your own search engine 
for pages in your site. Also, it is useful as search utilities 
of mail boxes and file servers.

%package devel
Summary:	Libraries and Header files for Hyper Estraier
Group:		Development/Libraries
Requires:	%{name} = %{version}-%{release}
Requires:	qdbm-devel >= %{qdbm_ver}
Requires:	pkgconfig

%description devel
This is the development package that provides header files and libraries
for Hyper Estraier.

%package java
Summary:	Hyper Estraier library for Java
Group:		System Environment/Libraries
Requires:	%{name} = %{version}-%{release}

%description java
This package contains a Java interface for Hyper Estraier

%package perl
Summary:	Hyper Estraier library for Perl
Group:		System Environment/Libraries
Requires:	%{name} = %{version}-%{release}
Requires:	perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))

%description perl
This package contains a Perl interface for Hyper Estraier

%package -n ruby-hyperestraier
Summary:	Hyper Estraier Library for Ruby
Group:		System Environment/Libraries
Requires:	%{name} = %{version}-%{release}
Requires:	ruby(abi) = %{rubyver}
Provides:	ruby(hyperestraier) = %{version}-%{release}

%description -n ruby-hyperestraier
This package contains a Ruby interface for Hyper Estraier.


%prep
%setup -q

%build
## 0. First:
## - remove rpath
## - fix pkgconfig file to hide header files
## - fix Makefile to keep timestamps
%{__sed} -i.rpath -e '/^LDENV/d' `find . -name Makefile.in`
%{__sed} -i.misc \
	 -e '/^Libs/s|@[A-Z][A-Z]*@||g' \
	 -e '/Cflags/s|^\(.*\)|\1 -I\${includedir}/%{name}|' \
	 %{name}.pc.in

%{__sed} -i.path \
	-e '/^cflags/s|^\(.*\)\"$|\1 -I%{_datadir}/qdbm -I%{_datadir}/%{name}\"|' \
	estconfig.in

%{__sed} -i.stamp \
	 -e 's|cp \(-R*f \)|cp -p \1| ' \
	 -e 's|^CP =.*$|CP = cp -p|' \
	`find . -name Makefile.in -or -name \*[mM]akefile`

## 1. For main
%{__sed} -i.flags \
	-e '/^CFLAGS/s|^\(.*\)$|\1 %{optflags}|' Makefile.in
%configure \
	--enable-devel \
	--enable-zlib \
	--enable-bzip \
%if 0%{?fedora} >= 6
	--enable-lzo
%endif

%{__make} %{?_smp_mflags}

## 2. For java
pushd javanative/
%{__sed} -i.flags -e '/^MYCFLAGS/s|-O2.*|%{optflags}\"|' configure
%configure
# Failed with -j8 on Matt's mass build
%{__make} -j1 JAR=%{_bindir}/fastjar JAVAC="%{_bindir}/gcj -C"
popd

## 3. For perl:
pushd perlnative
%configure
%{__make} %{?_smp_mflags} \
	CC="gcc %optflags $(pkg-config --cflags qdbm)" \
	OPTIMIZE="" \
	LDDLFLAGS="-shared"
popd

##4. For ruby
pushd rubynative

# Workaround for ruby side bug (bug 226381 c11)
%{__cp} -p %{ruby_arch}/rbconfig.rb .
%{__sed} -i.static -e 's|-static||g' rbconfig.rb
export RUBYLIB=$(pwd)

%{__sed} -i.path -e 's|-O3.*|\`pkg-config --cflags qdbm\`\"|' src/extconf.rb
%configure
%{__make} %{?_smp_mflags}
popd

%install
%{__rm} -rf $RPM_BUILD_ROOT

## 1. For main
%{__make} install DESTDIR=$RPM_BUILD_ROOT

# clean up
%{__rm} -f $RPM_BUILD_ROOT%{_libdir}/lib*.a
%{__rm} -rf $RPM_BUILD_ROOT%{_datadir}/%{name}/doc/
%{__rm} -f $RPM_BUILD_ROOT%{_datadir}/%{name}/[A-Z]*

# hide header files to name specific directory
pushd $RPM_BUILD_ROOT%{_includedir}
mkdir %{name}
for f in *.h ; do
	for g in *.h ; do
		eval sed -i -e \'s\|include \<$g\>\|include \"$g\"\|\' $f
	done
done
%{__mv} *.h %{name}/
popd

## 2. For java
pushd javanative/
%{__make} DESTDIR=$RPM_BUILD_ROOT install
popd
%{__mkdir_p} $RPM_BUILD_ROOT%{_javadir}
%{__mv} -f $RPM_BUILD_ROOT%{_libdir}/*.jar \
	$RPM_BUILD_ROOT%{_javadir}

## 3. For perl
pushd perlnative
%{__make} install DESTDIR=$RPM_BUILD_ROOT INSTALLDIRS=vendor
popd
# clean up
%{__rm} $RPM_BUILD_ROOT%{perl_archlib}/perllocal.pod
find $RPM_BUILD_ROOT%{perl_vendorarch} \
	-name \*.bs -or -name .packlist | \
	xargs rm -f
find $RPM_BUILD_ROOT%{perl_vendorarch} \
	-name \*.so | \
	xargs chmod 0755

## 4. For ruby
pushd rubynative/
%{__make} DESTDIR=$RPM_BUILD_ROOT install
popd

%clean
%{__rm} -rf $RPM_BUILD_ROOT

%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig

%post java -p /sbin/ldconfig
%postun java -p /sbin/ldconfig

%files
%defattr(-,root,root,-)
%doc COPYING ChangeLog THANKS
%doc example/
%doc doc/*guide-en.html doc/*.png doc/*.css
%lang(ja) %doc doc/*guide-ja.html

%{_libdir}/libestraier.so.*
%{_bindir}/est*
%exclude %{_bindir}/estconfig
%exclude %{_bindir}/*.pl
%exclude %{_bindir}/*.rb
%{_libexecdir}/*.cgi
%{_datadir}/%{name}/

%{_mandir}/man1/*.1*

%files devel
%defattr(-,root,root,-)

%{_bindir}/estconfig
%{_includedir}/%{name}/
%{_libdir}/libestraier.so
%{_libdir}/pkgconfig/*.pc

%{_mandir}/man3/est*.3*

%files java
%defattr(-,root,root,-)
%doc doc/javanativeapi/*
%doc javanative/overview.html
%doc javanative/example/

%{_javadir}/*.jar
%{_libdir}/libj*.so*

%files perl
%defattr(-,root,root,-)
%doc doc/perlnativeapi/index.html
%doc perlnative/example/

%{_bindir}/*.pl
%{perl_vendorarch}/*.p*
%{perl_vendorarch}/auto/*/
%{_mandir}/man3/*.3pm*

%files -n ruby-hyperestraier
%defattr(-,root,root,-)
%doc doc/rubynativeapi/*
%doc rubynative/example/

%{_bindir}/*.rb
%{ruby_sitelib}/*.so


%changelog
* Tue Jun 01 2010 Marcela Maslanova <mmaslano@redhat.com> - 1.4.13-7
- Mass rebuild with perl-5.12.0

* Wed Dec 23 2009 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 1.4.13-6
- F-13: rebuild for new perl

* Sat Jul 25 2009 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 1.4.13-5
- F-12: Mass rebuild

* Tue Feb 24 2009 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 1.4.13-4
- F-11: Mass rebuild

* Fri Aug 29 2008 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 1.4.13-3
- Use -j1 under javanative (-j8 failed)

* Sat Mar 15 2008 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 1.4.13-2
- Rebuild against new perl (F-9)

* Sat Feb  9 2008 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp>
- Rebuild against gcc43 (F-9)

* Sun Dec 30 2007 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 1.4.13-1
- 1.4.13

* Thu Nov 29 2007 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 1.4.12-1
- 1.4.12

* Sat Nov 17 2007 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 1.4.11-1
- 1.4.11

* Wed Aug 22 2007 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 1.4.10-2.dist.2
- Mass rebuild (buildID or binutils issue)

* Fri Aug  3 2007 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 1.4.10-2.dist.1
- License update

* Thu Jun 16 2007 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 1.4.10-2
- Fix java directory

* Thu Mar 22 2007 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 1.4.10-1
- 1.4.10
- Ruby subpackage description change according to Guildlines

* Thu Mar  8 2007 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 1.4.9-3
- Add perl-devel for BR

* Fri Feb 23 2007 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 1.4.9-2.dist.1
- Drop lzo support on FC-5

* Fri Feb 23 2007 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 1.4.9-2
- Remove duplicate files and fix the dependency for main package.

* Thu Feb 22 2007 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 1.4.9-1
- Initial packaging for Fedora.