Description
Maxim Loginov
2006-09-14 05:06:57 UTC
*** Bug 147554 has been marked as a duplicate of this bug. *** Created attachment 97131 [details]
kde-misc/strigi-0.3.8
Ebuild that works for me.
But there is additional work to do with clucene, due to pathes not yet in 0.9.15 (but in cvs). You need to copy some headerfiles (see README in strigi-source-tar) before building clucene.
For that i unzipped clucene-0.9.15, did the copying, renamed the dir to clucene-0.9.15.1, gzipped, copied the clucene-ebuild, and everything merged fine :)
With strigi-0.3.8 i had big problems with eaten ressources. The author told me there is a bug with inotify. I think the next version will work perfect!
Franz
Created attachment 97207 [details]
added estraier-USE-Flag + qt4-dependency (for 0.3.8)
Strigi also supports hyperestraier, so I added USE-Flag.
For the GUI you need >=x11-libs/qt-4.1.2, added dependenciy.
Created attachment 97211 [details]
kde-misc/strigiapplet-0.3.8
Thats the strigi kicker-applet.
Created attachment 98266 [details]
kde-misc/strigi-0.3.8.ebuild
ebuild with additional useflag testing of clucene
I'm not authorized to obsolete "added estraier-USE-Flag + qt4-dependency (for 0.3.8)" file for some reason... it should be obsolete imho. I think the built_with_use testing is better than the errormessage from strigi while configuring if clucene has not been patched also, i want to confirm that this ebuild compiles and works on ppc strigiapplet compiles and works on ppc. I think strigi and strigiapplet should be installed into /usr and not into /usr/local At least for strigiapplet this should be necessary because kde didn't noticed the kio and kickerapplet in /usr/local Setting the installdir is simply done by modifying the cmake line to "cmake -D CMAKE_INSTALL_PREFIX:PATH=/usr . || die" Dont't know if there is a better way... it works without problems for me, though. Created attachment 99505 [details]
kde-misc/strigiapplet-0.3.8 (now installing to /usr)
Thx for the advice.
Now strigiapplet installes to /usr.
Created attachment 99506 [details]
kde-misc/strigi-0.3.8.ebuild
And strigi now also installes to /usr.
Additionally changed dependency from "clucene" to "dev-cpp/clucene".
ehm. clucene is now at version 0.9.16, is patching/custom ebuild still needed? Created attachment 102374 [details]
kde-misc/strigi-0.3.9.ebuild (version bump + misc)
seems to compiled/work flawlessly without any patch to clucene (I used clucene-0.9.16 from poratge). build without GUI client, since it available with qt4 only, configuration with kio_strigi is bit weird, but doable. more testing needed.
Created attachment 102375 [details]
kde-misc/strigiapplet-0.3.9.ebuild (version bump)
accompany strigi-0.3.9.ebuild, changed only explicit version specification
Created attachment 102489 [details]
kde-misc/strigi-0.3.9.ebuild (changed download location)
- Changed the download location to Sourceforge
- Some small cleanups
Created attachment 102490 [details]
kde-misc/strigiapplet-0.3.9.ebuild (changed download location)
- Changed the download location to Sourceforge
- Some small cleanups
A few notes on your package, and maybe some changes need to be made to other packages already in portage that I am not as familiar with as you, but here goes: 1) cd ${S} is done already. Remove it from the tops of your functions. It is only needed after the unpacking stage. 2) Is the "estraier" use flag the same as www-client/kazehakase's hyperestraier use flag? 3) Did you test this on ppc, x86, and amd64? Please only add the architectures YOU can test (for new ebuilds)! Other than that, the ebuilds look very clean, nice work, and I look forward to seeing this in portage soon. Side note: this does not install with multilib-strict. Files matching a file type that is not allowed: usr/lib/libsearchclient.so.0.3.9 usr/lib/libstreamindexer.so.0.3.9 usr/lib/strigi/strigita_xattr.so usr/lib/strigi/strigita_magic.so usr/lib/libstreams.so.0.3.9 usr/lib/libstrigihtmlgui.so.0.3.9 These need to be installed in lib64, not lib. This libdir is available in ebuilds with the $(get_libdir) command substitution, assuming you have inherited the multilib eclass. If you're not familiar with multilib, don't worry about it. Just fix the previously mentioned problems and we'll work through the multilib issues later. (In reply to comment #16) > 1) cd ${S} is done already. Remove it from the tops of your functions. It is > only needed after the unpacking stage. Thx for the hint > 2) Is the "estraier" use flag the same as www-client/kazehakase's hyperestraier > use flag? It should be the same. I put estraier as USE cause thats shorter ;). If you think its better for consistency to rename the flag it should be done. > 3) Did you test this on ppc, x86, and amd64? Please only add the architectures > YOU can test (for new ebuilds)! Sorry, i did not. These are the first ebuilds i committed at b.g.o. In future i'll only add x86 ;) > Other than that, the ebuilds look very clean, nice work, and I look forward to > seeing this in portage soon. Thx :) But i have problems with the new version: strigi-0.3.9 won't compile anymore on my box, but only using ebuilds. I've been searching a lot, but didnt get it fixed (so i waited with updating the ebuilds). If i compile it by hand, everything works fine... The ebuild i used and the errors you can find here: http://forums.gentoo.org/viewtopic-t-515903.html Greez Franz Created attachment 102672 [details]
kde-misc/strigi-0.3.9 (cleaned + fixed (hope so) + add USE-Flags
Fixed the 3 Points (remove cd ${S}, changed IUSE estraier to hyperestraier, deleted all keywords except ~x86).
Added a cmake-option that hopefully installs to lib64, or others, if needed (didnt recognize a difference on x86). -> Please test and comment...
There seems to be a problem with log4cxx-support, so using log-USE-Flag wont compile (it didnt on my test-machines). I will inform oever.
Created attachment 102676 [details]
emerge --info + strigi build-error
It seems to be a problem with MY machine, i cant compile >strigi-0.3.8 (the other machine i have for testing works fine)...
2 strange things:
* As i mentioned in the f.g.o-thread (link above), the location, where the error occures, varies...
* Though there is an error, portage doesnt stop...
Some other packages compiled after passing emake -j1, here that doesn't work :(
It would be nice if someone could give me a hint.
Thx
Franz
Created attachment 102677 [details]
kde-misc/strigi-9999.ebuild (svn-ebuild)
For those of you who love to build the latest svn-sources ;)
(In reply to comment #19) > Added a cmake-option that hopefully installs to lib64, or others, if needed > (didnt recognize a difference on x86). -> Please test and comment... Ok, this CAN'T work, as there is no such Option... I tried to compile canorus (canorus.berlios.de). There i noticed such an Option (CANORUS_INSTALL_LIB_DIR), but not that this was a user-defined variable. strigi doesnt offer such a variable. In the CMakeLists.txt are only hardcoded "lib"s. I contacted oever if he could fix this, as the only way to change this (now) seems to be patching the CMakeLists.txt. But probably i'm wrong, and there is such an option (any cmake-geeks here?) bb Franz Jos told me he has integrated a variable (LIB_DESTINATION) in the latest strigi-version (0.3.10 + svn). So using $(get_libdir) should work now (Just update this line -DSTRIGI_INSTALL_LIB_DIR:PATH=$(get_libdir) to -DLIB_DESTINATION:PATH=$(get_libdir) if you want to test it) But there is a little problem: Jos now uses qt-4.2 and its dbus-bindings (needed!). With the testing-version (4.2.1) of qt, there is NO dbus available, and compiling resutls in an error. And 4.2.1-r1 (which works with >=dbus-1) is still hardmaked, with good reason. If you want to test the latest version, just install the needed qt-4.2.1-r1. I will update and test an ebuild the next days. Regards Franz (In reply to comment #20) > Created an attachment (id=102676) [edit] > emerge --info + strigi build-error This problem seems to be solved: There was a problem with the partition, i don't know what... Anything compiled fine, except >=strigi-0.3.9. mount -o bind /home/franz/portage /var/tmp/portage did it. I noticed that compiling "by hand" in /tmp (which is on the same partition as /var) resulted in the same error, in /home it didn't. Both partitions (/home + /) are on the same disk. /home is reiser3, / is ext3. If somebody could tell me what's happening, i would be glad :) Tell me which infos are needed. fsck (at boot) returns no errors. Created attachment 103260 [details] strigi-0.3.10.ebuild (depends on >=qt-4.2.1-r1, variable for libdir) You need >= qt-4.2.1-r1 otherwise compilation fails! (missing dbus-support in 4.2.1) This needs some more work to get back automount and others in kde: At least hal-0.5.7.1-r1 + pmount-0.9.13. You also need dev-libs/dbus-qt3-old! Now run revdep-rebuild -> at least kdebase-kioslaves should be rebuilt. If some packages fail just try the testing-version. Jos implemented a variable (LIB_DESTINATION), to be able to change libdir. THX! So now it is possible to install to lib64. As he silently updated the realease, it is possible this variable does not yet exist, then just manually download it here: http://www.vandenoever.info/software/strigi/strigi-0.3.10.tar.bz2 I hope sourceforge will update the packages soon :) log4cxx still fails here on my box. And one WARNING: The (qt4-)strigiclient uses only dbus for communication with the daemon. if you disable dbus, the client cant detect a running daemon! If you enable qt4, please also enable dbus! (I also added an ewarn) For the strigiapplet you just need to copy strigiapplet-0.3.9.ebuild to strigiapplet-0.3.10.ebuild. It works fine. Created attachment 103274 [details]
strigi-0.3.10.ebuild (add IUSE="polling", add warnings)
I added a new USE-Flag for enabling support for polling.
inotify + polling can't be enabled at the same time, so emerge will stop and print an error.
Also print a warning if inotify or polling are enabled, as they are still under development and unstable.
Put warnings to pkg_setup()
Please test and write your experience.
When will this come into portage? :) (Maybe p-masked and ~x86 for now, when there are problems with other architectures?) Created attachment 103342 [details]
strigi-0.3.10.ebuild (change mirror, again)
As the sourceforge-mirrors still dont have the LIB_DESTINATION-fixed version, i needed to change the SRC_URI back to Jos' homepage. This fix is neccessary for amd64-users, to get the libs installed to lib64, not lib.
For the next version(s) i will change it back again.
(In reply to comment #27) > When will this come into portage? :) If the only reason should be the "wanted maintainer", I could do that job. Just contact me: fellner (at) gmx (dot) de Created attachment 104909 [details]
strigi-0.3.11.ebuild
Strigi 0.3.11 ebuild with some more useflags and dependancies.
Due to the upstream cmake file most useflags will be ignored, and only the presence of the libraries they pull will matter.
This is especially problematic with qt4, as any >=qt-4.2.0 will enable a qt4 build, but it will fail (in one way or another) without a dbus enabled >=qt-4.2.1...
Created attachment 104910 [details]
strigiapplet-0.3.11.ebuild
Matching strigiapplet ebuild
Created attachment 108602 [details] compile error with USE='log' compiling strigi.0.3.11 with USE='log' gives the error in the attached file ... here is my conf... emerge --info Portage 2.1.1-r2 (default-linux/x86/2006.0, gcc-4.1.1, glibc-2.4-r4, 2.6.19.2-lsd2 i686) ================================================================= System uname: 2.6.19.2-lsd2 i686 Intel(R) Pentium(R) M processor 1.86GHz Gentoo Base System version 1.12.6 Last Sync: Mon, 29 Jan 2007 21:50:01 +0000 app-admin/eselect-compiler: [Not Present] dev-java/java-config: 1.3.7, 2.0.31-r3 dev-lang/python: 2.4.3-r4 dev-python/pycrypto: 2.0.1-r5 dev-util/ccache: [Not Present] dev-util/confcache: [Not Present] sys-apps/sandbox: 1.2.17 sys-devel/autoconf: 2.13, 2.61 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10 sys-devel/binutils: 2.16.1-r3 sys-devel/gcc-config: 1.3.14 sys-devel/libtool: 1.5.22 virtual/os-headers: 2.6.17-r2 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS="-O2 -march=i686 -pipe" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/NX/etc /usr/NX/home /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config" CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf /etc/java-config/vms/ /etc/revdep-rebuild /etc/terminfo" CXXFLAGS="-O2 -march=i686 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig confcache distlocks metadata-transfer parallel-fetch sandbox sfperms strict userfetch userpriv usersandbox" GENTOO_MIRRORS="ftp://distro.ibiblio.org/pub/linux/distributions/gentoo/ http://www.die.unipd.it/pub/Linux/distributions/gentoo-sources/ ftp://ftp.unina.it/pub/linux/distributions/gentoo ftp://mirror.switch.ch/mirror/gentoo/ " PKGDIR="/usr/portage/packages" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude='/distfiles' --exclude='/local' --exclude='/packages'" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage/lsd /usr/local/portage/layman /usr/local/portage/layman/sunrise /usr/local/portage/layman/vmware /usr/local/portage/layman/nx /usr/local/portage/layman/voip /usr/local/portage/layman/nouveau" SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" USE="x86 7zip X X509 aac acl acpi addbookmarks afs aiglx aim aio alias alsa alsa_cards_intel8x0 alsa_pcm_plugins_adpcm alsa_pcm_plugins_alaw alsa_pcm_plugins_asym alsa_pcm_plugins_copy alsa_pcm_plugins_dmix alsa_pcm_plugins_dshare alsa_pcm_plugins_dsnoop alsa_pcm_plugins_empty alsa_pcm_plugins_extplug alsa_pcm_plugins_file alsa_pcm_plugins_hooks alsa_pcm_plugins_iec958 alsa_pcm_plugins_ioplug alsa_pcm_plugins_ladspa alsa_pcm_plugins_lfloat alsa_pcm_plugins_linear alsa_pcm_plugins_meter alsa_pcm_plugins_mulaw alsa_pcm_plugins_multi alsa_pcm_plugins_null alsa_pcm_plugins_plug alsa_pcm_plugins_rate alsa_pcm_plugins_route alsa_pcm_plugins_share alsa_pcm_plugins_shm alsa_pcm_plugins_softvol amr amrr amuled aoss apache2 ares arts asf async audiofile authdaemond autoipd automount autoreplace avahi bash-completion bcp berkdb binary-drivers bitmap-fonts bjam bluetooth bookmarks branding bzip2 cairo cameras_canon cameras_directory caps cdio cdparanoia cdr cg chroot clamav clamd clearcase cli clvm commercial connectionstatus contactnotes cpudetection cracklib crypt css cups curl curlwrappers cvs cvsgraph dbase dbm dbus dbx devmap dga dio dlloader dmi dmx drac dri dv dvb dvd dvdr dvdread elibc_glibc encode esd evo exif extensions fam fame fat fbcon fbdev ffmpeg filter firefox flac flatfile font-server foomaticdb freetds ftp fuse fusion gadu gcj gd gdbm gg gif gimp glib glitz glut glx gmail gmailtimestamps gnokii gnutls gpg2-experimental gphoto2 gpm gs gsl gstreamer gtk gtk2 gui guile hal hash haskell highlight history howl howl-compat hpn httpd i8x0 iconv icq id3 idea idn ieee1394 imagemagick imap imlib innodb input_devices_evdev input_devices_keyboard input_devices_mouse input_devices_synaptics iodbc iproute2 ipv6 irc irmc isdnlog jabber jack java javascript jce jikes jingle john joystick jp2 jpeg jpeg2k kde kdrive kerberos kernel_linux kipi kqemu lame lcd_devices_bayrad lcd_devices_cfontz lcd_devices_cfontz633 lcd_devices_glk lcd_devices_hd44780 lcd_devices_lb216 lcd_devices_lcdm001 lcd_devices_mtxorb lcd_devices_ncurses lcd_devices_text lcms ldap ldapsam libcaca libclamav libvisual linuxkeys lm_sensors log4j logitech-mouse logrotate lzo mad maildir md5sum mecab mime mjpeg mmx mng motif mozilla mp3 mp4 mp4live mpeg mpeg2 mpi mplayer msn mysql mysqli nas ncurses network nfs ngui nls nntp nodrm nowlistening nptl nptlonly nsplugin ntfs ntlm ntlm_unsupported_patch nvidia oav odbc offensive ogg on-the-fly-crypt openal openexr opengl openssh openssl opensslcrypt oracle oscar oss pam pam_chroot parse-clocks passwordsave pch pcre pdf perforce perl php player plib plugin-file plugin-python pmu png pnp pop3d portaudio ppds pppd pyste python qemu-fast qt3 qt3support qt4 quicktime quotas radiotap radius rar rdesktop readline real reflection reiserfs rpc rtc rtsp ruby samba sametime sasl scanner screen sdl sensord session sftp sftplogging shout sieve silc simplexml skey skins slp sms sndfile soap socks5 softmmu sox spamassassin speex spell spl sql sqlite sqlite3 sse sse2 ssl startup-notification stats stream subject-rewrite subtitles subversion svg swat sysfs syslog szip talkfilters tcl tcltk tcpd texteffect tga theora threads threadsafe tidy tiff tk toolbar tools transcode translator truetype truetype-fonts type1-fonts udev unicode unzip usb userland_GNU userlocales utf8 v4l v4l2 vcd video_cards_nv video_cards_nvidia video_cards_vesa vidix vim vim-with-x virus-scan vlm vnc vorbis webpresence wifi win32codecs winbind winpopup wma wma123 wmf wxwindows xcomposite xine xinerama xinetd xlockrc xml xml2 xmlreader xmlrpc xmlwriter xorg xosd xpm xprint xscreensaver xv xvid yahoo yv12 zeroconf zip zlib" Unset: CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, LINGUAS, MAKEOPTS, PORTAGE_RSYNC_EXTRA_OPTS an other thing is to set a test for the incompatibility between polling and inotify I've been asked to take a look ot this bug. If the latest ebuilds are attachment #104909 [details] and attachment #104910 [details], they won't be merged anytime soon. First of all, if the ebuild has automagic dependencies (as in, it checks presence of the ebuild, without caring about the useflag), you have to either fix it or make it mandatory: http://www.gentoo.org/proj/en/qa/automagic.xml . In strigiapplet, cmake is not set as a build-time dependency, in strigi it's left as a runtime dependency too. In strigi, the checks for useflags invokes a lot of subshells (..) that it should not. If no backend is selected, you should default to one, whatever the upstream default is, usually, rather than die. Don't use the echo "WARNING:", ewarn should be enough; to output empty lines, use ewarn so that they are also recorded decently. If qt4 requires dbus, they should both be enabled when needed; as you cannot disable qt4 automagic dependency right now, you have to consider dbus mandatory too. Oh, and strigiapplet should not use KDE eclass at all, as it uses cmake and not KDE's build system; if left as it is it would report debug, arts and xinerama useflags. Would be nice if this would go into Portage soon... Created attachment 112733 [details]
kde-misc/strigi-9999.ebuild (svn-ebuild)
The location of Strigi on the kde4 repository has been changed to svn://anonsvn.kde.org/home/kde/trunk/kdesupport/strigi.
Created attachment 112734 [details]
kde-misc/strigi-9999.ebuild (svn-ebuild)
The location of Strigi on the kde repository has been changed to svn://anonsvn.kde.org/home/kde/trunk/kdesupport/strigi.
Created attachment 112958 [details]
strigiapplet-0.3.11.ebuild
Fix deps, remove some useless statements.
Do you think that libextractor should be made a useflag ? (could be done like in strigi-0.3.11.ebuild )
Created attachment 112959 [details]
strigi-9999.ebuild
Fix automagics, echos, subshells and backends selection.
I didn't test all useflags thought and would recommand to comment most of them.
Created attachment 112961 [details]
strigi-0.3.11-r1.ebuild
Fix automagics, echos, subshells and backends selection.
I didn't test all useflags thought and would recommand to comment most of them.
(In reply to comment #35) Those should make a cleaner base. The ebuild (0.3.11-r1) fails to install header files. As a result if you use it to install Strigi, and then try to compile kde4 (say from the kde overlay) it'll fail saying it can't find Strigi. General Gentoo way (in my experience at least) is to install appropriate header files for a package...can you fix this? Love, Nigel (That last part from my girlfriend who was busy mocking this reply in a British accent as I typed) Actually, after emerging again to see if turning off inotify fixed my crashes, I realized it's just streamindexer.h which isn't getting installed (and which kdelibs is checking for). Perhaps this is an upstream bug in the CMakeLists file for the Strigi dir? (In reply to comment #45) > Actually, after emerging again to see if turning off inotify fixed my crashes, > I realized it's just streamindexer.h which isn't getting installed (and which > kdelibs is checking for). Perhaps this is an upstream bug in the CMakeLists > file for the Strigi dir? It seems that the CVS version install those files. You can make the 0.3.11 version to install them, just by adding doins ${S}/src/streamindexer/{analyzerloader.h,streamindexer.h} as the last line of src_install() . But I'm not sure that those files are valid on version that do not install them. Would you agree to test ? If they works, I'll post a new revision. 1) strigi 0.5.1 is out 2) shouldn't this be assigned to the Gentoo KDE team? In attachment #112961 [details] , there is a little problem :
when clucene USE flag is not set, and hyperestraier and sqlite3 are not set too, clucene is added in dependancy.
However, the "clucene" flag is not enabled.
the line : !clucene? ( !hyperestraier? ( !sqlite3? ( =dev-cpp/clucene-0.9.16* ) ) )
Calculating dependencies... done!
[ebuild N ] dev-cpp/clucene-0.9.16a USE="-static -threads" 1,480 kB
[ebuild N ] kde-misc/strigi-9999 USE="dbus qt4 -clucene -hyperestraier -inotify -log -sqlite3 -xattr -xercesc" 0 kB [1]
clucene use flag disabled, but strigi will use it and clucene will be installed
You can find the latest strigi-ebuilds in the kde-overlay. Just add it via layman: # layman -a kde I really think it's better to use those ebuilds instead of wating for updated ones in this bugreport ;) true, I am using it from the overlay meanwhile. Thanks for reminding though :) Fixed in CVS. Submited a separate bug for Strigiapplet — bug #205793 |