diff options
-rw-r--r-- | app-accessibility/brltty/ChangeLog | 9 | ||||
-rw-r--r-- | app-accessibility/brltty/brltty-5.1.ebuild | 189 | ||||
-rw-r--r-- | app-accessibility/brltty/files/brltty-5.1-fix-ldflags.patch | 56 | ||||
-rw-r--r-- | app-accessibility/brltty/files/brltty-5.1-respect-AR.patch | 12 | ||||
-rw-r--r-- | app-accessibility/brltty/files/brltty-5.1-udev.patch | 28 |
5 files changed, 293 insertions, 1 deletions
diff --git a/app-accessibility/brltty/ChangeLog b/app-accessibility/brltty/ChangeLog index a04abc43e981..a7d35d95eb1b 100644 --- a/app-accessibility/brltty/ChangeLog +++ b/app-accessibility/brltty/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for app-accessibility/brltty # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/app-accessibility/brltty/ChangeLog,v 1.152 2014/08/13 18:44:41 teiresias Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-accessibility/brltty/ChangeLog,v 1.153 2014/08/23 14:37:40 teiresias Exp $ + +*brltty-5.1 (23 Aug 2014) + + 23 Aug 2014; Christopher Brannon <teiresias@gentoo.org> +brltty-5.1.ebuild, + +files/brltty-5.1-fix-ldflags.patch, +files/brltty-5.1-respect-AR.patch, + +files/brltty-5.1-udev.patch: + New upstream version. 13 Aug 2014; Christopher Brannon <teiresias@gentoo.org> brltty-5.0-r3.ebuild: Fix building with +java USE flag. diff --git a/app-accessibility/brltty/brltty-5.1.ebuild b/app-accessibility/brltty/brltty-5.1.ebuild new file mode 100644 index 000000000000..39fec35f1dfc --- /dev/null +++ b/app-accessibility/brltty/brltty-5.1.ebuild @@ -0,0 +1,189 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-accessibility/brltty/brltty-5.1.ebuild,v 1.1 2014/08/23 14:37:40 teiresias Exp $ + +EAPI=5 + +PYTHON_COMPAT=( python2_7 python3_2 python3_3 ) +FINDLIB_USE="ocaml" + +inherit findlib eutils multilib toolchain-funcs java-pkg-opt-2 flag-o-matic \ + autotools udev systemd python-r1 + +DESCRIPTION="Daemon that provides access to the Linux/Unix console for a blind person" +HOMEPAGE="http://brltty.com/" +SRC_URI="http://brltty.com/archive/${P}.tar.xz" + +LICENSE="GPL-2 LGPL-2.1" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~x86" +IUSE="+api +beeper bluetooth +contracted-braille doc +fm gpm iconv icu + java +midi ncurses nls ocaml +pcm python usb +speech + tcl X" +REQUIRED_USE="doc? ( api ) + java? ( api ) + ocaml? ( api ) + python? ( api ) + tcl? ( api )" + +COMMON_DEP="bluetooth? ( net-wireless/bluez ) + gpm? ( >=sys-libs/gpm-1.20 ) + iconv? ( virtual/libiconv ) + icu? ( dev-libs/icu:= ) + python? ( ${PYTHON_DEPS} ) + ncurses? ( sys-libs/ncurses ) + nls? ( virtual/libintl ) + tcl? ( >=dev-lang/tcl-8.4.15 ) + usb? ( virtual/libusb:0 ) + X? ( x11-libs/libXaw )" +DEPEND="virtual/pkgconfig + java? ( >=virtual/jdk-1.4 ) + python? ( >=dev-python/cython-0.16[${PYTHON_USEDEP}] ) + ${COMMON_DEP}" +RDEPEND="java? ( >=virtual/jre-1.4 ) + ${COMMON_DEP}" + +src_prepare() { + epatch "${FILESDIR}"/${P}-fix-ldflags.patch \ + "${FILESDIR}"/${P}-udev.patch \ + "${FILESDIR}"/${P}-respect-AR.patch + + java-pkg-opt-2_src_prepare + + # The code runs `pkg-config` directly instead of locating a suitable + # pkg-config wrapper (or respecting $PKG_CONFIG). + sed -i \ + -e 's/\<pkg-config\>/${PKG_CONFIG:-pkg-config}/' \ + aclocal.m4 configure.ac || die + + # We run eautoconf instead of using eautoreconf because brltty uses + # a custom build system that uses autoconf without the rest of the + # autotools. + eautoconf + python_copy_sources +} + +src_configure() { + tc-export AR LD PKG_CONFIG + # override prefix in order to install into / + # braille terminal needs to be available as soon in the boot process as + # possible + # Also override localstatedir so that the lib/brltty directory is installed + # correctly. + # Disable stripping since we do that ourselves. + local myconf=( + --prefix=/ + --localedir=/usr/share/locale + --includedir=/usr/include + --localstatedir=/var + --disable-stripping + --with-install-root="${D}" + --with-writable-directory="/run/brltty" + $(use_enable api) + $(use_with beeper beep-package) + $(use_enable contracted-braille) + $(use_with fm fm-package) + $(use_enable gpm) + $(use_enable iconv) + $(use_enable icu) + $(use_enable java java-bindings) + $(use_with midi midi-package) + $(use_enable nls i18n) + $(use_enable ocaml ocaml-bindings) + $(use_with pcm pcm-package) + $(use_enable speech speech-support) + $(use_enable tcl tcl-bindings) + $(use_enable X x) + $(use_with bluetooth bluetooth-package) + $(use_with ncurses curses) + $(use_with usb usb-package) ) + + econf "${myconf[@]}" + + if use python; then + myconf+=( $(use_enable python python-bindings ) ) + + python_configure() { + econf "${myconf[@]}" + } + python_foreach_impl run_in_build_dir python_configure + fi +} + +src_compile() { + local JAVAC_CONF="" + local OUR_JNI_FLAGS="" + if use java; then + OUR_JNI_FLAGS="$(java-pkg_get-jni-cflags)" + JAVAC_CONF="${JAVAC} -encoding UTF-8 $(java-pkg_javac-args)" + fi + + emake JAVA_JNI_FLAGS="${OUR_JNI_FLAGS}" JAVAC="${JAVAC_CONF}" + + if use python; then + python_build() { + cd "Bindings/Python" || die + emake + } + python_foreach_impl run_in_build_dir python_build + fi +} + +src_install() { + if use ocaml; then + findlib_src_preinst + fi + + emake OCAML_LDCONF= install + + if use python; then + python_install() { + cd "Bindings/Python" || die + emake install + } + python_foreach_impl run_in_build_dir python_install + fi + + if use java; then + # make install puts the _java.so there, and no it's not $(get_libdir) + rm -rf "${D}/usr/lib/java" + java-pkg_doso Bindings/Java/libbrlapi_java.so + java-pkg_dojar Bindings/Java/brlapi.jar + fi + + insinto /etc + doins Documents/brltty.conf + udev_newrules Autostart/Udev/udev.rules 70-brltty.rules + newinitd "${FILESDIR}"/brltty.rc brltty + systemd_dounit Autostart/Systemd/brltty.service + systemd_dotmpfilesd "${FILESDIR}/${PN}.tmpfiles.conf" + + libdir="$(get_libdir)" + mkdir -p "${D}"/usr/${libdir}/ + mv "${D}"/${libdir}/*.a "${D}"/usr/${libdir}/ + gen_usr_ldscript libbrlapi.so + + cd Documents + mv Manual-BRLTTY/English/BRLTTY.txt BRLTTY-en.txt + mv Manual-BRLTTY/French/BRLTTY.txt BRLTTY-fr.txt + mv Manual-BrlAPI/English/BrlAPI.txt BrlAPI-en.txt + dodoc CONTRIBUTORS ChangeLog HISTORY README* TODO BRLTTY-*.txt + dohtml -r Manual-BRLTTY + if use doc; then + dohtml -r Manual-BrlAPI + dodoc BrlAPI-*.txt + fi + + keepdir /var/lib/brlapi + rmdir "${D}/run/brltty" + rmdir "${D}/run" +} + +pkg_postinst() { + elog + elog please be sure "${ROOT}"etc/brltty.conf is correct for your system. + elog + elog To make brltty start on boot, type this command as root: + elog + elog rc-update add brltty boot +} diff --git a/app-accessibility/brltty/files/brltty-5.1-fix-ldflags.patch b/app-accessibility/brltty/files/brltty-5.1-fix-ldflags.patch new file mode 100644 index 000000000000..e60ea9a4e509 --- /dev/null +++ b/app-accessibility/brltty/files/brltty-5.1-fix-ldflags.patch @@ -0,0 +1,56 @@ +--- a/configure.ac ++++ b/configure.ac +@@ -377,7 +377,7 @@ + case "${host_os}" + in + linux*|gnu*|openbsd*|freebsd*|kfreebsd*|netbsd*|*qnx*|cygwin*|mingw*|elf*) +- brltty_mkmod_ld_make="-shared" ++ brltty_mkmod_ld_make="-shared ${LDFLAGS}" + ;; + solaris*) + brltty_mkmod_ld_make="-G" +@@ -404,7 +404,7 @@ + esac + if test "${GCC}" = "yes" + then +- brltty_cv_prog_mkmod="\$(CC) ${brltty_mkmod_gcc_make=-shared} BRLTTY_OPTIONS_LD2CC([${brltty_mkmod_ld_options}]) -o" ++ brltty_cv_prog_mkmod="\$(CC) ${brltty_mkmod_gcc_make=-shared} ${LDFLAGS} BRLTTY_OPTIONS_LD2CC([${brltty_mkmod_ld_options}]) -o" + else + brltty_cv_prog_mkmod="\$(LD) ${brltty_mkmod_ld_make} ${brltty_mkmod_ld_options} -o" + fi]) +@@ -414,7 +414,7 @@ + case "${host_os}" + in + linux*|gnu*|openbsd*|freebsd*|kfreebsd*|netbsd*|*qnx*|elf*) +- brltty_mklib_ld_make="-shared" ++ brltty_mklib_ld_make="-shared ${LDFLAGS}" + brltty_mklib_ld_options="-soname" + ;; + solaris*) +@@ -449,7 +449,7 @@ + esac + if test "${GCC}" = "yes" + then +- brltty_cv_prog_mklib="\$(CC) ${brltty_mklib_gcc_make=-shared} BRLTTY_OPTIONS_LD2CC([${brltty_mklib_ld_options+${brltty_mklib_ld_options} <name>}]) -o" ++ brltty_cv_prog_mklib="\$(CC) ${brltty_mklib_gcc_make=-shared} ${LDFLAGS} BRLTTY_OPTIONS_LD2CC([${brltty_mklib_ld_options+${brltty_mklib_ld_options} <name>}]) -o" + else + brltty_cv_prog_mklib="\$(LD) ${brltty_mklib_ld_make} ${brltty_mklib_ld_options+${brltty_mklib_ld_options} <name>} -o" + fi]) +--- a/Bindings/OCaml/Makefile.in ++++ b/Bindings/OCaml/Makefile.in +@@ -55,13 +55,13 @@ + all : $(OCAML_FILES) + + $(OCAML_CLIBS) : brlapi_stubs.$O brlapi +- $(OCAMLMKLIB) $(API_LDFLAGS) -oc $(OCAML_LIB)_stubs brlapi_stubs.$O ++ $(OCAMLMKLIB) -ldopt "$(LDFLAGS)" $(API_LDFLAGS) -oc $(OCAML_LIB)_stubs brlapi_stubs.$O + + $(OCAML_BCLIB) : $(OCAML_CLIBS) brlapi.cmo + $(OCAMLC) -a $(OCAMLMKLIB_FLAGS) -o $(OCAML_LIB).cma brlapi.cmo + + $(OCAML_NCLIB) : $(OCAML_CLIBS) brlapi.cmx +- $(OCAMLMKLIB) $(OCAMLMKLIBOPT_FLAGS) -o $(OCAML_LIB) brlapi.cmx ++ $(OCAMLMKLIB) -ldopt "$(LDFLAGS)" $(OCAMLMKLIBOPT_FLAGS) -o $(OCAML_LIB) brlapi.cmx + + brlapi.cmi: brlapi.mli + $(OCAMLC) -o $@ -c brlapi.mli diff --git a/app-accessibility/brltty/files/brltty-5.1-respect-AR.patch b/app-accessibility/brltty/files/brltty-5.1-respect-AR.patch new file mode 100644 index 000000000000..09ae62973c2e --- /dev/null +++ b/app-accessibility/brltty/files/brltty-5.1-respect-AR.patch @@ -0,0 +1,12 @@ +diff -Naur brltty-4.5/Programs/Makefile.in brltty-4.5-new/Programs/Makefile.in +--- brltty-4.5/Programs/Makefile.in 2013-03-27 15:51:35.000000000 -0700 ++++ brltty-4.5-new/Programs/Makefile.in 2013-09-19 14:57:56.268106076 -0700 +@@ -387,7 +387,7 @@ + [ ! -f lib.def ] || mv lib.def $(API_DEF) + + $(API_ARC): $(API_OBJS) +- ar rc $@ $(API_OBJS) ++ $(AR) rc $@ $(API_OBJS) + $(RANLIB) $@ + + brlapi_client.$O: diff --git a/app-accessibility/brltty/files/brltty-5.1-udev.patch b/app-accessibility/brltty/files/brltty-5.1-udev.patch new file mode 100644 index 000000000000..6500a2af8ed6 --- /dev/null +++ b/app-accessibility/brltty/files/brltty-5.1-udev.patch @@ -0,0 +1,28 @@ +diff -Naur brltty-5.0/Autostart/Udev/udev.rules brltty-5.0.new/Autostart/Udev/udev.rules +--- brltty-5.0/Autostart/Udev/udev.rules 2014-01-27 10:39:20.000000000 -0800 ++++ brltty-5.0.new/Autostart/Udev/udev.rules 2014-02-09 04:24:08.146802299 -0800 +@@ -174,20 +174,22 @@ + # FreedomScientific [Focus Blue] + ENV{PRODUCT}=="f4e/114/*", ENV{BRLTTY_BRAILLE_DRIVER}="fs", GOTO="brltty_usb_run" + ++# Seika rules are commented out, because they conflict with USB-to-serial ++# converters. + # Device: 10C4:EA60 + # Generic Identifier + # Vendor: Cygnal Integrated Products, Inc. + # Product: CP210x UART Bridge / myAVR mySmartUSB light + # BrailleMemo [all models] + # Seika [Braille Display] +-ENV{PRODUCT}=="10c4/ea60/*", ENV{BRLTTY_BRAILLE_DRIVER}="mm,sk", GOTO="brltty_usb_run" ++#ENV{PRODUCT}=="10c4/ea60/*", ENV{BRLTTY_BRAILLE_DRIVER}="mm,sk", GOTO="brltty_usb_run" + + # Device: 10C4:EA80 + # Generic Identifier + # Vendor: Cygnal Integrated Products, Inc. + # Product: CP210x UART Bridge + # Seika [Note Taker] +-ENV{PRODUCT}=="10c4/ea80/*", ENV{BRLTTY_BRAILLE_DRIVER}="sk", GOTO="brltty_usb_run" ++#ENV{PRODUCT}=="10c4/ea80/*", ENV{BRLTTY_BRAILLE_DRIVER}="sk", GOTO="brltty_usb_run" + + # Device: 1C71:C005 + # HumanWare [all models] |