sane_backends: add recipe for version 1.0.27.

This commit is contained in:
Jerome Duval
2017-06-03 17:19:33 +02:00
parent b348f5216f
commit 73b0ce3892
2 changed files with 286 additions and 0 deletions

View File

@@ -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 <math.h>
#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

View File

@@ -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
}