From 5e57efb702e12fdedd3e5921c6feb12d4c81fd5df79c6390df5ea6dcf02f1c33 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Mon, 21 Mar 2011 10:15:28 +0000 Subject: [PATCH] Accepting request 64325 from home:prusnak OBS-URL: https://build.opensuse.org/request/show/64325 OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/kyotocabinet?expand=0&rev=1 --- .gitattributes | 23 +++++++ kyotocabinet-1.2.50.tar.gz | 3 + kyotocabinet-fix_rpath.patch | 48 +++++++++++++ kyotocabinet.changes | 10 +++ kyotocabinet.spec | 129 +++++++++++++++++++++++++++++++++++ 5 files changed, 213 insertions(+) create mode 100644 .gitattributes create mode 100644 kyotocabinet-1.2.50.tar.gz create mode 100644 kyotocabinet-fix_rpath.patch create mode 100644 kyotocabinet.changes create mode 100644 kyotocabinet.spec diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/kyotocabinet-1.2.50.tar.gz b/kyotocabinet-1.2.50.tar.gz new file mode 100644 index 0000000..ffa34d4 --- /dev/null +++ b/kyotocabinet-1.2.50.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:93b41f383251820d645e683e9d753b3cf0b890d1a91bb9c30ad760ab7c377848 +size 833545 diff --git a/kyotocabinet-fix_rpath.patch b/kyotocabinet-fix_rpath.patch new file mode 100644 index 0000000..c8f7b03 --- /dev/null +++ b/kyotocabinet-fix_rpath.patch @@ -0,0 +1,48 @@ +Index: kyotocabinet-1.2.50/Makefile.in +=================================================================== +--- kyotocabinet-1.2.50.orig/Makefile.in ++++ kyotocabinet-1.2.50/Makefile.in +@@ -56,7 +56,7 @@ LDFLAGS = @MYLDFLAGS@ + CMDLDFLAGS = @MYCMDLDFLAGS@ + CMDLIBS = @MYCMDLIBS@ + LIBS = @LIBS@ +-RUNENV = @MYLDLIBPATHENV@=@MYLDLIBPATH@ ++RUNENV = @MYLDLIBPATHENV@=.:$(LIBDIR) + POSTCMD = @MYPOSTCMD@ + + +Index: kyotocabinet-1.2.50/configure.in +=================================================================== +--- kyotocabinet-1.2.50.orig/configure.in ++++ kyotocabinet-1.2.50/configure.in +@@ -35,27 +35,18 @@ MYDOCUMENTFILES="COPYING FOSSEXCEPTION C + MYPCFILES="kyotocabinet.pc" + + # Building flags +-MYCFLAGS="-Wall -ansi -pedantic -fPIC -fsigned-char -g0 -O2" ++MYCFLAGS="-Wall -ansi -pedantic -fPIC -fsigned-char -g0" + MYCXXFLAGS="-Wall -fPIC -fsigned-char -g0 -O2" +-MYCPPFLAGS="-I. -I\$(INCLUDEDIR) -I/usr/local/include" ++MYCPPFLAGS="-I. -I\$(INCLUDEDIR)" + MYCPPFLAGS="$MYCPPFLAGS -DNDEBUG -D_GNU_SOURCE=1" + MYCPPFLAGS="$MYCPPFLAGS -D_FILE_OFFSET_BITS=64 -D_REENTRANT -D__EXTENSIONS__" +-MYLDFLAGS="-L. -L\$(LIBDIR) -L/usr/local/lib" ++MYLDFLAGS="-L. -L\$(LIBDIR)" + MYCMDLDFLAGS="" + MYCMDLIBS="" + MYLDLIBPATH="" + MYLDLIBPATHENV="LD_LIBRARY_PATH" + MYPOSTCMD="true" + +-# Building paths +-PATH=".:/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/bin:/sbin:$PATH" +-CPATH=".:/usr/local/include:$CPATH" +-LIBRARY_PATH=".:/usr/local/lib:$LIBRARY_PATH" +-LD_LIBRARY_PATH=".:/usr/local/lib:$LD_LIBRARY_PATH" +-PKG_CONFIG_PATH=".:/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH" +-export PATH CPATH LIBRARY_PATH LD_LIBRARY_PATH PKG_CONFIG_PATH +- +- + + #================================================================ + # Options diff --git a/kyotocabinet.changes b/kyotocabinet.changes new file mode 100644 index 0000000..001dc93 --- /dev/null +++ b/kyotocabinet.changes @@ -0,0 +1,10 @@ +------------------------------------------------------------------- +Tue Mar 15 15:04:42 UTC 2011 - prusnak@opensuse.org + +- updated to 1.2.50 + +------------------------------------------------------------------- +Thu Mar 3 20:07:53 UTC 2011 - prusnak@opensuse.org + +- created package (version 1.2.47) + diff --git a/kyotocabinet.spec b/kyotocabinet.spec new file mode 100644 index 0000000..bcede2d --- /dev/null +++ b/kyotocabinet.spec @@ -0,0 +1,129 @@ +# +# Please submit bugfixes or comments via http://bugs.opensuse.org/ +# + +Name: kyotocabinet +Version: 1.2.50 +%define soname 9 +Release: 0 +License: GPLv3 +Summary: Modern Implementation of DBM - CLI Utilities +Url: http://fallabs.com/kyotocabinet/ +Group: Productivity/Databases/Tools +Source: http://fallabs.com/kyotocabinet/pkg/kyotocabinet-%{version}.tar.gz +Patch1: %{name}-fix_rpath.patch +BuildRequires: gcc-c++ +BuildRequires: libbz2-devel +BuildRequires: pkgconfig +BuildRequires: zlib-devel +Requires: libkyotocabinet%{soname} = %{version} +BuildRoot: %{_tmppath}/%{name}-%{version}-build + +%description +Kyoto Cabinet is a library of routines for managing a database. The database +is a simple data file containing records, each is a pair of a key and a +value. Every key and value is serial bytes with variable length. Both binary +data and character string can be used as a key and a value. Each key +must be unique within a database. There is neither concept of data tables +nor data types. Records are organized in hash table or B+ tree. + +Kyoto Cabinet runs very fast. For example, elapsed time to store one +million records is 0.9 seconds for hash database, and 1.1 seconds for B+ tree +database. Moreover, the size of database is very small. For example, overhead +for a record is 16 bytes for hash database, and 4 bytes for B+ tree database. +Furthermore, scalability of Kyoto Cabinet is great. The database size can be +up to 8EB (9.22e18 bytes). + +Kyoto Cabinet is written in the C++ language, and provided as API of C++, C, +Java, Python, Ruby, Perl, and Lua. Kyoto Cabinet is available on platforms +which have API conforming to C++03 with the TR1 library extensions. +Kyoto Cabinet is a free software licensed under the GNU General Public License. +On the other hand, a commercial license is also provided. If you use +Kyoto Cabinet within a proprietary software, the commercial license is required. + +This package contains the command-line utilities to manage KyotoCabinet +database files. + +%package -n libkyotocabinet-devel +Summary: Development Environment for the kyotocabinet Library +Group: Development/Languages/C and C++ +Requires: libkyotocabinet%{soname} = %{version} +Provides: libkyotocabinet%{soname}-devel = %{version} + +%description -n libkyotocabinet-devel +This package contains the development environment (headers, shared +library symlink, pkg-config file, ...) for libkyotocabinet%{soname} + +%package -n libkyotocabinet%{soname} +Summary: Modern Implementation of DBM - Shared Library +Group: System/Libraries +Provides: libkyotocabinet = %{version} + +%description -n libkyotocabinet%{soname} +Kyoto Cabinet is a library of routines for managing a database. The database +is a simple data file containing records, each is a pair of a key and a +value. Every key and value is serial bytes with variable length. Both binary +data and character string can be used as a key and a value. Each key +must be unique within a database. There is neither concept of data tables +nor data types. Records are organized in hash table or B+ tree. + +Kyoto Cabinet runs very fast. For example, elapsed time to store one +million records is 0.9 seconds for hash database, and 1.1 seconds for B+ tree +database. Moreover, the size of database is very small. For example, overhead +for a record is 16 bytes for hash database, and 4 bytes for B+ tree database. +Furthermore, scalability of Kyoto Cabinet is great. The database size can be +up to 8EB (9.22e18 bytes). + +Kyoto Cabinet is written in the C++ language, and provided as API of C++, C, +Java, Python, Ruby, Perl, and Lua. Kyoto Cabinet is available on platforms +which have API conforming to C++03 with the TR1 library extensions. +Kyoto Cabinet is a free software licensed under the GNU General Public License. +On the other hand, a commercial license is also provided. If you use +Kyoto Cabinet within a proprietary software, the commercial license is required. + +%prep +%setup -q +%patch1 -p 1 +sed -ie "/ldconfig/d" Makefile.in +sed -ie "/DOCDIR/d" Makefile.in + +%build +autoreconf -iv +%configure +make %{?_smp_mflags} + +%install +%make_install +rm -rf %{buildroot}%{_datadir}/kyotocabinet +rm -rf %{buildroot}%{_libdir}/libkyotocabinet.a + +%check +# make check + +%clean +rm -rf %{buildroot} + +%post -n libkyotocabinet%{soname} -p /sbin/ldconfig + +%postun -n libkyotocabinet%{soname} -p /sbin/ldconfig + +%files +%defattr(-,root,root) +%doc ChangeLog COPYING +%doc doc/* +%doc *.idl +%{_bindir}/* +%doc %{_mandir}/man1/* + +%files -n libkyotocabinet-devel +%defattr(-,root,root) +%{_includedir}/*.h +%{_libdir}/libkyotocabinet.so +%{_libdir}/pkgconfig/kyotocabinet.pc + +%files -n libkyotocabinet%{soname} +%defattr(-,root,root) +%doc ChangeLog COPYING +%{_libdir}/libkyotocabinet.so.%{soname}* + +%changelog