build erlang sources with +debug_info OBS-URL: https://build.opensuse.org/request/show/186946 OBS-URL: https://build.opensuse.org/package/show/devel:languages:erlang/erlang-toke?expand=0&rev=2
125 lines
3.8 KiB
RPMSpec
125 lines
3.8 KiB
RPMSpec
# norootforbuild
|
|
|
|
%define pkg_version 0
|
|
%define hg_version 20100714
|
|
|
|
Name: erlang-toke
|
|
Version: %{pkg_version}.hg%{hg_version}
|
|
Release: 1
|
|
Summary: Erlang linked-in driver for Tokyo Cabinet
|
|
License: MPL-1.1
|
|
Group: Development/Libraries/Other
|
|
URL: http://hg.opensource.lshift.net/toke/
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
|
Source0: toke-%{version}.tar.bz2
|
|
Patch0: ld.patch
|
|
Patch1: missing_sys_types.diff
|
|
Patch2: add_debug_info.diff
|
|
Requires: erlang >= R13B01
|
|
BuildRequires: erlang >= R13B01
|
|
BuildRequires: gcc-c++ zlib-devel
|
|
|
|
###########################################################################################
|
|
# SuSE, openSUSE
|
|
###########################################################################################
|
|
%if 0%{?suse_version}
|
|
%define erl_dir %{_libdir}/erlang
|
|
%define erl_libdir %{erl_dir}/lib
|
|
%define erl_includedir %{erl_dir}/usr/include
|
|
|
|
Requires: libtokyocabinet >= 1.3.1
|
|
BuildRequires: libtokyocabinet-devel >= 1.3.1
|
|
BuildRequires: erlang-src
|
|
%endif
|
|
|
|
##########################################################################################
|
|
## Fedora, RHEL or CentOS
|
|
##########################################################################################
|
|
%if 0%{?fedora_version} || 0%{?rhel_version} || 0%{?centos_version}
|
|
%define erl_dir %{_libdir}/erlang
|
|
%define erl_libdir %{erl_dir}/lib
|
|
%define erl_includedir %{erl_dir}/usr/include
|
|
|
|
Requires: tokyocabinet >= 1.3.1
|
|
BuildRequires: tokyocabinet-devel >= 1.3.1
|
|
%endif
|
|
|
|
##########################################################################################
|
|
## Mandrake, Mandriva
|
|
##########################################################################################
|
|
%if 0%{?mandriva_version} || 0%{?mdkversion}
|
|
%define erl_dir %{_libdir}/erlang
|
|
%define erl_libdir %{erl_dir}/lib
|
|
%define erl_includedir %{erl_dir}/usr/include
|
|
%if 0%{?mandriva_version} >= 2009 || 0%{?mdkversion} >= 200900
|
|
BuildRequires: erlang-stack >= R13B01
|
|
Requires: erlang-stack >= R13B01
|
|
%else
|
|
#BuildRequires: classpathx-jaf
|
|
%endif
|
|
|
|
Requires: libtokyocabinet >= 1.3.1
|
|
BuildRequires: tokyocabinet-devel >= 1.3.1
|
|
BuildRequires: erlang-devel
|
|
%endif
|
|
|
|
%define toke_dir %{erl_libdir}/toke-%{version}
|
|
|
|
%description
|
|
Toke is a very minimal Erlang driver for Tokyo Cabinet. It only wraps
|
|
the hash API (tchdb*) and doesn't even implement all of that.
|
|
|
|
All keys and values must be binaries.
|
|
|
|
|
|
%prep
|
|
%setup -q -n toke
|
|
%patch0 -p1
|
|
%patch1 -p1
|
|
%patch2 -p1
|
|
|
|
|
|
%build
|
|
export CFLAGS="$RPM_OPT_FLAGS -I%{erl_includedir}"
|
|
export CXXFLAGS=$CFLAGS
|
|
|
|
%__make
|
|
|
|
%install
|
|
%__install -d -m 755 %{buildroot}%{toke_dir}
|
|
# %%__install -d -m 755 %%{buildroot}%%{toke_dir}/c_src
|
|
%__install -d -m 755 %{buildroot}%{toke_dir}/ebin
|
|
%__install -d -m 755 %{buildroot}%{toke_dir}/priv
|
|
%__install -d -m 755 %{buildroot}%{toke_dir}/src
|
|
|
|
# %%__install -m 644 c_src/toke.c %%{buildroot}%%{toke_dir}/c_src/toke.c
|
|
# %%__install -m 644 c_src/toke.h %%{buildroot}%%{toke_dir}/c_src/toke.h
|
|
|
|
%__install -m 644 ebin/toke_drv.beam %{buildroot}%{toke_dir}/ebin/toke_drv.beam
|
|
%__install -m 644 ebin/toke_test.beam %{buildroot}%{toke_dir}/ebin/toke_test.beam
|
|
|
|
%__install -m 755 priv/libtoke.so %{buildroot}%{toke_dir}/priv/libtoke.so
|
|
|
|
%__install -m 644 src/toke_drv.erl %{buildroot}%{toke_dir}/src/toke_drv.erl
|
|
%__install -m 644 src/toke_test.erl %{buildroot}%{toke_dir}/src/toke_test.erl
|
|
|
|
|
|
%files
|
|
%defattr(-,root,root,-)
|
|
%doc LICENSE LICENSE-MPL-Toke README
|
|
%dir %{toke_dir}
|
|
# %%dir %%{toke_dir}/c_src
|
|
# %%{toke_dir}/c_src/toke.c
|
|
# %%{toke_dir}/c_src/toke.h
|
|
%dir %{toke_dir}/ebin
|
|
%{toke_dir}/ebin/toke_drv.beam
|
|
%{toke_dir}/ebin/toke_test.beam
|
|
%dir %{toke_dir}/priv
|
|
%{toke_dir}/priv/libtoke.so
|
|
%dir %{toke_dir}/src
|
|
%{toke_dir}/src/toke_drv.erl
|
|
%{toke_dir}/src/toke_test.erl
|
|
|
|
|
|
%changelog
|