From 73b0ce3892b6c08b3add2a89304d0e7ba38ba934 Mon Sep 17 00:00:00 2001 From: Jerome Duval Date: Sat, 3 Jun 2017 17:19:33 +0200 Subject: [PATCH] sane_backends: add recipe for version 1.0.27. --- .../patches/sane_backends-1.0.27.patchset | 162 ++++++++++++++++++ .../sane_backends/sane_backends-1.0.27.recipe | 124 ++++++++++++++ 2 files changed, 286 insertions(+) create mode 100644 media-gfx/sane_backends/patches/sane_backends-1.0.27.patchset create mode 100644 media-gfx/sane_backends/sane_backends-1.0.27.recipe diff --git a/media-gfx/sane_backends/patches/sane_backends-1.0.27.patchset b/media-gfx/sane_backends/patches/sane_backends-1.0.27.patchset new file mode 100644 index 000000000..875629eec --- /dev/null +++ b/media-gfx/sane_backends/patches/sane_backends-1.0.27.patchset @@ -0,0 +1,162 @@ +From d67857052a8cd9ac0640fe9004ef2e8a1fc3bffb Mon Sep 17 00:00:00 2001 +From: Gerasim Troeglazov <3dEyes@gmail.com> +Date: Fri, 13 Nov 2015 11:26:01 +0000 +Subject: Fix build + + +diff --git a/backend/epsonds-jpeg.c b/backend/epsonds-jpeg.c +index 62e8bb5..a8bc98f 100644 +--- a/backend/epsonds-jpeg.c ++++ b/backend/epsonds-jpeg.c +@@ -15,6 +15,10 @@ + + #include "sane/config.h" + ++#ifdef __HAIKU__ ++#define _STDLIB_H_ ++#endif ++ + #include + + #include "epsonds.h" +@@ -49,8 +53,8 @@ jpeg_term_source(j_decompress_ptr __sane_unused__ cinfo) + METHODDEF(boolean) + jpeg_fill_input_buffer(j_decompress_ptr cinfo) + { +- epsonds_src_mgr *src = (epsonds_src_mgr *)cinfo->src; + int avail, size; ++ epsonds_src_mgr *src = (epsonds_src_mgr *)cinfo->src; + + /* read from the scanner or the ring buffer */ + +diff --git a/backend/pixma_bjnp.c b/backend/pixma_bjnp.c +index fc4c501..76e058e 100644 +--- a/backend/pixma_bjnp.c ++++ b/backend/pixma_bjnp.c +@@ -106,6 +106,10 @@ + # define SSIZE_MAX LONG_MAX + #endif + ++#ifdef __HAIKU__ ++#undef HAVE_IFADDRS_H ++#endif ++ + /* static data */ + static bjnp_device_t device[BJNP_NO_DEVICES]; + static int bjnp_no_devices = 0; +diff --git a/sanei/sanei_thread.c b/sanei/sanei_thread.c +index fcf52c1..5a1d63e 100644 +--- a/sanei/sanei_thread.c ++++ b/sanei/sanei_thread.c +@@ -484,6 +484,7 @@ SANE_Pid + sanei_thread_waitpid( SANE_Pid pid, int *status ) + { + #ifdef USE_PTHREAD ++ int rc; + int *ls; + #else + int ls; +@@ -496,7 +497,6 @@ sanei_thread_waitpid( SANE_Pid pid, int *status ) + DBG(2, "sanei_thread_waitpid() - %ld\n", + sanei_thread_pid_to_long(pid)); + #ifdef USE_PTHREAD +- int rc; + rc = pthread_join( (pthread_t)pid, (void*)&ls ); + + if( 0 == rc ) { +diff --git a/sanei/sanei_usb.c b/sanei/sanei_usb.c +index e4b23dc..e066904 100644 +--- a/sanei/sanei_usb.c ++++ b/sanei/sanei_usb.c +@@ -2203,6 +2203,7 @@ sanei_usb_clear_halt (SANE_Int dn) + return SANE_STATUS_INVAL; + } + ++#ifndef __HAIKU__ + #ifdef HAVE_LIBUSB_LEGACY + int ret; + +@@ -2253,6 +2254,7 @@ sanei_usb_clear_halt (SANE_Int dn) + #else /* not HAVE_LIBUSB_LEGACY && not HAVE_LIBUSB */ + DBG (1, "sanei_usb_clear_halt: libusb support missing\n"); + #endif /* HAVE_LIBUSB_LEGACY || HAVE_LIBUSB */ ++#endif + + return SANE_STATUS_GOOD; + } +-- +2.12.2 + + +From d13bb9ecdc7e03089e0c963d438031e759d93e3e Mon Sep 17 00:00:00 2001 +From: Gerasim Troeglazov <3dEyes@gmail.com> +Date: Fri, 13 Nov 2015 11:38:32 +0000 +Subject: Disable IPV6 for pixma_bjnp + + +diff --git a/backend/pixma_bjnp.c b/backend/pixma_bjnp.c +index 76e058e..898b6dd 100644 +--- a/backend/pixma_bjnp.c ++++ b/backend/pixma_bjnp.c +@@ -108,6 +108,7 @@ + + #ifdef __HAIKU__ + #undef HAVE_IFADDRS_H ++#undef ENABLE_IPV6 + #endif + + /* static data */ +-- +2.12.2 + + +From ca5d8dcfeb1f6915f4490d632c17aa26c4c7eb34 Mon Sep 17 00:00:00 2001 +From: Gerasim Troeglazov <3dEyes@gmail.com> +Date: Mon, 16 Nov 2015 11:13:48 +0000 +Subject: Disable libusb context for Haiku + + +diff --git a/sanei/sanei_usb.c b/sanei/sanei_usb.c +index e066904..75330bd 100644 +--- a/sanei/sanei_usb.c ++++ b/sanei/sanei_usb.c +@@ -489,7 +489,12 @@ sanei_usb_init (void) + if (!sanei_usb_ctx) + { + DBG (4, "%s: initializing libusb-1.0\n", __func__); ++#ifdef __HAIKU__ ++ ret = libusb_init (NULL); ++ sanei_usb_ctx = -1; ++#else + ret = libusb_init (&sanei_usb_ctx); ++#endif + if (ret < 0) + { + DBG (1, +@@ -547,7 +552,11 @@ int i; + #ifdef HAVE_LIBUSB + if (sanei_usb_ctx) + { ++#ifdef __HAIKU__ ++ libusb_exit (NULL); ++#else + libusb_exit (sanei_usb_ctx); ++#endif + /* reset libusb-1.0 context */ + sanei_usb_ctx=NULL; + } +@@ -871,7 +880,11 @@ static void libusb_scan_devices(void) + + DBG (4, "%s: Looking for libusb-1.0 devices\n", __func__); + ++#ifdef __HAIKU__ ++ ndev = libusb_get_device_list (NULL, &devlist); ++#else + ndev = libusb_get_device_list (sanei_usb_ctx, &devlist); ++#endif + if (ndev < 0) + { + DBG (1, +-- +2.12.2 + diff --git a/media-gfx/sane_backends/sane_backends-1.0.27.recipe b/media-gfx/sane_backends/sane_backends-1.0.27.recipe new file mode 100644 index 000000000..52320b41d --- /dev/null +++ b/media-gfx/sane_backends/sane_backends-1.0.27.recipe @@ -0,0 +1,124 @@ +SUMMARY="Scanner Access Now Easy (SANE)" +DESCRIPTION=" +SANE stands for \"Scanner Access Now Easy\" and is an application programming \ +interface (API) that provides standardized access to any raster image scanner \ +hardware (flatbed scanner, hand-held scanner, video- and still-cameras, frame-\ +grabbers, etc.). + +The SANE standard is free and its discussion and development \ +are open to everybody. The current source code is written to support several \ +operating systems, including GNU/Linux, OS/2, Win32 and various Unices and is \ +available under the GNU General Public License (commercial applications and \ +backends are welcome, too, however). + +This package includes scanners backends, the command line frontend scanimage, \ +the saned server and the sane-find-scanner utility, along with their \ +documentation. +" +HOMEPAGE="http://www.sane-project.org" +COPYRIGHT="David Mosberger-Tang, Andy Beck" +LICENSE="GNU LGPL v2" +REVISION="1" +SOURCE_URI="https://alioth.debian.org/frs/download.php/file/4224/sane-backends-$portVersion.tar.gz" +CHECKSUM_SHA256="293747bf37275c424ebb2c833f8588601a60b2f9653945d5a3194875355e36c9" +SOURCE_DIR="sane-backends-$portVersion" +GLOBAL_WRITABLE_FILES=" + settings/sane.d directory keep-old + " +PATCHES=" + sane_backends-$portVersion.patchset + " + +ARCHITECTURES="?x86_gcc2 x86 ?x86_64" +SECONDARY_ARCHITECTURES="?x86_gcc2 ?x86" + + +PROVIDES=" + sane_backends$secondaryArchSuffix = $portVersion + cmd:gamma4scanimage$secondaryArchSuffix = $portVersion + cmd:sane_config$secondaryArchSuffix = $portVersion + cmd:sane_find_scanner$secondaryArchSuffix = $portVersion + cmd:saned$secondaryArchSuffix = $portVersion + cmd:scanimage$secondaryArchSuffix = $portVersion + cmd:umax_pp$secondaryArchSuffix + lib:libsane$secondaryArchSuffix = $portVersion compat >= 1 + " +REQUIRES=" + haiku$secondaryArchSuffix + lib:libz$secondaryArchSuffix + lib:libusb_1.0$secondaryArchSuffix + lib:libjpeg$secondaryArchSuffix + lib:libtiff$secondaryArchSuffix + " + +PROVIDES_devel=" + sane_backends${secondaryArchSuffix}_devel = $portVersion + devel:libsane$secondaryArchSuffix = $portVersion compat >= 1 + " +REQUIRES_devel=" + sane_backends$secondaryArchSuffix == $portVersion base + " + +BUILD_REQUIRES=" + devel:libz$secondaryArchSuffix + devel:libusb_1.0$secondaryArchSuffix + devel:libjpeg$secondaryArchSuffix + devel:libtiff$secondaryArchSuffix + " +BUILD_PREREQUIRES=" + haiku${secondaryArchSuffix}_devel + cmd:aclocal + cmd:autoconf + cmd:automake + cmd:libtoolize + cmd:awk + cmd:find + cmd:gcc$secondaryArchSuffix + cmd:make + cmd:pkg_config$secondaryArchSuffix + " + +BUILD() +{ + libtoolize --force --copy --install + aclocal + autoconf + automake + + runConfigure configure \ + --prefix=$prefix \ + --bindir=$binDir \ + --sbindir=$binDir \ + --libdir=$libDir \ + --includedir=$includeDir \ + --datadir=$dataDir \ + --with-docdir=$docDir \ + --enable-pthread \ + --disable-latex \ + --disable-translations \ + --enable-libusb_1_0 \ + --enable-rpath \ + --enable-pnm-backend \ + LIBS=-lnetwork + + make +} + +INSTALL() +{ + make install-strip + + rm $libDir/libsane.la + + # prepare develop/lib + prepareInstalledDevelLibs libsane + fixPkgconfig + + # hack for old BeOS apps (Sanity) + ln -s $libDir/libsane.so.1 $libDir/libsane.so + + # devel package + packageEntries devel \ + $developDir + +}