Add an ebuild for SmartCam (see http://sourceforge.net/projects/smartcam/) and corresponding kernel module. Reproducible: Always
Created attachment 220723 [details] Smartcam ebuild (no kernel driver) I made this ebuild depending on another one called smartcam-driver-1.4.0.ebuild which actually compiles its kernel module driver.
Created attachment 220725 [details] Smartcam-driver ebuild (kernel driver only) This ebuild is a smartcam dependency, it is supposed to build smartcam kernel driver module, but I'm new writing ebuilds and I don't know how to make this ebuild to work. I hope anyone can help.
Created attachment 220727 [details, diff] Patch to use in smartcam-driver-1.4.0.ebuild This patch is need to make smartcam.ko to compile in 2.6.31 kernels.
Created attachment 220785 [details] Smartcam-driver ebuild (kernel driver only) final version Thanks to ABCD in #gentoo-dev-help for his help. He actually made this ebuild.
Both ebuilds work for me, thanks a lot. However, there is a bug in upstream which prevents starting SmartCam if there is no Bluetooth device: http://sourceforge.net/tracker/?func=detail&aid=2893361&group_id=197856&atid=963144
I'll check this and add that patch if it is necessary.
Created attachment 220919 [details] Smartcam ebuild (no kernel driver) New smartcam-1.4.0.ebuild which applies no-bluetooth-segfault patch.
Created attachment 220921 [details, diff] No bluetooth segfault patch for smartcam-1.4.0 This patch avoids smartcam to segfault when no bluetooth dongle is available.
(In reply to comment #5) > Both ebuilds work for me, thanks a lot. I tested this ebuild in ~amd64, which arch are you using?
(In reply to comment #3) > Created an attachment (id=220727) [details] > Patch to use in smartcam-driver-1.4.0.ebuild > > This patch is need to make smartcam.ko to compile in 2.6.31 kernels. > Ypu should make this patch conditional (probable some if else's in code) because this way it cant be compiled on older (mine is 2.6.28-gentoo-r5)
(In reply to comment #9) > I tested this ebuild in ~amd64, which arch are you using? x86
Created attachment 221041 [details] Smartcam-driver ebuild (kernel driver only) Added a conditional for the patch, only applied if kernel version greater than 2.6.28.
There is no maintaner for this ebuild since almost three months ago. What do you think about adding this ebuild to sunrise overlay?
I had a compile error during building the module: * Preparing smartcam module make -j5 HOSTCC=x86_64-pc-linux-gnu-gcc CROSS_COMPILE=x86_64-pc-linux-gnu- LDFLAGS= -C /usr/src/linux M=/var/tmp/portage/media-video/smartcam-driver-1.4.0/work/smartcam-1.4.0/driver_src modules make: Entering directory `/usr/src/linux-2.6.34-gentoo-r12' CC [M] /var/tmp/portage/media-video/smartcam-driver-1.4.0/work/smartcam-1.4.0/driver_src/smartcam.o /var/tmp/portage/media-video/smartcam-driver-1.4.0/work/smartcam-1.4.0/driver_src/smartcam.c: In function ‘vidioc_s_fmt_cap’: /var/tmp/portage/media-video/smartcam-driver-1.4.0/work/smartcam-1.4.0/driver_src/smartcam.c:174: error: dereferencing pointer to incomplete type /var/tmp/portage/media-video/smartcam-driver-1.4.0/work/smartcam-1.4.0/driver_src/smartcam.c: In function ‘smartcam_write’: /var/tmp/portage/media-video/smartcam-driver-1.4.0/work/smartcam-1.4.0/driver_src/smartcam.c:529: error: ‘TASK_INTERRUPTIBLE’ undeclared (first use in this function) /var/tmp/portage/media-video/smartcam-driver-1.4.0/work/smartcam-1.4.0/driver_src/smartcam.c:529: error: (Each undeclared identifier is reported only once /var/tmp/portage/media-video/smartcam-driver-1.4.0/work/smartcam-1.4.0/driver_src/smartcam.c:529: error: for each function it appears in.) /var/tmp/portage/media-video/smartcam-driver-1.4.0/work/smartcam-1.4.0/driver_src/smartcam.c: At top level: /var/tmp/portage/media-video/smartcam-driver-1.4.0/work/smartcam-1.4.0/driver_src/smartcam.c:554: warning: initialization from incompatible pointer type /var/tmp/portage/media-video/smartcam-driver-1.4.0/work/smartcam-1.4.0/driver_src/smartcam.c:555: warning: initialization from incompatible pointer type make[1]: *** [/var/tmp/portage/media-video/smartcam-driver-1.4.0/work/smartcam-1.4.0/driver_src/smartcam.o] Error 1 make: *** [_module_/var/tmp/portage/media-video/smartcam-driver-1.4.0/work/smartcam-1.4.0/driver_src] Error 2 make: Leaving directory `/usr/src/linux-2.6.34-gentoo-r12' emake failed It was fixed by adding a simple include: #include <linux/sched.h> to smartcam.c I'm not sure which kernel versions need this.
Created attachment 258323 [details] updated driver patch added linux/sched include. not sure if it should apply to all kernel versions.
btw, since I'm on amd64 stable, I was hit with a bluez bug - bluetooth stack segfaulting after running smartcam. Upstream discussion is at http://www.spinics.net/lists/linux-bluetooth/msg08526.html it is fixed at least in current ~amd64 bluez version: net-wireless/bluez-4.82 (I din't try testing earlier versions)
Created attachment 265861 [details] New smarcam-driver ebuild with last patch in comment 15 added You have to rename patch added in comment 15 to smartcam-driver-2.6.34.patch in order to this ebuild to work. I probed this in amd64 in a 2.6.36 gentoo-sources kernel.
Created attachment 265887 [details] New smartcam-driver ebuild with last patch in comment 15 added Some indentantion issues.
Created attachment 265889 [details] Smartcam ebuild (no kernel driver) Description fixed.
Created attachment 319036 [details, diff] patch for compiling driver with new kernel (3.x) Scartcam kernel driver compiling failure with new linux kernel (3.2, 3.3, ...). I'm have been found problem and adding patch Драйвер не компилируется с новыми версиями ядра (3.x). Нашёл проблему и прилагаю патч.
Comment on attachment 319036 [details, diff] patch for compiling driver with new kernel (3.x) I have been found problem with smartcam driver that does not compile with new kernel (3.x). Adding patch
Created attachment 319038 [details] updated ebuild for patch above (attachment 319036 [details, diff]) Adding new ebuild compatible with patch above (attachment 319036 [details, diff]) Добавляю ебилд, совместимый с вышеприложенным патчем. Патч поместить в папку files корня ебилда программы, новым ебилдом заменить старый и сделать ebuild smartcam-1.4.0.ebuild digest
Created attachment 319042 [details] smartcam-1.4.0.ebuild I have been found problem with smartcam (program? frontend?) that does not compile with new GCC (4.6.x, 4.7.x) Adding ebuild Нашёл проблему, которая заключается в невозможности скомпилировать фронтэнд программы из-за отлюченного флага -fpermissive. При принудительном включении программа компилируется и нормально работает. Добавляю новый ебилд.
Comment on attachment 319042 [details] smartcam-1.4.0.ebuild # Copyright 1999-2010 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: $ inherit eutils flag-o-matic DESCRIPTION="Use the camera of your Symbian S60 mobile / as a webcam" HOMEPAGE="http://smartcam.sourceforge.net" SRC_URI="mirror://sourceforge/smartcam/${P}.tar.gz" LICENSE="GPL-2" SLOT="0" KEYWORDS="~x86 ~amd64" IUSE="" DEPEND="sys-apps/dbus =media-video/smartcam-driver-1.4.0 x11-libs/gtk+" RDEPEND="sys-apps/dbus =media-video/smartcam-driver-1.4.0" src_unpack() { unpack ${A} cd "${S}" epatch "${FILESDIR}"/${PN}-no-bluetooth-segfault.patch } src_compile() { append-cppflags -fpermissive econf emake || die "emake failed" } src_install() { emake DESTDIR="${D}" install || die "install failed" dodoc ReadMe.txt || die }
This is heavily outdated.