[Buildroot] [PATCH 1/1] libgphoto2: Add libgphoto2 package
Romain Naour
romain.naour at gmail.com
Wed Mar 8 20:10:59 UTC 2017
Hi Kevin,
Thanks for this contribution.
I recently sent a patch adding libgphoto2 for Darktable [1].
There are small differences with your patch (mostly package dependencies), can
you comment on it ?
Thanks!
[1] http://patchwork.ozlabs.org/patch/735448/
Le 08/03/2017 à 14:38, Kevin JOLY a écrit :
> Add support for libgphoto2 core library designed to allow access to digital camera.
>
> Signed-off-by: Kevin JOLY <kevin.joly at sensefly.com>
> ---
We recommend to add yourself as package maintainer in DEVELOPERS file, see:
http://nightly.buildroot.org/manual.html#DEVELOPERS
> package/Config.in | 1 +
> package/libgphoto2/Config.in | 10 ++++++++++
> package/libgphoto2/libgphoto2.hash | 3 +++
> package/libgphoto2/libgphoto2.mk | 14 ++++++++++++++
> 4 files changed, 28 insertions(+)
> create mode 100644 package/libgphoto2/Config.in
> create mode 100644 package/libgphoto2/libgphoto2.hash
> create mode 100644 package/libgphoto2/libgphoto2.mk
>
> diff --git a/package/Config.in b/package/Config.in
> index 9eb6a22..69430c3 100644
> --- a/package/Config.in
> +++ b/package/Config.in
> @@ -1073,6 +1073,7 @@ menu "Hardware handling"
> source "package/libfreefare/Config.in"
> source "package/libftdi/Config.in"
> source "package/libftdi1/Config.in"
> + source "package/libgphoto2/Config.in"
> source "package/libgpiod/Config.in"
> source "package/libgudev/Config.in"
> source "package/libhid/Config.in"
> diff --git a/package/libgphoto2/Config.in b/package/libgphoto2/Config.in
> new file mode 100644
> index 0000000..ba1d535
> --- /dev/null
> +++ b/package/libgphoto2/Config.in
> @@ -0,0 +1,10 @@
> +config BR2_PACKAGE_LIBGPHOTO2
> + select BR2_PACKAGE_LIBTOOL
> + select BR2_PACKAGE_LIBUSB
> + select BR2_PACKAGE_LIBUSB_COMPAT
> + select BR2_PACKAGE_LIBXML2
I added gd, jpeg, libexif and lockev package as mandatory dependencies, They may
be optional... can you check ?
You can compare with archlinux packaging for exemple:
depends=(libexif libjpeg gd libltdl libusb libxml2)
https://git.archlinux.org/svntogit/packages.git/tree/trunk/PKGBUILD?h=packages/libgphoto2
> + bool "libgphoto2"
> + help
> + libgphoto2 is the core library designed to allow access to digital camera by external programs.
The help text should be wrapped within 72 characters (8 characters for one tab)
> +
> + http://gphoto.org/
> diff --git a/package/libgphoto2/libgphoto2.hash b/package/libgphoto2/libgphoto2.hash
> new file mode 100644
> index 0000000..25de0bf
> --- /dev/null
> +++ b/package/libgphoto2/libgphoto2.hash
> @@ -0,0 +1,3 @@
> +# Hashes from: https://sourceforge.net/projects/gphoto/files/libgphoto/2.5.12/
> +sha1 4e1208a8a66d679b8b619b05915dbb0e684c5518 libgphoto2-2.5.12.tar.gz
> +md5 b3b5d36e583fc96eed0594dc414d70c9 libgphoto2-2.5.12.tar.gz
I used tar.bz2 archive here since the archive is smaller and used the
corresponding hashes.
I added a stronger hash calculated locally
sha256 b9bb28990fde45ac385e4851a07dbad2e1250404b535b0a3a3b898bb431e4e2e
libgphoto2-2.5.12.tar.bz2
> diff --git a/package/libgphoto2/libgphoto2.mk b/package/libgphoto2/libgphoto2.mk
> new file mode 100644
> index 0000000..fc5be1b
> --- /dev/null
> +++ b/package/libgphoto2/libgphoto2.mk
> @@ -0,0 +1,14 @@
> +################################################################################
> +#
> +# libgphoto2
> +#
> +################################################################################
> +
> +LIBGPHOTO2_VERSION = 2.5.12
> +LIBGPHOTO2_SOURCE = libgphoto2-$(LIBGPHOTO2_VERSION).tar.gz
The tar.bz2 archive should be used here.
> +LIBGPHOTO2_SITE = https://sourceforge.net/projects/gphoto/files/libgphoto/$(LIBGPHOTO2_VERSION)
Missing license information:
It's seems to be LGPLv2+ but...
* \par License
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* \par
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* \par
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the
* Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
* Boston, MA 02110-1301 USA
... Fedora tagged this package as GPLV2+ and GPLv2... it seems there is a
licensing issue...
# GPLV2+ for the main lib (due to exif.c) and most plugins, some plugins GPLv2
http://pkgs.fedoraproject.org/cgit/rpms/libgphoto2.git/tree/libgphoto2.spec
exif.c:
\par License
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
\par
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
\par
You should have received a copy of the GNU General Public License
along with this program; if not, write to the
Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02110-1301 USA
> +LIBGPHOTO2_INSTALL_STAGING = YES
Ok
> +LIBGPHOTO2_INSTALL_TARGET = YES
Not needed, this is the default behavior.
> +LIBGPHOTO2_DEPENDENCIES = libxml2 libusb libusb-compat libtool host-pkgconf
Ok but maybe gd jpeg libexif and lockdev dependencies may be missing.
Best regards,
Romain
> +
> +$(eval $(autotools-package))
>
More information about the buildroot
mailing list