Laca,
Thanks for the review. Please review the attached files that have been
updated accordingly. Meantime I remove cheese-04-msgfmt-version.diff
since /usr/gnu/bin/msgfmt is used.
BR,
Elaine
Laszlo (Laca) Peter wrote:
> Hi Elaine,
>
> On Mon, 2008-09-01 at 14:09 +0800, Elaine Xiong wrote:
>
>> #
>> # spec file for package SFEcheese
>>
>
> s/SFE/SUNW/
>
>
>> # owner:elaine date:2008-09-01 type:RFE bugster:6657549
>> Patch1: cheese-01-lack-hal-backend.diff
>>
>> # owner:elaine date:2008-09-01 type:RFE bugster:6743364
>> Patch2: cheese-02-lack-uvc-framerate.diff
>>
>
> The correct keyword is "feature" not "RFE"
>
>
>> %if %option_with_fox
>> Requires: FSWxorg-clientlibs
>> Requires: FSWxwrtl
>> BuildRequires: FSWxorg-headers
>> %else
>> Requires: SUNWxwrtl
>> %endif
>>
>
> This shouldn't be needed anymore, it can depend on SUNWxwrtl
>
>
>> %package root
>> Summary: %{summary} - / filesystem
>> SUNW_BaseDir: /
>> %include default-depend.inc
>>
>
> Either -root should Require %name or %name should require
> %{name}-root.
>
>
>> export CFLAGS="%optflags -mt `pkg-config --cflags gtk+-2.0`
>> `pkg-config --cflags libglade-2.0` `pkg-config --cflags dbus-1`
>> `pkg-config --cflags gnome-vfs-2.0` `pkg-config --cflags
>> libgnomeui-2.0` `pkg-config --cflags gstreamer-0.10` `pkg-config
>> --cflags libebook-1.2`"
>>
>
> This is a big unusual, the configure script usually does this
> for you. Why do you need to add these to CFLAGS?
>
>
>> %if %option_with_gnu_iconv
>> export CFLAGS="$CFLAGS -I/usr/gnu/include -L/usr/gnu/lib
>> -R/usr/gnu/lib -lintl"
>> %endif
>>
>
> This isn't needed anymore.
>
>
>> export LDFLAGS="%{_ldflags} -lc -mt -lpthread `pkg-config --libs gtk
>> +-2.0` `pkg-config --libs libglade-2.0` `pkg-config --libs dbus-1`
>> `pkg-config --libs gnome-vfs-2.0` `pkg-config --libs libgnomeui-2.0`
>> `pkg-config --libs gstreamer-0.10` -lgstinterfaces-0.10 `pkg-config
>> --libs libebook-1.2` -lXxf86vm"
>>
>
> Same comments as for CFLAGS.
>
>
>> CFLAGS="$CFLAGS" ./configure --prefix=%{_prefix} --mandir=%{_mandir} \
>>
>
> Since CFLAGS is exported, you don't need to repeat CFLAGS="$CFLAGS"
> here.
>
>
>> %post
>> ( echo 'test -x /usr/bin/update-desktop-database || exit 0';
>> echo '/usr/bin/update-desktop-database'
>> ) | $BASEDIR/lib/postrun -b -u -c JDS_wait
>> ( echo 'test -x %{_bindir}/update-mime-database || exit 0';
>> echo '%{_bindir}/update-mime-database %{_datadir}/mime'
>> ) | $BASEDIR/lib/postrun -b -u -c JDS_wait
>> ( echo 'test -x /usr/bin/scrollkeeper-update || exit 0';
>> echo '/usr/bin/scrollkeeper-update'
>> ) | $BASEDIR/lib/postrun -b -u -c JDS
>>
>
> Please use %include for these.
>
>
>> %postun
>> ( echo 'test -x /usr/bin/update-desktop-database || exit 0';
>> echo '/usr/bin/update-desktop-database'
>> ) | $BASEDIR/lib/postrun -b -u -c JDS_wait
>> ( echo 'test -x %{_bindir}/update-mime-database || exit 0';
>> echo '%{_bindir}/update-mime-database %{_datadir}/mime'
>> ) | $BASEDIR/lib/postrun -b -u -c JDS_wait
>> ( echo 'test -x /usr/bin/scrollkeeper-update || exit 0';
>> echo '/usr/bin/scrollkeeper-update'
>> ) | $BASEDIR/lib/postrun -b -u -c JDS
>>
>
> and these.
>
>
>>
>>
>>
>> differences
>> between files
>> attachment
>> (cheese-01-lack-hal-backend.diff)
>>
>> --- ./src/cheese-webcam.c.orig 2008-08-19 02:32:53.000000000 +0800
>> +++ ./src/cheese-webcam.c 2008-09-01 11:14:34.730782000 +0800
>> @@ -241,6 +241,10 @@
>> * refers to a fake device so that resolution
>> changing still
>> * works even if the computer doesn't have a
>> webcam. */
>> char **udis;
>> +#ifdef SOLARIS
>> + char *dev_name;
>> + struct stat s;
>> +#endif
>> DBusError error;
>> LibHalContext *hal_ctx;
>>
>> @@ -287,6 +291,19 @@
>> if (num_udis > 0)
>> priv->num_webcam_devices = num_devices = num_udis;
>> else
>> +#ifdef SOLARIS
>> + for (i = 0;;i++)
>> + {
>> + dev_name = g_strdup_printf("%s%d", "/dev/video", i);
>> + if (lstat(dev_name, &s) != 0)
>> + break;
>> + else
>> + priv->num_webcam_devices = num_devices = num_udis = 1;
>> + }
>> + if (num_udis >= 1 && i > 0)
>> + dev_name = g_strdup_printf("%s%d", "/dev/video", --i);
>> + else
>> +#endif
>> {
>> num_devices = 1;
>> priv->num_webcam_devices = num_udis; /* We don't have any real
>> cameras--
>> @@ -304,6 +321,7 @@
>>
>> for (i = 0; i < priv->num_webcam_devices; i++)
>> {
>> +#ifndef SOLARIS
>> char *device;
>>
>> device = libhal_device_get_property_string (hal_ctx, udis[i],
>> "video4linux.device", &error);
>> @@ -315,8 +333,14 @@
>> }
>> priv->webcam_devices[i].video_device = g_strdup (device);
>> libhal_free_string (device);
>> +#else
>> + priv->webcam_devices[i].video_device = g_strdup (dev_name);
>> +#endif
>> }
>> libhal_free_string_array (udis);
>> +#ifdef SOLARIS
>> + libhal_free_string(dev_name);
>> +#endif
>> }
>>
>> static void
>> --- ./configure.orig 2008-08-19 02:33:17.000000000 +0800
>> +++ ./configure 2008-09-01 11:14:34.739745000 +0800
>> @@ -15249,7 +15249,7 @@
>> GNOME_VFS_REQUIRED=2.18.0
>> LIBEBOOK_REQUIRED=1.12.0
>> DBUS_REQUIRED=1.0
>> -HAL_REQUIRED=0.5.9
>> +HAL_REQUIRED=0.5.8
>> DBUS_GLIB_REQUIRED=0.7
>> LIBRSVG_REQUIRED=2.18.0
>> PANGOCAIRO_REQUIRED=1.18.0
>>
>
> Please patch configure.in or configure.ac and call autoconf
> in %build.
>
>
>> --- ./configure.orig 2008-09-01 11:16:01.925112000 +0800
>> +++ ./configure 2008-09-01 11:17:06.006368000 +0800
>> @@ -9350,6 +9350,7 @@
>> solaris*)
>> lt_prog_compiler_pic='-KPIC'
>> lt_prog_compiler_static='-Bstatic'
>> + CFLAGS="${CFLAGS} -DSOLARIS"
>> case $cc_basename in
>> f77* | f90* | f95*)
>> lt_prog_compiler_wl='-Qoption ld ';;
>> @@ -12722,7 +12723,7 @@
>>
>>
>>
>> -CFLAGS="${CFLAGS} -Wall"
>> +CFLAGS="${CFLAGS}"
>>
>
> Same here, please patch configure.in/ac
>
>
>> --- ./configure.orig 2008-09-01 11:16:01.925112000 +0800
>> +++ ./configure 2008-09-01 11:17:06.006368000 +0800
>> @@ -13221,7 +13222,7 @@
>> xgversion="`$XGETTEXT --version|grep '(GNU ' 2> /dev/null`"
>> mmversion="`$MSGMERGE --version|grep '(GNU ' 2> /dev/null`"
>> mfversion="`$MSGFMT --version|grep '(GNU ' 2> /dev/null`"
>> -if test -z "$xgversion" -o -z "$mmversion" -o -z "$mfversion"; then
>> +if test -z "$xgversion" -o -z "$mmversion"; then
>> { { $as_echo "$as_me:$LINENO: error: GNU gettext tools not found;
>> required for intltool" >&5
>> $as_echo "$as_me: error: GNU gettext tools not found; required for
>> intltool" >&2;}
>> { (exit 1); exit 1; }; }
>>
>
> And here too.
>
> Laca
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
<http://mail.opensolaris.org/pipermail/jds-review/attachments/20080901/6a8cc80a/attachment.html>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: SUNWcheese.spec
URL:
<http://mail.opensolaris.org/pipermail/jds-review/attachments/20080901/6a8cc80a/attachment.ksh>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: cheese-01-lack-hal-backend.diff
Type: text/x-patch
Size: 2039 bytes
Desc: not available
URL:
<http://mail.opensolaris.org/pipermail/jds-review/attachments/20080901/6a8cc80a/attachment.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: cheese-02-lack-uvc-framerate.diff
Type: text/x-patch
Size: 2228 bytes
Desc: not available
URL:
<http://mail.opensolaris.org/pipermail/jds-review/attachments/20080901/6a8cc80a/attachment-0001.bin>