[oe] [PATCH] gphoto2_2.4.8.bb: Stop configure from looking in /usr/local/include
Graham Gower
graham.gower at gmail.com
Wed Nov 3 00:04:19 UTC 2010
On 2 November 2010 17:08, Frans Meulenbroeks
<fransmeulenbroeks at gmail.com> wrote:
> 2010/11/2 Graham Gower <graham.gower at gmail.com>:
>> * Point configure at where it can find jpeg.
>> * Explicitly disable cdk and aalib.
>> * Fix license while here.
>>
>> Signed-off-by: Graham Gower <graham.gower at gmail.com>
>> ---
>> recipes/gphoto2/gphoto2_2.4.8.bb | 9 +++++++--
>> 1 files changed, 7 insertions(+), 2 deletions(-)
>>
>> diff --git a/recipes/gphoto2/gphoto2_2.4.8.bb b/recipes/gphoto2/gphoto2_2.4.8.bb
>> index ea54713..836ea85 100644
>> --- a/recipes/gphoto2/gphoto2_2.4.8.bb
>> +++ b/recipes/gphoto2/gphoto2_2.4.8.bb
>> @@ -1,7 +1,8 @@
>> DESCRIPTION = "gphoto2 is a command-line utility to fetch pictures from digital cameras"
>> SECTION = "console/utils"
>> -LICENSE = "GPL"
>> -DEPENDS = "libtool libgphoto2 popt"
>> +LICENSE = "GPLv2+"
>> +DEPENDS = "libtool libgphoto2 popt jpeg"
>
> The original recipe would build without the depends on jpeg
> adding it to depends should be mentioned in the commit message
>
>> +PR = "r1"
>>
>> SRC_URI = "${SOURCEFORGE_MIRROR}/gphoto/gphoto2-${PV}.tar.bz2;name=gphoto2 \
>> file://gphoto-popt-fixup.patch"
>> @@ -11,6 +12,10 @@ SRC_URI[gphoto2.sha256sum] = "a2e2f70fd6051234cbc3d76dc82df6991e8a07ead56aa8d5c4
>>
>> inherit autotools
>>
>> +EXTRA_OECONF="--without-cdk \
>> + --without-aalib \
>> + --with-jpeg-prefix=${STAGING_EXECPREFIXDIR}"
>> +
>
> I have some concerns here.
> For configure it seems best to explicitly set and reset the flags in
> it, otherwise you may just pick up whatever happened to be build
> before.
>
> from --help:
>
> Optional Features:
> --disable-option-checking ignore unrecognized --enable/--with options
> --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
> --enable-FEATURE[=ARG] include FEATURE [ARG=yes]
> --disable-dependency-tracking speeds up one-time build
> --enable-dependency-tracking do not reject slow dependency extractors
> --enable-shared[=PKGS] build shared libraries [default=yes]
> --enable-static[=PKGS] build static libraries [default=yes]
> --enable-fast-install[=PKGS]
> optimize for fast installation [default=yes]
> --disable-libtool-lock avoid locking (might break parallel builds)
> --disable-largefile omit support for large files
> --disable-nls do not use Native Language Support
> --disable-rpath do not hardcode runtime library paths
>
> Optional Packages:
> --with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
> --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
> --with-pic try to use only PIC/non-PIC objects [default=use
> both]
> --with-gnu-ld assume the C compiler uses GNU ld [default=no]
> --with-gnu-ld assume the C compiler uses GNU ld default=no
> --with-libiconv-prefix[=DIR] search for libiconv in DIR/include and DIR/lib
> --without-libiconv-prefix don't search for libiconv in
> includedir and libdir
> --with-libintl-prefix[=DIR] search for libintl in DIR/include and DIR/lib
> --without-libintl-prefix don't search for libintl in includedir and libdir
> --with-libgphoto2=PREFIX
> where to find libgphoto2, "no" or "auto"
> --without-pthread Don't use pthread
> --without-cdk Do not use cdk
> --with-cdk-prefix=PREFIX
> Location of cdk
> --without-jpeg Do not use jpeg
> --with-jpeg-prefix=PREFIX
> Location of jpeg
> --with-libexif=PREFIX where to find libexif, "no" or "auto"
> --without-aalib Do not use aalib
> --without-readline Do not use readline
>
> All things that are not mentioned in DEPENDS should (IMHO) be
> explicitly be turned off.
> And for the things in DEPENDS I would encourage to still add them.
> E.g. --with-jpeg. Yes I know these will always be picked up when a
> DEPENDS = "jpeg" is present, but making it explict does not hurt and
> it trips an error if jpeg is not there and someone does a bitbake -b
> of the recipe (instead of silently building a package without jpeg).
>
> Thanks for your contribution & apologies for using your commit for a
> rant on configure flags.
>
> Frans.
>
I agree with you here. Often a recipe breaks when a particular
subsystem is enabled, which is usually not enabled during regular
image builds. And it can be difficult to determine if something should
be added to DEPENDS or disabled at configure time.
What I found with gphoto2 (which probably wasn't clear) was the
configure script was testing for jpeg and cdk with
-I/usr/local/include. So I guessed on what was useful and what wasn't
and added jpeg to depends to make it clear that jpeg support was
intended (even though it will likely be pulled in by other
dependencies).
I assume you just want exif and readline disabled too? (and possibly
an essay in the commit message :))
-Graham
More information about the Openembedded-devel
mailing list