# TODO:
-# - check BR
-# - more packages (bindings)
+# - what is that huge %post script?
# - ocaml bcond is useless now:
# Cannot find ocamlfind.
# BrlAPI Caml bindings will be compiled but not installed.
+# - check java stuff
+# - create bcond to build with minimal deps (wo ncurses,gpm,at-spi*)
+#
+# warning: Installed (but unpackaged) file(s) found:
+# /usr/lib/brltty/libbrlttybbs.so
+# /usr/lib/ocaml/brlapi/META
+# /usr/lib/ocaml/brlapi/brlapi.cma
+# /usr/lib/ocaml/brlapi/brlapi.cmi
+# /usr/lib/ocaml/brlapi/brlapi.cmxa
+# /usr/lib/ocaml/brlapi/brlapi.mli
+# /usr/lib/ocaml/brlapi/libbrlapi_stubs.a
+# /usr/lib/ocaml/stublibs/dllbrlapi_stubs.so
+# /usr/lib/ocaml/stublibs/dllbrlapi_stubs.so.owner
+# /usr/share/man/man1/xbrlapi.1.gz
#
# Conditional build:
%bcond_without apidocs # documentation generated with doxygen
+%bcond_with java # java bindings
%bcond_with ocaml # ocaml bindings (NFY)
+%bcond_without python # python bindings
+%bcond_without tcl # tcl bindings
+%bcond_without x # build X11-based utilities
#
+%include /usr/lib/rpm/macros.java
Summary: Braille display driver for Linux/Unix
Summary(pl.UTF-8): Sterownik do wyświetlaczy Braille'a
Name: brltty
-Version: 3.9
+Version: 3.10
Release: 1
Group: Daemons
License: GPL
-URL: http://mielke.cc/brltty/
Source0: http://mielke.cc/brltty/releases/%{name}-%{version}.tar.gz
-# Source0-md5: 7ce54ba2d38b7c220870e8c781f36743
-BuildRequires: autoconf >= 2.53
+# Source0-md5: d52f332a29e00495d166e7f45403fa9d
+Patch0: %{name}-ac.patch
+URL: http://mielke.cc/brltty/
+BuildRequires: at-spi-devel
+BuildRequires: autoconf >= 2.62
BuildRequires: automake
BuildRequires: bison
#BuildRequires: bluez-devel
%{?with_apidocs:BuildRequires: doxygen}
-#BuildRequires: gpm-devel
-#BuildRequires: java-?
-#BuildRequires: libusb-devel
-#BuildRequires: ncurses-devel
+BuildRequires: gpm-devel
+%{?with_java:BuildRequires: jdk}
+BuildRequires: ncurses-devel
%{?with_ocaml:BuildRequires: ocaml}
-#BuildRequires: pkgconfig
-#BuildRequires: python-devel
-#BuildRequires: tcl-devel
-#BuildRequires: xorg-lib-libX*
+BuildRequires: pkgconfig
+%{?with_python:BuildRequires: python-Pyrex}
+%{?with_java:BuildRequires: rpm-javaprov}
+%{?with_python:BuildRequires: rpm-pythonprov}
+%{?with_tcl:BuildRequires: tcl}
+%{?with_x:BuildRequires: xorg-lib-libXaw-devel}
+%{?with_x:BuildRequires: xorg-lib-libXtst-devel}
+# libbrlttyblb
+#BR: libbraile-devel (-lllibbraile <braille.h>)
+# libbrlttysfl
+BuildRequires: flite-devel
+# libbrlttysmp
+#BR: Mikropuhe-devel (-lmikropuhe <mpwrfile.h>)
+# libbrlttyssd
+#BuildRequires: speech-dispatcher-devel
+# libbrlttyssw
+#BR: Swift-devel (-lswift <swift.h>)
+# libbrlttysth
+#BR: Theta-devel (-ltheta <theta.h>)
+# libbrlttysvv
+#BR: ViaVoice-devel (-lviavoice <eci.h>)
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description
Dokumentacja BrlAPI w formacie HTML generowane ze
źrodeł brltty przez doxygen.
+%package -n java-brlapi
+Summary: BrlAPI library for Java
+Summary(pl.UTF-8): Biblioteka BrlAPI dla Javy
+Group: Libraries
+Requires: brlapi = %{version}-%{release}
+
+%description -n java-brlapi
+BrlAPI library for Java.
+
+%description -n java-brlapi -l pl.UTF-8
+Biblioteka BrlAPI dla Javy.
+
+%package -n python-brlapi
+Summary: Python interface to BrlAPI
+Summary(pl.UTF-8): Pythonowy interfejs do BrlAPI
+Group: Libraries
+Requires: brlapi = %{version}-%{release}
+
+%description -n python-brlapi
+Python interface to BrlAPI.
+
+%description -n python-brlapi -l pl.UTF-8
+Pythonowy interfejs do BrlAPI.
+
+%package -n brlapi-tcl
+Summary: BrlAPI library for Tcl
+Summary(pl.UTF-8): Biblioteka BrlAPI dla Tcl
+Group: Libraries
+Requires: brlapi = %{version}-%{release}
+
+%description -n brlapi-tcl
+BrlAPI library for Tcl.
+
+%description -n brlapi-tcl -l pl.UTF-8
+Biblioteka BrlAPI dla Tcl.
+
%prep
%setup -q
+%patch0 -p1
%build
%{__aclocal}
%{__autoconf}
cp -f /usr/share/automake/config.sub acdir
+CFLAGS="%{rpmcflags} -I/usr/include/ncurses"
%configure \
--with-install-root="$RPM_BUILD_ROOT" \
--disable-tainted-components \
+ %{!?with_java:--disable-java-bindings} \
--enable-api
%{__make}
%attr(755,root,root) %{_bindir}/brltty-install
%attr(755,root,root) %{_bindir}/brltty-config
%attr(755,root,root) %{_bindir}/vstp
-#attr(755,root,root) %{_bindir}/xbrlapi
+%{?with_x:%attr(755,root,root) %{_bindir}/xbrlapi}
%dir %{_libdir}/brltty
%attr(755,root,root) %{_libdir}/brltty/libbrlttybal.so
%attr(755,root,root) %{_libdir}/brltty/libbrlttybat.so
%attr(755,root,root) %{_libdir}/brltty/libbrlttybvo.so
%attr(755,root,root) %{_libdir}/brltty/libbrlttybvr.so
%attr(755,root,root) %{_libdir}/brltty/libbrlttybvs.so
+%{?with_x:%attr(755,root,root) %{_libdir}/brltty/libbrlttybxw.so}
%attr(755,root,root) %{_libdir}/brltty/libbrlttysal.so
%attr(755,root,root) %{_libdir}/brltty/libbrlttysbl.so
%attr(755,root,root) %{_libdir}/brltty/libbrlttyscb.so
%attr(755,root,root) %{_libdir}/brltty/libbrlttyses.so
+%attr(755,root,root) %{_libdir}/brltty/libbrlttysfl.so
%attr(755,root,root) %{_libdir}/brltty/libbrlttysfv.so
%attr(755,root,root) %{_libdir}/brltty/libbrlttysgs.so
+%attr(755,root,root) %{_libdir}/brltty/libbrlttyxas.so
%attr(755,root,root) %{_libdir}/brltty/libbrlttyxlx.so
%attr(755,root,root) %{_libdir}/brltty/libbrlttyxsc.so
%{_sysconfdir}/brltty
%files -n brlapi
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libbrlapi.so.0.5
-%attr(755,root,root) %{_libdir}/libbrlapi.so.0.5.1
+%attr(755,root,root) %{_libdir}/libbrlapi.so.0.5.2
+%attr(755,root,root) %ghost %{_libdir}/libbrlapi.so.0.5
%files -n brlapi-devel
%defattr(644,root,root,755)
%defattr(644,root,root,755)
%{_libdir}/libbrlapi.a
+%if %{with apidocs}
%files -n brlapi-apidocs
%defattr(644,root,root,755)
%doc Documents/BrlAPIref/html/*
+%endif
+
+%if %{with java}
+%files -n java-brlapi
+%defattr(644,root,root,755)
+%{_libdir}/java/libbrlapi_java.so
+%{_javadir}/brlapi.jar
+%endif
+
+%if %{with python}
+%files -n python-brlapi
+%defattr(644,root,root,755)
+%{py_sitedir}/Brlapi-*.egg-info
+%attr(755,root,root) %{py_sitedir}/brlapi.so
+%endif
+
+%if %{with tcl}
+%files -n brlapi-tcl
+%defattr(644,root,root,755)
+%dir %{_libdir}/brlapi-0.5.2
+%attr(755,root,root) %{_libdir}/brlapi-0.5.2/libbrlapi_tcl.so
+%{_libdir}/brlapi-0.5.2/pkgIndex.tcl
+%endif