rpms/skf/F-12 skf.spec,NONE,1.1
Mamoru Tasaka
mtasaka at fedoraproject.org
Fri Mar 26 03:33:31 UTC 2010
Author: mtasaka
Update of /cvs/extras/rpms/skf/F-12
In directory cvs01.phx2.fedoraproject.org:/tmp/cvs-serv7178/F-12
Added Files:
skf.spec
Log Message:
cvs add spec file
--- NEW FILE skf.spec ---
%global rubyabi 1.8
%global ruby_sitearch %(ruby -rrbconfig -e "puts Config::CONFIG['sitearchdir']")
%{!?python_sitearch: %global python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib(1))")}
%global repoid 45838
%global mainver 1.97.0
%global betaver a
%global fedoraver 2
Name: skf
Version: %{mainver}
Release: %{?betaver:0.}%{fedoraver}%{?betaver:.%betaver}%{?dist}
Summary: Utility binary files in Simple Kanji Filter
Group: Applications/Text
License: BSD and MIT and UCD
URL: http://sourceforge.jp/projects/skf/
Source0: http://dl.sourceforge.jp/skf/%{repoid}/skf_%{mainver}%{?betaver}.tar.gz
# common BR
BuildRequires: gettext
# BR for extenstions
BuildRequires: swig
BuildRequires: ruby
BuildRequires: ruby-devel
BuildRequires: ruby(abi) = %{rubyabi}
BuildRequires: perl(ExtUtils::Embed)
BuildRequires: python2-devel
Requires: %{name}-common = %{version}-%{release}
%package common
Summary: Common files for Simple Kanji Filter - i18n kanji converter
Group: Applications/Text
%package ruby
Summary: Ruby extension module for %{name}
Group: Development/Languages
Requires: %{name}-common = %{version}-%{release}
Requires: ruby(abi) = %{rubyabi}
Provides: ruby(skf) = %{version}-%{release}
%package python
Summary: Python extension module for %{name}
Group: Development/Languages
Requires: %{name}-common = %{version}-%{release}
%package perl
Summary: Perl extension module for %{name}
Group: Development/Languages
Requires: %{name}-common = %{version}-%{release}
Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
%description
This package contains utility binary files in skf.
%description common
skf is an i18n-capable kanji filter. skf is designed for
reading documents in various languages and codes using kanji
or unicode capable display devices. Like other kanji filters,
skf provides basic Japanese kanji code conversion features,
include to/from JIS, EUC, Shift-JIS, UCS2, KEIS83 and UTF-7/8,
but also support various international codesets include Korian
and Chinese standard codesets.
Unlike nkf, skf does not provide additional fancy features
like broken jis recovery, but it has support for ISO-8859's,
European domestic sets, JIS X-0212/X-0213 code conversion,
IBM gaiji support and can add other code supports easily.
This package contains files commonly used by other skf related
packages.
%description ruby
This package contains Ruby extension module for skf.
%description python
This package contains Python extension module for skf.
%description perl
This package contains Perl extension module for skf.
%prep
%setup -q -c -T -a 0
ln -sf %{name}-* main
pushd main
## configure option, etc
# change optflags, don't strip
sed -i.flags -e 's|-Wno-format-security||' configure
## directory change
# change the directory where tables are to be installed
sed -i.table -e "s|^lskfdir=.*$|lskfdir='%{_libdir}/%{name}'|" configure
## documents
# EUC-JP related
sed -i.eucjp -e '/JOMANDIR/d' Makefile.in
iconv -f EUC-JP -t UTF-8 -o CHANGES_ja.txt{.utf-8,}
touch -r CHANGES_ja.txt{,.utf-8}
mv CHANGES_ja.txt{.utf-8,}
popd # from main
# Okay, duplicate main directory
for ext in \
ruby perl python
do
mkdir -p $ext
cp -pr main/* $ext
done
# change optflags
# add -fno-strict-aliasing
%global optflags_old %optflags
%global optflags %optflags_old -fno-strict-aliasing
%build
# Parallel make all unsafe
OPTS=""
OPTS="$OPTS --enable-debug"
OPTS="$OPTS --disable-strip"
OPTS="$OPTS --with-ruby_sitearch_dir=%{ruby_sitearch}"
OPTS="$OPTS --with-python_sitearch_dir=%{python_sitearch}"
# A. main
pushd main
%configure $OPTS
make -j1
popd
# B. extensions
for ext in \
ruby perl python
do
pushd $ext
%configure $OPTS
unset CFLAGS
make -j1 ${ext}ext
popd
done
# tweak find-debuginfo.sh
%global __debug_install_post_old %__debug_install_post
%global __debug_install_post \
\
%__debug_install_post_old \
pushd %{buildroot}%{_prefix}/src/debug/%{?buildsubdir} \
for ext in \\\
ruby python perl \
do \
cd $ext \
for file in * \
do \
if test -f ../main/$file \
then \
status=$(cmp --quiet $file ../main/$file && echo $? || echo $?) \
if test $status = 0 ; then \
ln -sf ../main/$file $file \
fi \
fi \
done \
cd .. \
done \
popd \
%{nil}
%install
rm -rf %{buildroot}
OPTS=""
OPTS="${OPTS} DESTDIR=%{buildroot}"
OPTS="${OPTS} INSTALL='install -p'"
OPTS="${OPTS} INSTALL_DATA='install -p -m 0644'"
OPTS="$OPTS JMANDIR=%{_mandir}/ja/man1"
# A. main
eval make -C main ${OPTS} install locale_install
# Kill documents, will install with %%doc
rm -rf %{buildroot}%{_defaultdocdir}
# B. extentions
for ext in ruby python
do
eval make -C $ext ${OPTS} ${ext}ext_install
done
## perl
pushd perl
mkdir -p %{buildroot}%{perl_vendorarch}/auto/Skf
install -cpm 0644 Skf.pm %{buildroot}%{perl_vendorarch}
install -cpm 0755 skf.so %{buildroot}%{perl_vendorarch}/auto/Skf/Skf.so
popd
## Cleanup
chmod 0644 %{buildroot}%{python_sitearch}/skf.py
%find_lang %{name}
%clean
rm -rf %{buildroot}
%files
%defattr(-,root,root,-)
%{_bindir}/skf
%{_mandir}/man1/skf.1*
%lang(ja) %{_mandir}/ja/man1/skf.1*
%files common -f %{name}.lang
%defattr(-,root,root,-)
%lang(ja) %doc main/CHANGES_ja.txt
%doc main/README.txt
%doc main/copyright
%lang(ja) %doc main/doc/
%{_libdir}/%{name}/
%files ruby
%defattr(-,root,root,-)
%{ruby_sitearch}/skf.so
%files python
%defattr(-,root,root,-)
%{python_sitearch}/_skf.so
%{python_sitearch}/skf.py*
%files perl
%defattr(-,root,root,-)
%{perl_vendorarch}/Skf.pm
%{perl_vendorarch}/auto/Skf/
%changelog
* Thu Mar 25 2010 Mamoru Tasaka <mtasaka at ioa.s.u-tokyo.ac.jp> - 1.97.0-0.2.a
- Remove useless sed line
- Move man pages to "main" package
* Sat Mar 20 2010 Mamoru Tasaka <mtasaka at ioa.s.u-tokyo.ac.jp> - 1.97.0-0.1.a
- 1.97.0a
- Initial packaging
More information about the scm-commits
mailing list