diff --git a/hardware/misc/libgphoto2/actions.py b/hardware/misc/libgphoto2/actions.py new file mode 100644 index 0000000000..96333c4012 --- /dev/null +++ b/hardware/misc/libgphoto2/actions.py @@ -0,0 +1,67 @@ +#!/usr/bin/python +# -*- coding: utf-8 -*- +# +# Licensed under the GNU General Public License, version 3. +# See the file http://www.gnu.org/licenses/gpl.txt + +from pisi.actionsapi import shelltools +from pisi.actionsapi import autotools +from pisi.actionsapi import pisitools +from pisi.actionsapi import get + +import os + +def setup(): + shelltools.export("AUTOPOINT", "true") + autotools.autoreconf("-fi") + autotools.configure("--with-rpmbuild=/bin/false \ + --with-drivers=all \ + --enable-nls \ + --without-aalib \ + --disable-rpath \ + --disable-lockdev \ + --disable-resmgr \ + --disable-ttylock \ + --disable-baudboy \ + --disable-static") + + pisitools.dosed("libtool", " -shared ", " -Wl,-O1,--as-needed -shared ") + +def build(): + autotools.make() + +def install(): + autotools.rawInstall("DESTDIR=%s \ + udevscriptdir=/lib/udev" % get.installDIR()) + + HAL_FDI="usr/share/hal/fdi/information/20thirdparty/10-camera-libgphoto2.fdi" + UDEV_RULES="lib/udev/rules.d/40-libgphoto2.rules" + CAM_LIST="usr/lib/libgphoto2/print-camera-list" + CAM_LIBS="usr/lib/libgphoto2/%s" % get.srcVERSION() + + # Create hal directory + pisitools.dodir(shelltools.dirName(HAL_FDI)) + + # Export the necessary env variables + shelltools.export("CAMLIBS", "%s/%s" % (get.installDIR(), CAM_LIBS)) + shelltools.export("LIBDIR", "%s/usr/lib/" % get.installDIR()) + shelltools.export("LD_LIBRARY_PATH", "%s/usr/lib/" % get.installDIR()) + + # Generate HAL FDI file + f = open(os.path.join(get.installDIR(), HAL_FDI), "w") + f.write(os.popen("%s/%s hal-fdi" % (get.installDIR(), CAM_LIST)).read()) + f.close() + + # Generate UDEV rule which will replace the HAL FDI when HAL is deprecated + pisitools.dodir("/lib/udev/rules.d") + f = open(os.path.join(get.installDIR(), UDEV_RULES), "w") + f.write(os.popen("%s/%s udev-rules version 136" % (get.installDIR(), CAM_LIST)).read()) + f.close() + + pisitools.removeDir("/usr/share/doc/libgphoto2_port") + + # Remove circular symlink + pisitools.remove("/usr/include/gphoto2/gphoto2") + + pisitools.dodoc("ChangeLog", "NEWS*", "README", "AUTHORS", "TESTERS", "MAINTAINERS", "HACKING") + diff --git a/hardware/misc/libgphoto2/comar/package.py b/hardware/misc/libgphoto2/comar/package.py new file mode 100644 index 0000000000..b958b301e7 --- /dev/null +++ b/hardware/misc/libgphoto2/comar/package.py @@ -0,0 +1,9 @@ +import os + +def postInstall(fromVersion, fromRelease, toVersion, toRelease): + stale_files = ["/usr/share/hal/fdi/information/10freedesktop/10-camera-libgphoto2-device.fdi", + "/etc/udev/rules.d/60-libgphoto2.rules"] + + for f in stale_files: + if os.path.exists(f): + os.unlink(f) diff --git a/hardware/misc/libgphoto2/files/gphoto2-device-return.patch b/hardware/misc/libgphoto2/files/gphoto2-device-return.patch new file mode 100644 index 0000000000..456c2d4425 --- /dev/null +++ b/hardware/misc/libgphoto2/files/gphoto2-device-return.patch @@ -0,0 +1,32 @@ +From 242878ac1cefd1ef99c2e5d84a794f72e49e28be Mon Sep 17 00:00:00 2001 +From: Lubomir Rintel +Date: Fri, 23 Oct 2009 13:12:16 +0200 +Subject: [PATCH] Repair reattach of kernel driver if it was unbound + +Drah in the header for USBDEVFS_CONNECT. + +Signed-off-by: Lubomir Rintel +--- + libgphoto2_port/usb/libusb.c | 6 ++++++ + 1 files changed, 6 insertions(+), 0 deletions(-) + +diff --git a/libgphoto2_port/usb/libusb.c b/libgphoto2_port/usb/libusb.c +index d1535a5..c8a63f1 100644 +--- a/libgphoto2_port/usb/libusb.c ++++ b/libgphoto2_port/usb/libusb.c +@@ -38,6 +38,12 @@ + #include + #include + ++#if defined(LIBUSB_HAS_GET_DRIVER_NP) && defined(LIBUSB_HAS_DETACH_KERNEL_DRIVER_NP) ++/* Pull in USBDEVFS_CONNECT */ ++#include ++#include ++#endif ++ + #ifdef ENABLE_NLS + # include + # undef _ +-- +1.6.5.rc2 + diff --git a/hardware/misc/libgphoto2/files/gphoto2-ixany.patch b/hardware/misc/libgphoto2/files/gphoto2-ixany.patch new file mode 100644 index 0000000000..09d9d904b3 --- /dev/null +++ b/hardware/misc/libgphoto2/files/gphoto2-ixany.patch @@ -0,0 +1,14 @@ +diff -up gphoto2-2.4.0/libgphoto2-2.4.0/libgphoto2_port/serial/unix.c.ixany gphoto2-2.4.0/libgphoto2-2.4.0/libgphoto2_port/serial/unix.c +--- libgphoto2-2.4.0/libgphoto2_port/serial/unix.c.ixany 2007-07-27 02:36:13.000000000 +0200 ++++ libgphoto2-2.4.0/libgphoto2_port/serial/unix.c 2008-02-25 06:40:40.000000000 +0100 +@@ -98,6 +98,10 @@ + + #define CHECK(result) {int r=(result); if (r<0) return (r);} + ++#ifndef IXANY ++#define IXANY 0004000 ++#endif ++ + /* Linux */ + #ifdef __linux__ + /* devfs is accounted for in the implementation */ diff --git a/hardware/misc/libgphoto2/files/gphoto2-pkgcfg.patch b/hardware/misc/libgphoto2/files/gphoto2-pkgcfg.patch new file mode 100644 index 0000000000..e108a95770 --- /dev/null +++ b/hardware/misc/libgphoto2/files/gphoto2-pkgcfg.patch @@ -0,0 +1,74 @@ +--- libgphoto2-2.4.1/gphoto2-config.in.pkgcfg 2007-07-27 02:36:23.000000000 +0200 ++++ libgphoto2-2.4.1/gphoto2-config.in 2007-07-31 12:21:14.000000000 +0200 +@@ -1,11 +1,5 @@ + #! /bin/sh + +-# leave these definitions here +-# they are required for correct interpolation of +-# @libdir@ and @includedir@ later on +-prefix="@prefix@" +-exec_prefix="@exec_prefix@" +- + usage() + { + cat < + + + + libgphoto2 + http://www.gphoto.org/ + + PisiLinux Community + admins@pisilinux.org + + GPLv2 + library + Library that implements support for numerous digital cameras + libgphoto2 is the core library designed to allow access to digital camera by external programs. + mirrors://sourceforge/gphoto/libgphoto2-2.5.8.tar.bz2 + + doxygen + gd-devel + tiff-devel + fontconfig-devel + libjpeg-turbo-devel + libexif-devel + + + + + libgphoto2 + + zlib + libxml2 + libtool-ltdl + gd + tiff + libvpx + libexif + fontconfig + libjpeg-turbo + + + /usr/bin + /lib/udev + /usr/share/doc/libgphoto2/README + /usr/share/doc/libgphoto2/COPYING + /usr/lib + /usr/share/libgphoto2 + /usr/share/hal/fdi + /lib/udev/rules.d + /usr/share/locale + /usr/share/man + + + System.Package + + + + + libgphoto2-docs + Documentation for libgphoto2 + + /usr/share/doc/libgphoto2 + /usr/share/doc/libgphoto2/camlibs + /usr/share/doc/libgphoto2/apidocs.html + /usr/share/doc/libgphoto2/linux-hotplug + + + + + libgphoto2-devel + Development files for libgphoto2 + + libexif-devel + libgphoto2 + + + /usr/bin/gphoto2-config* + /usr/bin/gphoto2-port-config + /usr/include/gphoto2 + /usr/lib/pkgconfig + /usr/share/man/man3 + + + + + + 2015-08-02 + 2.5.8 + Version bump. + Ertuğrul Erata + ertugrulerata@gmail.com + + + 2014-05-15 + 2.5.4 + Version bump. + Stefan Gronewold(groni) + groni@pisilinux.org + + + 2014-01-30 + 2.5.3.1 + Version bump. + Stefan Gronewold(groni) + groni@pisilinux.org + + + 2012-11-16 + 2.5.0 + First release + PisiLinux Community + namso-01qhotmail.it + + + diff --git a/hardware/misc/libgphoto2/translations.xml b/hardware/misc/libgphoto2/translations.xml new file mode 100644 index 0000000000..0dcd00b4bb --- /dev/null +++ b/hardware/misc/libgphoto2/translations.xml @@ -0,0 +1,20 @@ + + + + libgphoto2 + Sayısal kamera ve müzik çalarlara erişim sağlayan kütüphane + libgphoto2, harici uygulamalar tarafından sayısal kameralara ve müzik çalarlara erişim için kullanılan bir programlama kütüphanesidir. + Libgphoto2 est une librairie centrale conçue pour permettre aux programmes extérieurs d'accéder aux appareils photos numériques. + Libgphoto2 es la librería núcleo (core) que permite a programas externos acceder a camaras digitales. + + + + libgphoto2-docs + libgphoto2 için detaylı belgelendirme + + + + libgphoto2-devel + libgphoto2 için geliştirme dosyaları + + diff --git a/hardware/misc/libieee1284/actions.py b/hardware/misc/libieee1284/actions.py new file mode 100644 index 0000000000..0a75feedb2 --- /dev/null +++ b/hardware/misc/libieee1284/actions.py @@ -0,0 +1,23 @@ +#!/usr/bin/python +# -*- coding: utf-8 -*- +# +# Licensed under the GNU General Public License, version 3. +# See the file http://www.gnu.org/licenses/gpl.txt + +from pisi.actionsapi import autotools +from pisi.actionsapi import pisitools +from pisi.actionsapi import shelltools +from pisi.actionsapi import get + +def setup(): + autotools.autoreconf("-fi") + autotools.configure("--disable-static") + +def configure(): + autotools.make() + +def install(): + autotools.install() + + shelltools.system("chrpath --delete %s/usr/lib/python2.7/site-packages/ieee1284module.so" % get.installDIR()) + pisitools.dodoc("AUTHORS", "NEWS", "TODO", "README", "doc/interface*") diff --git a/hardware/misc/libieee1284/files/libieee1284-strict-aliasing.patch b/hardware/misc/libieee1284/files/libieee1284-strict-aliasing.patch new file mode 100644 index 0000000000..fda890a50b --- /dev/null +++ b/hardware/misc/libieee1284/files/libieee1284-strict-aliasing.patch @@ -0,0 +1,60 @@ +diff -up libieee1284-0.2.11/src/ieee1284module.c.strict-aliasing libieee1284-0.2.11/src/ieee1284module.c +--- libieee1284-0.2.11/src/ieee1284module.c.strict-aliasing 2004-02-03 11:50:57.000000000 +0000 ++++ libieee1284-0.2.11/src/ieee1284module.c 2010-06-23 12:36:05.093026807 +0100 +@@ -28,6 +28,17 @@ typedef struct { + struct parport *port; + } ParportObject; + ++static PyObject * ++Parport_new (PyTypeObject *type, PyObject *args, PyObject *kwds) ++{ ++ ParportObject *self; ++ self = (ParportObject *) type->tp_alloc (type, 0); ++ if (self != NULL) ++ self->port = NULL; ++ ++ return (PyObject *) self; ++} ++ + static int + Parport_init (ParportObject *self, PyObject *args, PyObject *kwds) + { +@@ -562,6 +573,23 @@ static PyTypeObject ParportType = { + 0, /* tp_as_buffer */ + Py_TPFLAGS_DEFAULT, /* tp_flags */ + "parallel port object", /* tp_doc */ ++ 0, /* tp_traverse */ ++ 0, /* tp_clear */ ++ 0, /* tp_richcompare */ ++ 0, /* tp_weaklistoffset */ ++ 0, /* tp_iter */ ++ 0, /* tp_iternext */ ++ Parport_methods, /* tp_methods */ ++ 0, /* tp_members */ ++ Parport_getseters, /* tp_getset */ ++ 0, /* tp_base */ ++ 0, /* tp_dict */ ++ 0, /* tp_descr_get */ ++ 0, /* tp_descr_set */ ++ 0, /* tp_dictoffset */ ++ (initproc)Parport_init, /* tp_init */ ++ 0, /* tp_alloc */ ++ Parport_new, /* tp_new */ + }; + + static PyObject * +@@ -625,14 +653,9 @@ initieee1284 (void) + PyObject *d = PyModule_GetDict (m); + PyObject *c; + +- ParportType.tp_new = PyType_GenericNew; +- ParportType.tp_init = (initproc) Parport_init; +- ParportType.tp_getset = Parport_getseters; +- ParportType.tp_methods = Parport_methods; + if (PyType_Ready (&ParportType) < 0) + return; + +- Py_INCREF (&ParportType); + PyModule_AddObject (m, "Parport", (PyObject *) &ParportType); + + pyieee1284_error = PyErr_NewException("ieee1284.error", NULL, NULL); diff --git a/hardware/misc/libieee1284/pspec.xml b/hardware/misc/libieee1284/pspec.xml new file mode 100644 index 0000000000..9126d09125 --- /dev/null +++ b/hardware/misc/libieee1284/pspec.xml @@ -0,0 +1,84 @@ + + + + + libieee1284 + http://cyberelk.net/tim/libieee1284/ + + PisiLinux Community + admins@pisilinux.org + + GPLv2 + library + Library to query devices using IEEE1284 + Library is intended to be used by applications that need to communicate with (or at least identify) devices that are attached via a parallel port. + mirrors://sourceforge/libieee1284/libieee1284-0.2.11.tar.bz2 + + libieee1284-strict-aliasing.patch + + + + + libieee1284 + + /usr/bin + /usr/lib + /usr/share/doc + /usr/share/man + + + + + python-libieee1284 + Python bindings for libieee1284 + + libieee1284 + + + /usr/lib/python* + + + + + libieee1284-devel + Development files for libieee1284 + + libieee1284 + + + /usr/include + /usr/share/man/man3 + + + + + + 2014-03-10 + 0.2.11 + Fix rpath + Varol Maksutoğlu + waroi@pisilinux.org + + + 2014-03-09 + 0.2.11 + Rebuild. + Kamil Atlı + suvarice@gmail.com + + + 2013-07-28 + 0.2.11 + Dep Fixed + PisiLinux Community + admins@pisilinux.org + + + 2010-10-13 + 0.2.11 + First release + Pisi Linux Admins + admins@pisilinux.org + + + diff --git a/hardware/misc/libieee1284/translations.xml b/hardware/misc/libieee1284/translations.xml new file mode 100644 index 0000000000..983fe76105 --- /dev/null +++ b/hardware/misc/libieee1284/translations.xml @@ -0,0 +1,20 @@ + + + + libieee1284 + IEEE1284 kullanarak donanımların sorgulanması için bir kütüphane + Paralel portlar aracılığı ile bağlanmış araçlarla iletişimi (en azından tanımlanmasını) gerçekleştiren uygulamalar için gerekli olan kütüphanedir. + Cette librairie est à destination des applications qui ont besoins de communiquer avec (ou au moins identifier) des périphériques liés au système par le port parallèle. + La librería usado por aplicaciones que necesitan comunicarse con (,o al menos necesitan identificar) dispositivos conectados al puerto paralelo. + + + + python-libieee1284 + libieee1284 için Python bağlayıcıları + + + + libieee1284-devel + libieee1284 için geliştirme dosyaları + + diff --git a/hardware/scannner/component.xml b/hardware/scannner/component.xml new file mode 100644 index 0000000000..55cacc7328 --- /dev/null +++ b/hardware/scannner/component.xml @@ -0,0 +1,3 @@ + + hardware.scanner + diff --git a/hardware/scannner/sane-backends/actions.py b/hardware/scannner/sane-backends/actions.py new file mode 100644 index 0000000000..4330f577c3 --- /dev/null +++ b/hardware/scannner/sane-backends/actions.py @@ -0,0 +1,50 @@ +#!/usr/bin/python +# -*- coding: utf-8 -*- +# +# Licensed under the GNU General Public License, version 3. +# See the file http://www.gnu.org/licenses/gpl.txt + +from pisi.actionsapi import autotools +from pisi.actionsapi import pisitools +from pisi.actionsapi import shelltools +from pisi.actionsapi import get + +def setup(): + # Those are in gentoo ebuild too, but what are they for? + # I couldn't find in docs, some comment would be helpful here -gurer + shelltools.export("SANEI_JPEG", "sanei_jpeg.o") + shelltools.export("SANEI_JPEG_LO", "sanei_jpeg.lo") + + autotools.autoreconf("-fi") + + autotools.configure("--enable-ipv6 \ + --enable-avahi \ + --enable-libusb \ + --disable-rpath \ + --disable-locking \ + --disable-latex \ + --with-docdir=/usr/share/doc/%s \ + --with-gphoto2" % get.srcNAME()) +def build(): + autotools.make() + +def install(): + autotools.rawInstall("DESTDIR=%s" % get.installDIR()) + + # Install udev rule + pisitools.insinto("/lib/udev/rules.d", "tools/udev/libsane.rules", "65-libsane.rules") + + # Add epson epkowa and brother2 backends also + shelltools.echo("%s/etc/sane.d/dll.conf" % get.installDIR(), + "# Epson 'epkowa' backend\n" + + "# See http://www.sane-project.org/cgi-bin/driver.pl?manu=Epson&bus=any for supported scanners\n" + + "# In order to use this backend, you have to install iscan package\nepkowa") + + shelltools.echo("%s/etc/sane.d/dll.conf" % get.installDIR(), + "\n# Brother backend\n" + + "# See http://en.pardus-wiki.org/Brother_scanner_support_for_DCP_and_MFC_models for installation\n" + + "brother\nbrother2\nbrother3") + + shelltools.echo("%s/etc/sane.d/dll.conf" % get.installDIR(), "\n# Added for Xerox Phaser 3100 MFP\nXeroxPhaser3100\n") + + diff --git a/hardware/scannner/sane-backends/files/30sane b/hardware/scannner/sane-backends/files/30sane new file mode 100644 index 0000000000..6711d3c783 --- /dev/null +++ b/hardware/scannner/sane-backends/files/30sane @@ -0,0 +1 @@ +SANE_CONFIG_DIR=/etc/sane.d diff --git a/hardware/scannner/sane-backends/files/archlinux/network.patch b/hardware/scannner/sane-backends/files/archlinux/network.patch new file mode 100644 index 0000000000..2605ea8357 --- /dev/null +++ b/hardware/scannner/sane-backends/files/archlinux/network.patch @@ -0,0 +1,42 @@ +diff --git a/sanei/sanei_tcp.c b/sanei/sanei_tcp.c +index a57d7c7..d0a1e92 100644 +--- a/sanei/sanei_tcp.c ++++ b/sanei/sanei_tcp.c +@@ -45,6 +45,7 @@ + #include + #include + #include ++#include + + #ifdef HAVE_WINSOCK2_H + #include +@@ -123,14 +124,27 @@ sanei_tcp_write(int fd, const u_char * buf, int count) + ssize_t + sanei_tcp_read(int fd, u_char * buf, int count) + { +- ssize_t bytes_recv = 0, rc = 1; ++ ssize_t bytes_recv = 0, rc = 1; ++ int retry = 5; + + while (bytes_recv < count && rc > 0) + { + rc = recv(fd, buf+bytes_recv, count-bytes_recv, 0); ++ DBG(1, "%s: bytes received %d\n", __FUNCTION__, rc); + if (rc > 0) + bytes_recv += rc; +- ++ else { ++ if ( errno == EAGAIN && retry-- ) { ++ DBG(1, "%s: waiting %d\n", __FUNCTION__, retry); ++ /* wait for max 1s */ ++ struct timespec req; ++ struct timespec rem; ++ req.tv_sec = 0; ++ req.tv_nsec= 100000000; ++ nanosleep(&req, &rem); ++ rc = 1; ++ } ++ } + } + return bytes_recv; + } diff --git a/hardware/scannner/sane-backends/files/archlinux/segfault-avahi-fix-kodakio.patch b/hardware/scannner/sane-backends/files/archlinux/segfault-avahi-fix-kodakio.patch new file mode 100644 index 0000000000..23f9d1ca9e --- /dev/null +++ b/hardware/scannner/sane-backends/files/archlinux/segfault-avahi-fix-kodakio.patch @@ -0,0 +1,98 @@ +From 37523b867d411c2f82d08128246be7e38bc9812c Mon Sep 17 00:00:00 2001 +From: Paul Newall +Date: Mon, 14 Oct 2013 22:22:53 +0100 +Subject: [PATCH] Bugfix in kodakaio.c to fix segfault when non kodak scanners + return unexpected data via avahi auto discovery + +--- + backend/kodakaio.c | 43 ++++++++++++++++++++++++++++++---------- + doc/descriptions/kodakaio.desc | 2 +- + 3 files changed, 37 insertions(+), 12 deletions(-) + +diff --git a/backend/kodakaio.c b/backend/kodakaio.c +index 8c4583a..b442e50 100644 +--- a/backend/kodakaio.c ++++ b/backend/kodakaio.c +@@ -127,7 +127,7 @@ for ubuntu 12.10 + + #define KODAKAIO_VERSION 02 + #define KODAKAIO_REVISION 4 +-#define KODAKAIO_BUILD 6 ++#define KODAKAIO_BUILD 7 + + /* for usb (but also used for net though it's not required). */ + #define MAX_BLOCK_SIZE 32768 +@@ -2184,6 +2184,7 @@ static void resolve_callback( + AvahiLookupResultFlags flags, + AVAHI_GCC_UNUSED void* userdata) { + ++ AvahiStringList *vid_pair_list = NULL, *pid_pair_list = NULL; + char *pidkey, *pidvalue; + char *vidkey, *vidvalue; + size_t valuesize; +@@ -2204,20 +2205,40 @@ static void resolve_callback( + avahi_address_snprint(a, sizeof(a), address); + + /* Output short for Kodak ESP */ +- DBG(min(10,DBG_AUTO), "%s:%u %s ", a,port,host_name); +- avahi_string_list_get_pair(avahi_string_list_find(txt, "vid"), +- &vidkey, &vidvalue, &valuesize); +- DBG(min(10,DBG_AUTO), "%s=%s ", vidkey, vidvalue); +- avahi_string_list_get_pair(avahi_string_list_find(txt, "pid"), +- &pidkey, &pidvalue, &valuesize); +- DBG(min(10,DBG_AUTO), "%s=%s\n", pidkey, pidvalue); ++ DBG(min(10,DBG_AUTO), "%s:%u %s\n", a,port,host_name); + ++ vid_pair_list = avahi_string_list_find(txt, "vid"); ++ if(vid_pair_list != NULL) { ++ avahi_string_list_get_pair(vid_pair_list, &vidkey, &vidvalue, &valuesize); ++ DBG(min(10,DBG_AUTO), "%s=%s ", vidkey, vidvalue); ++ } ++ else DBG(min(10,DBG_AUTO), "failed to find key vid\n"); ++ ++ pid_pair_list = avahi_string_list_find(txt, "pid"); ++ if(pid_pair_list != NULL) { ++ avahi_string_list_get_pair(pid_pair_list, &pidkey, &pidvalue, &valuesize); ++ DBG(min(10,DBG_AUTO), "%s=%s\n", pidkey, pidvalue); ++ } ++ else DBG(min(10,DBG_AUTO), "failed to find key pid\n"); ++ ++ if(pid_pair_list != NULL && vid_pair_list != NULL) { + ProcessAvahiDevice(name, vidvalue, pidvalue, a); +- avahi_free(vidkey); avahi_free(vidvalue); +- avahi_free(pidkey); avahi_free(pidvalue); ++ } ++ else DBG(min(10,DBG_AUTO), "didn't call ProcessAvahiDevice\n"); ++ ++ if(vid_pair_list != NULL) { ++ avahi_free(vidkey); ++ avahi_free(vidvalue); ++ DBG(min(15,DBG_AUTO), "vidkey and vidvalue freed\n"); ++ } ++ if(pid_pair_list != NULL) { ++ avahi_free(pidkey); ++ avahi_free(pidvalue); ++ DBG(min(15,DBG_AUTO), "pidkey and pidvalue freed\n"); ++ } + } + } +- ++ DBG(min(10,DBG_AUTO), "ending resolve_callback\n"); + avahi_service_resolver_free(r); + } + +diff --git a/doc/descriptions/kodakaio.desc b/doc/descriptions/kodakaio.desc +index 7882513..5fb18ed 100644 +--- a/doc/descriptions/kodakaio.desc ++++ b/doc/descriptions/kodakaio.desc +@@ -1,6 +1,6 @@ + :backend "kodakaio" + :url "http://sourceforge.net/projects/cupsdriverkodak/" +-:version "2.4.6" ++:version "2.4.7" + :manpage "sane-kodakaio" + :comment "Backend for Kodak AiO ESP and Hero printers. Also possibly Advent AWL10" + :devicetype :scanner +-- +1.7.10.4 + diff --git a/hardware/scannner/sane-backends/files/fix-buffer-overflow.patch b/hardware/scannner/sane-backends/files/fix-buffer-overflow.patch new file mode 100644 index 0000000000..6820c6a1b2 --- /dev/null +++ b/hardware/scannner/sane-backends/files/fix-buffer-overflow.patch @@ -0,0 +1,24 @@ +--- backend/niash.c.orig 2006-02-04 12:34:28.000000000 +0100 ++++ backend/niash.c 2007-02-21 15:38:12.000000000 +0100 +@@ -89,7 +89,9 @@ typedef enum + optLamp, + + optCalibrate, +- optGamma /* analog gamma = single number */ ++ optGamma, /* analog gamma = single number */ ++/* have optEndOfList only to define arrays with sufficient size */ ++ optEndOfList + } EOptionIndex; + + +@@ -105,8 +107,8 @@ typedef union + + typedef struct + { +- SANE_Option_Descriptor aOptions[optLast]; +- TOptionValue aValues[optLast]; ++ SANE_Option_Descriptor aOptions[optEndOfList]; ++ TOptionValue aValues[optEndOfList]; + + TScanParams ScanParams; + THWParams HWParams; diff --git a/hardware/scannner/sane-backends/files/sane-backends-1.0.20-open-macro.patch b/hardware/scannner/sane-backends/files/sane-backends-1.0.20-open-macro.patch new file mode 100644 index 0000000000..197c042806 --- /dev/null +++ b/hardware/scannner/sane-backends/files/sane-backends-1.0.20-open-macro.patch @@ -0,0 +1,66 @@ +commit 7987b0332e6b660ac7992176daeede40cab98390 +Author: Nils Philippsen +Date: Tue Jun 16 17:02:49 2009 +0200 + + patch: open-macro + + Squashed commit of the following: + + commit ab8fe801c4f82017988cb44cb79d82d286aa0de4 + Author: Nils Philippsen + Date: Tue Jun 9 17:57:45 2009 +0200 + + don't inadvertently use glibc open() macro + +diff --git a/backend/mustek_pp.c b/backend/mustek_pp.c +index 8c3f06a..7e9d094 100644 +--- a/backend/mustek_pp.c ++++ b/backend/mustek_pp.c +@@ -1152,7 +1152,7 @@ sane_open (SANE_String_Const devicename, SANE_Handle * handle) + + } + +- if ((status = dev->func->open (dev->port, dev->caps, &fd)) != SANE_STATUS_GOOD) { ++ if ((status = (dev->func->open) (dev->port, dev->caps, &fd)) != SANE_STATUS_GOOD) { + + DBG (1, "sane_open: could not open device (%s)\n", + sane_strstatus (status)); +diff --git a/backend/pixma_common.c b/backend/pixma_common.c +index 2bcb3c1..c5e1e96 100644 +--- a/backend/pixma_common.c ++++ b/backend/pixma_common.c +@@ -511,7 +511,7 @@ pixma_open (unsigned devnr, pixma_t ** handle) + strncpy (s->id, pixma_get_device_id (devnr), sizeof (s->id) - 1); + s->ops = s->cfg->ops; + s->scanning = 0; +- error = s->ops->open (s); ++ error = (s->ops->open) (s); + if (error < 0) + goto rollback; + error = pixma_deactivate (s->io); +diff --git a/backend/plustek_pp.c b/backend/plustek_pp.c +index 13d1443..629e238 100644 +--- a/backend/plustek_pp.c ++++ b/backend/plustek_pp.c +@@ -258,7 +258,7 @@ static int drvopen( Plustek_Device *dev ) + + DBG( _DBG_INFO, "drvopen()\n" ); + +- handle = dev->open((const char*)dev->name, (void *)dev ); ++ handle = (dev->open)((const char*)dev->name, (void *)dev ); + + tsecs = 0; + +diff --git a/sanei/sanei_scsi.c b/sanei/sanei_scsi.c +index 69d5859..a594aba 100644 +--- a/sanei/sanei_scsi.c ++++ b/sanei/sanei_scsi.c +@@ -5328,7 +5328,7 @@ sanei_scsi_find_devices (const char *findvendor, const char *findmodel, + (*plugInInterface)->Release (plugInInterface); + IOObjectRelease (scsiDevice); + +- ioReturnValue = (*scsiDeviceInterface)->open (scsiDeviceInterface); ++ ioReturnValue = ((*scsiDeviceInterface)->open) (scsiDeviceInterface); + if (ioReturnValue != kIOReturnSuccess) + { + DBG (5, "Error opening SCSI interface (0x%08x)\n", ioReturnValue); diff --git a/hardware/scannner/sane-backends/files/sane-backends-1.0.21-epson-expression800.patch b/hardware/scannner/sane-backends/files/sane-backends-1.0.21-epson-expression800.patch new file mode 100644 index 0000000000..8a6fb5da31 --- /dev/null +++ b/hardware/scannner/sane-backends/files/sane-backends-1.0.21-epson-expression800.patch @@ -0,0 +1,47 @@ +From 305535e303032814b65bf6d889a95f00f08a9071 Mon Sep 17 00:00:00 2001 +From: Nils Philippsen +Date: Wed, 5 May 2010 12:49:02 +0200 +Subject: [PATCH] patch: epson-expression800 + +Squashed commit of the following: + +commit 3b501d7499357438a1fbd63fefb2f977ae3051f5 +Author: Nils Philippsen +Date: Wed May 5 12:14:23 2010 +0200 + + Improve Epson Expression 800 + + Epson Expression 800 models announce themselves as "processor", not + "scanner". +--- + doc/descriptions/epson.desc | 1 + + doc/descriptions/epson2.desc | 1 + + 2 files changed, 2 insertions(+), 0 deletions(-) + +diff --git a/doc/descriptions/epson.desc b/doc/descriptions/epson.desc +index a22325c..55a0136 100644 +--- a/doc/descriptions/epson.desc ++++ b/doc/descriptions/epson.desc +@@ -174,6 +174,7 @@ + :model "Expression 800" + :interface "SCSI" + :status :complete ++:scsi "EPSON" "Expression800" "processor" + + :model "Expression 1600" + :interface "SCSI USB IEEE-1394" +diff --git a/doc/descriptions/epson2.desc b/doc/descriptions/epson2.desc +index 9a14f4f..56cabcd 100644 +--- a/doc/descriptions/epson2.desc ++++ b/doc/descriptions/epson2.desc +@@ -241,6 +241,7 @@ + :model "Expression 800" ; command spec + :interface "SCSI" + :status :complete ++:scsi "EPSON" "Expression800" "processor" + :comment "overseas version of the GT-9600" + + :model "Expression 836XL" ; command spec +-- +1.6.6.1 + diff --git a/hardware/scannner/sane-backends/files/sane-backends-1.0.23-sane-config-multilib.patch b/hardware/scannner/sane-backends/files/sane-backends-1.0.23-sane-config-multilib.patch new file mode 100644 index 0000000000..2f28835e65 --- /dev/null +++ b/hardware/scannner/sane-backends/files/sane-backends-1.0.23-sane-config-multilib.patch @@ -0,0 +1,36 @@ +From d0c61e7e9b13185f424dff1f4ac697ec53089d69 Mon Sep 17 00:00:00 2001 +From: Nils Philippsen +Date: Tue, 4 Sep 2012 16:45:14 +0200 +Subject: [PATCH] patch: sane-config-multilib + +Squashed commit of the following: + +commit 81aa4f41bf102b08258c8e1de1c0476835329ec5 +Author: Nils Philippsen +Date: Tue Sep 4 16:43:34 2012 +0200 + + make installed sane-config multi-lib aware again + + This partially reverts commit 77c4ea1a7aa680fb1c3ee4daa1404f21439b2c9b. +--- + tools/sane-config.in | 4 ---- + 1 file changed, 4 deletions(-) + +diff --git a/tools/sane-config.in b/tools/sane-config.in +index 8e4b52a..1fae2e5 100644 +--- a/tools/sane-config.in ++++ b/tools/sane-config.in +@@ -10,10 +10,6 @@ scriptname="sane-config" + prefix="@prefix@" + exec_prefix="@exec_prefix@" + +-# using our installed *.pc only - neither default nor user paths +-export PKG_CONFIG_LIBDIR="@libdir@/pkgconfig" +-export PKG_CONFIG_PATH="" +- + pkgconfig_package=sane-backends + + usage () +-- +1.7.11.4 + diff --git a/hardware/scannner/sane-backends/files/sane-backends-1.0.23-soname.patch b/hardware/scannner/sane-backends/files/sane-backends-1.0.23-soname.patch new file mode 100644 index 0000000000..04ad829608 --- /dev/null +++ b/hardware/scannner/sane-backends/files/sane-backends-1.0.23-soname.patch @@ -0,0 +1,49 @@ +From 031cd8dd376ed6537afd06ca5aec5e67f5da0489 Mon Sep 17 00:00:00 2001 +From: Nils Philippsen +Date: Fri, 31 Aug 2012 16:14:49 +0200 +Subject: [PATCH] patch: soname + +Squashed commit of the following: + +commit 2035ced803168210a70c4946814440764e5d0186 +Author: Nils Philippsen +Date: Fri Aug 31 16:13:51 2012 +0200 + + don't use the same SONAME for backend libs and main lib +--- + ltmain.sh | 19 ------------------- + 1 file changed, 19 deletions(-) + +diff --git a/ltmain.sh b/ltmain.sh +index f3eb4c8..17d1508 100755 +--- a/ltmain.sh ++++ b/ltmain.sh +@@ -8101,25 +8101,6 @@ EOF + dlname=$soname + fi + +- # Local change for sane-backends: internal name for every lib +- # is "libsane" not "libsane-backendname". So linking to each +- # backend is possible. Also the following test was moved to this +- # location. +- # If -module or -export-dynamic was specified, set the dlname +- if test "$module" = yes || test "$export_dynamic" = yes; then +- # On all known operating systems, these are identical. +- dlname="$soname" +- fi +- case $host in +- *mingw*) +- ;; +- *aix*) +- ;; +- *) +- soname=`echo $soname | sed -e "s/libsane-[A-Za-z_0-9]*/libsane/g"` +- esac +- # End of local change +- + lib="$output_objdir/$realname" + linknames= + for link +-- +1.7.11.4 + diff --git a/hardware/scannner/sane-backends/files/sane-backends-1.0.23-udev.patch b/hardware/scannner/sane-backends/files/sane-backends-1.0.23-udev.patch new file mode 100644 index 0000000000..f7529984ad --- /dev/null +++ b/hardware/scannner/sane-backends/files/sane-backends-1.0.23-udev.patch @@ -0,0 +1,64 @@ +From c7f5126447ed5335a54d9333ac37f35c2189fbf4 Mon Sep 17 00:00:00 2001 +From: Nils Philippsen +Date: Mon, 10 Sep 2012 12:25:33 +0200 +Subject: [PATCH] patch: udev + +Squashed commit of the following: + +commit 3d19b3eaf91fa8c3c2a78956f570d3e0f4c3f342 +Author: Nils Philippsen +Date: Mon Sep 10 12:25:16 2012 +0200 + + adapt generated udev rules for Fedora + +commit 7017c3ad1dadc27edd2c47ceec04f8648c839d53 +Author: Nils Philippsen +Date: Mon Sep 10 12:20:43 2012 +0200 + + use group and mode macros consistently +--- + tools/sane-desc.c | 13 ++++++------- + 1 file changed, 6 insertions(+), 7 deletions(-) + +diff --git a/tools/sane-desc.c b/tools/sane-desc.c +index 7bbd012..5c5bbe9 100644 +--- a/tools/sane-desc.c ++++ b/tools/sane-desc.c +@@ -56,9 +56,9 @@ + #define COLOR_NEW "\"#F00000\"" + #define COLOR_UNKNOWN "\"#000000\"" + +-#define DEVMODE "0664" ++#define DEVMODE "0644" + #define DEVOWNER "root" +-#define DEVGROUP "scanner" ++#define DEVGROUP "root" + + #ifndef PATH_MAX + # define PATH_MAX 1024 +@@ -3543,7 +3543,8 @@ print_udev (void) + } + + printf("\n# The following rule will disable USB autosuspend for the device\n"); +- printf("ENV{libsane_matched}==\"yes\", RUN+=\"/bin/sh -c 'if test -e /sys/$env{DEVPATH}/power/control; then echo on > /sys/$env{DEVPATH}/power/control; elif test -e /sys/$env{DEVPATH}/power/level; then echo on > /sys/$env{DEVPATH}/power/level; fi'\"\n"); ++ printf("ENV{libsane_matched}==\"yes\", TEST==\"power/control\", ATTR{power/control}=\"on\"\n"); ++ printf("ENV{libsane_matched}==\"yes\", TEST!=\"power/control\", TEST==\"power/level\", ATTR{power/level}=\"on\"\n"); + + printf ("\nLABEL=\"libsane_usb_rules_end\"\n\n"); + +@@ -3619,10 +3620,8 @@ print_udev (void) + } + printf ("LABEL=\"libsane_scsi_rules_end\"\n"); + +- if (mode == output_mode_udevacl) +- printf("\nENV{libsane_matched}==\"yes\", RUN+=\"/bin/setfacl -m g:%s:rw $env{DEVNAME}\"\n", DEVGROUP); +- else +- printf ("\nENV{libsane_matched}==\"yes\", MODE=\"664\", GROUP=\"scanner\"\n"); ++ if (mode != output_mode_udevacl) ++ printf ("\nENV{libsane_matched}==\"yes\", MODE=\"%s\", GROUP=\"%s\"\n", DEVMODE, DEVGROUP); + + printf ("\nLABEL=\"libsane_rules_end\"\n"); + } +-- +1.7.11.4 + diff --git a/hardware/scannner/sane-backends/files/sane.png b/hardware/scannner/sane-backends/files/sane.png new file mode 100644 index 0000000000..64c78e855f Binary files /dev/null and b/hardware/scannner/sane-backends/files/sane.png differ diff --git a/hardware/scannner/sane-backends/files/suse/fix-mustek_pp_ccd300.c.patch b/hardware/scannner/sane-backends/files/suse/fix-mustek_pp_ccd300.c.patch new file mode 100644 index 0000000000..388d525070 --- /dev/null +++ b/hardware/scannner/sane-backends/files/suse/fix-mustek_pp_ccd300.c.patch @@ -0,0 +1,33 @@ +--- a/backend/mustek_pp_ccd300.c.orig 2003-12-01 12:52:19.000000000 +0100 ++++ b/backend/mustek_pp_ccd300.c 2009-07-29 16:29:54.000000000 +0200 +@@ -940,10 +940,10 @@ get_color_line_101x (Mustek_pp_Handle * + wait_bank_change (dev, priv->bank_count, 1); + reset_bank_count (dev); + if (priv->ccd_line >= (priv->line_step >> SANE_FIXED_SCALE_SHIFT)) +- priv->redline = ++priv->redline % priv->green_offs; ++ priv->redline = (priv->redline + 1) % priv->green_offs; + if (priv->ccd_line >= + priv->blue_offs + (priv->line_step >> SANE_FIXED_SCALE_SHIFT)) +- priv->blueline = ++priv->blueline % priv->blue_offs; ++ priv->blueline = (priv->blueline + 1) % priv->blue_offs; + continue; + } + +@@ -979,7 +979,7 @@ get_color_line_101x (Mustek_pp_Handle * + + } + +- priv->redline = ++priv->redline % priv->green_offs; ++ priv->redline = (priv->redline + 1) % priv->green_offs; + + if (priv->ccd_line >= priv->green_offs && gogreen) + { +@@ -1013,7 +1013,7 @@ get_color_line_101x (Mustek_pp_Handle * + + if (priv->ccd_line >= + priv->blue_offs + (priv->line_step >> SANE_FIXED_SCALE_SHIFT)) +- priv->blueline = ++priv->blueline % priv->blue_offs; ++ priv->blueline = (priv->blueline + 1) % priv->blue_offs; + + if (gogreen) + { diff --git a/hardware/scannner/sane-backends/pspec.xml b/hardware/scannner/sane-backends/pspec.xml new file mode 100644 index 0000000000..17bae71d23 --- /dev/null +++ b/hardware/scannner/sane-backends/pspec.xml @@ -0,0 +1,129 @@ + + + + + sane-backends + http://www.sane-project.org + + PisiLinux Community + admins@pisilinux.org + + GPLv2 + sane + app:console + library + Scanner access software + Scanner Access Now Easy (SANE) is a universal scanner interface. The SANE application programming interface provides standardized access to any raster image scanner hardware. + ftp://ftp.archlinux.org/other/sane/sane-backends-1.0.24.tar.gz + + libieee1284-devel + libgphoto2-devel + libv4l-devel + avahi-devel + libjpeg-turbo-devel + tiff-devel + net-snmp-devel + + + + fix-buffer-overflow.patch + sane-backends-1.0.20-open-macro.patch + sane-backends-1.0.23-sane-config-multilib.patch + sane-backends-1.0.23-soname.patch + sane-backends-1.0.21-epson-expression800.patch + sane-backends-1.0.23-udev.patch + + + suse/fix-mustek_pp_ccd300.c.patch + + archlinux/network.patch + archlinux/segfault-avahi-fix-kodakio.patch + + + + + sane-backends + + libieee1284 + avahi-libs + libgphoto2 + libv4l + tiff + libjpeg-turbo + net-snmp + cups + libexif + + + /etc/sane.d/dll.d + /etc/env.d + /etc/sane.d + /usr/bin + /usr/share/locale + /usr/sbin + /usr/libexec + /usr/lib + /usr/share/doc/sane-backends/README + /usr/share/doc/sane-backends/COPYING + /usr/share/man + /usr/share/pixmaps + /lib/udev/rules.d + /usr/share/sane + + + sane.png + 30sane + + + + + sane-backends-devel + Development files for sane-backends + + sane-backends + + + /usr/include + /usr/lib/pkgconfig + + + + + sane-backends-docs + Documentation for SANE backends + + /usr/share/doc + + + + + + 2014-02-15 + 1.0.24 + Version bump. + Yusuf Aydemir + yusuf.aydemir@pisilinux.org + + + 2013-12-21 + 1.0.23 + Move devel files fix to paths + Burak Fazıl Ertürk + burakerturk@pisilinux.org + + + 2013-07-28 + 1.0.23 + Dep Fixed + PisiLinux Community + admins@pisilinux.org + + + 2012-10-25 + 1.0.23 + First release + Yusuf Aydemir + yusuf.aydemir@pisilinux.org + + + diff --git a/hardware/scannner/sane-backends/translations.xml b/hardware/scannner/sane-backends/translations.xml new file mode 100644 index 0000000000..bad8de904f --- /dev/null +++ b/hardware/scannner/sane-backends/translations.xml @@ -0,0 +1,18 @@ + + + + sane-backends + SANE (Scanner Access Now Easy) döküman ve resim tarayıcı sistemi araçları + SANE ve uygulama programlama arayüzü (API) ile herhangi bir görüntü tarayıcı donanımına standartlaştırlmış erişim sağlar. + + + + sane-backends-devel + sane-backends için geliştirme dosyaları + + + + sane-backends-docs + sane-backends için belgelendirme dosyaları + + diff --git a/multimedia/misc/gd/actions.py b/multimedia/misc/gd/actions.py new file mode 100644 index 0000000000..941499b607 --- /dev/null +++ b/multimedia/misc/gd/actions.py @@ -0,0 +1,29 @@ +#!/usr/bin/python +# -*- coding: utf-8 -*- +# +# Licensed under the GNU General Public License, version 3. +# See the file http://www.gnu.org/licenses/gpl.txt + +from pisi.actionsapi import autotools +from pisi.actionsapi import pisitools +from pisi.actionsapi import shelltools +from pisi.actionsapi import get + +def setup(): + shelltools.system("./bootstrap.sh") + + autotools.configure("--disable-static \ + --with-fontconfig \ + --with-png \ + --with-freetype \ + --with-jpeg \ + --without-xpm") + +def build(): + autotools.make() + +def install(): + autotools.rawInstall("DESTDIR=%s" % get.installDIR()) + + pisitools.dohtml(".") + pisitools.dodoc("COPYING", "NEWS", "ChangeLog") diff --git a/multimedia/misc/gd/files/gd-2.1.1-libvpx-1.4.0.patch b/multimedia/misc/gd/files/gd-2.1.1-libvpx-1.4.0.patch new file mode 100644 index 0000000000..c698972539 --- /dev/null +++ b/multimedia/misc/gd/files/gd-2.1.1-libvpx-1.4.0.patch @@ -0,0 +1,37 @@ +From d41eb72cd4545c394578332e5c102dee69e02ee8 Mon Sep 17 00:00:00 2001 +From: Remi Collet +Date: Tue, 7 Apr 2015 13:11:03 +0200 +Subject: [PATCH] Fix build with latest libvpx 1.4.0 + +These new constants exist at least since 1.0.0 +Compatibility ones have been droped in 1.4.0 +--- + src/webpimg.c | 14 +++++++------- + 1 file changed, 7 insertions(+), 7 deletions(-) + +diff --git a/src/webpimg.c b/src/webpimg.c +index cf73d64..e49fcc6 100644 +--- a/src/webpimg.c ++++ b/src/webpimg.c +@@ -711,14 +711,14 @@ static WebPResult VPXEncode(const uint8* Y, + codec_ctl(&enc, VP8E_SET_STATIC_THRESHOLD, 0); + codec_ctl(&enc, VP8E_SET_TOKEN_PARTITIONS, 2); + +- vpx_img_wrap(&img, IMG_FMT_I420, ++ vpx_img_wrap(&img, VPX_IMG_FMT_I420, + y_width, y_height, 16, (uint8*)(Y)); +- img.planes[PLANE_Y] = (uint8*)(Y); +- img.planes[PLANE_U] = (uint8*)(U); +- img.planes[PLANE_V] = (uint8*)(V); +- img.stride[PLANE_Y] = y_stride; +- img.stride[PLANE_U] = uv_stride; +- img.stride[PLANE_V] = uv_stride; ++ img.planes[VPX_PLANE_Y] = (uint8*)(Y); ++ img.planes[VPX_PLANE_U] = (uint8*)(U); ++ img.planes[VPX_PLANE_V] = (uint8*)(V); ++ img.stride[VPX_PLANE_Y] = y_stride; ++ img.stride[VPX_PLANE_U] = uv_stride; ++ img.stride[VPX_PLANE_V] = uv_stride; + + res = vpx_codec_encode(&enc, &img, 0, 1, 0, VPX_DL_BEST_QUALITY); + diff --git a/multimedia/misc/gd/pspec.xml b/multimedia/misc/gd/pspec.xml new file mode 100644 index 0000000000..6ed32a2298 --- /dev/null +++ b/multimedia/misc/gd/pspec.xml @@ -0,0 +1,99 @@ + + + + + gd + http://www.libgd.org + + PisiLinux Community + admins@pisilinux.org + + as-is + BSD + library + A fast library for creating graphic images + The gd graphics library allows your code to quickly draw images complete with lines, arcs, text, multiple colors, cut and paste from other images, and flood fills, and to write out the result as a PNG or JPEG file. This is particularly useful in Web applications, where PNG and JPEG are two of the formats accepted for inline images by most browsers. Note that gd is not a paint program. + https://github.com/libgd/libgd/archive/gd-2.1.1.tar.gz + fontconfig-devel + zlib-devel + freetype-devel + libpng-devel + libjpeg-turbo-devel + tiff-devel + libvpx-devel + + + gd-2.1.1-libvpx-1.4.0.patch + + + + + gd + + fontconfig + tiff + libvpx + libjpeg-turbo + zlib + freetype + libpng + + + /usr/bin + /usr/lib + /usr/share/doc/gd + + + + + gd-devel + Development files for gd + + gd + + + /usr/include + /usr/lib/pkgconfig + /usr/bin/gdlib-config + + + + + gd-docs + Documents for gd + + /usr/share/doc/gd/html + + + + + + 2014-08-02 + 2.1.1 + Version bump. + Ertuğrul Erata + ertugrulerata@gmail.com + + + 2014-05-24 + 2.1.0 + Version bump. + Alihan Öztürk + alihan@pisilinux.org + + + 2014-01-25 + 2.0.35 + Rebuild + Stefan Gronewold(groni) + groni@pisilinux.org + + + 2010-10-12 + 2.0.35 + First release + Pisi Linux Admins + admins@pisilinux.org + + + diff --git a/multimedia/misc/gd/translations.xml b/multimedia/misc/gd/translations.xml new file mode 100644 index 0000000000..8ac9b73cc8 --- /dev/null +++ b/multimedia/misc/gd/translations.xml @@ -0,0 +1,18 @@ + + + + gd + Hızlı bir şekilde resim oluşturmak için bir kütüphane + Une librairie rapide pour créer des graphiques en images. + + + + gd-devel + gd için geliştirme dosyaları + + + + gd-docs + gd için geliştirme belgeleri + +