Ebuild for rapidsvn a Cross-platform GUI front-end for the Subversion revision system first ebuild i made so ;) Reproducible: Always Steps to Reproduce: 1. 2. 3.
Created attachment 15123 [details] ebuild
Created attachment 15124 [details] ebuild
sorry for adding it twice but bugzilla was giving me an error
I tried installing RapidSVN from your ebuild, and got the following error: ----- (/usr/local/portage/dev-util/rapidsvn) $ ACCEPT_KEYWORDS="~x86" sudo emerge rapidsvn-0.2.0.ebuild Calculating dependencies ...done! !!! Error: the >=apache-2* package conflicts with this package and both can't be installed on the same system together. ----- I took a look at both this ebuild and the Apache 2.0.47 ebuild, but I couldn't see anything that would cause them to conflict. Can someone explain?
That is probably from the depend on dev-util/subversion-0.26.0 which can depend on apache2 maybe try with USE="-apache2 -berkdb"
I probably won't get to this till later in the week
No it is reverse. The subversion ebuild can build without or with apache2 as it has an internal libapr. This internal lib is used when apache2 is not in the useflags. But when apache2 is installed nonetheless, the ebuild will bail out to prevent the conflict from occurring. When running with the apache2 useflag things should work.
committed, thanks for the help guys
The ebuild fails to compile with subversion built with USE="apache2 berkdb". The last error messages are: if g++ -DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE=\"rapidsvn\" -DVERSION=\"0.2.0\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -I. -I. -Wall -g -fexceptions -DLINUX=2 -D_REENTRANT -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_SVID_SOURCE -D_GNU_SOURCE -I/usr/include/apache2 -I/usr/include/apache2 -I/usr/include/subversion-1 -I/usr/lib/wx/include/gtk2-2.4 -DGTK_NO_CHECK_CASTS -D__WXGTK__ -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES -O2 -mcpu=i686 -pipe -Wall -g -fexceptions -pthread -I/usr/lib/wx/include/gtk2-2.4 -DGTK_NO_CHECK_CASTS -D__WXGTK__ -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES -MT view_action.o -MD -MP -MF ".deps/view_action.Tpo" \ -c -o view_action.o `test -f 'view_action.cpp' || echo './'`view_action.cpp; \ then mv -f ".deps/view_action.Tpo" ".deps/view_action.Po"; \ else rm -f ".deps/view_action.Tpo"; exit 1; \ fi if g++ -DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE=\"rapidsvn\" -DVERSION=\"0.2.0\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -I. -I. -Wall -g -fexceptions -DLINUX=2 -D_REENTRANT -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_SVID_SOURCE -D_GNU_SOURCE -I/usr/include/apache2 -I/usr/include/apache2 -I/usr/include/subversion-1 -I/usr/lib/wx/include/gtk2-2.4 -DGTK_NO_CHECK_CASTS -D__WXGTK__ -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES -O2 -mcpu=i686 -pipe -Wall -g -fexceptions -pthread -I/usr/lib/wx/include/gtk2-2.4 -DGTK_NO_CHECK_CASTS -D__WXGTK__ -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES -MT workbench.o -MD -MP -MF ".deps/workbench.Tpo" \ -c -o workbench.o `test -f 'workbench.cpp' || echo './'`workbench.cpp; \ then mv -f ".deps/workbench.Tpo" ".deps/workbench.Po"; \ else rm -f ".deps/workbench.Tpo"; exit 1; \ fi /bin/sh ../libtool --mode=link g++ -O2 -mcpu=i686 -pipe -Wall -g -fexceptions -pthread -I/usr/lib/wx/include/gtk2-2.4 -DGTK_NO_CHECK_CASTS -D__WXGTK__ -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES -o rapidsvn -Lsvncpp -L/usr/lib about_dlg.o action.o add_action.o auth_dlg.o checkout_action.o checkout_dlg.o cleanup_action.o commit_action.o commit_dlg.o delete_action.o delete_dlg.o destination_dlg.o exceptions.o external_program_action.o filelist_ctrl.o file_info.o folder_browser.o folder_item_data.o get_action.o import_action.o import_dlg.o log_action.o log_dlg.o merge_action.o merge_dlg.o mkdir_action.o move_action.o preferences.o preferences_dlg.o property_action.o property_dlg.o proportional_splitter.o rapidsvn_app.o rapidsvn_frame.o report_dlg.o resolve_action.o revert_action.o simple_worker.o svn_notify.o switch_action.o tracer.o trace_update.o tviewer.o update_action.o update_dlg.o utils.o verblist.o view_action.o workbench.o -lsvncpp -lsvn_client-1 -lsvn_wc-1 -lsvn_ra-1 -lsvn_delta-1 -lsvn_subr-1 -lneon -L/usr/lib -lapr-0 -lrt -lm -lcrypt -lnsl -ldl -L/usr/lib -laprutil-0 -lldap -llber -lgdbm -ldb -lexpat -pthread -lwx_gtk2-2.4 mkdir .libs g++ -O2 -mcpu=i686 -pipe -Wall -g -fexceptions -pthread -I/usr/lib/wx/include/gtk2-2.4 -DGTK_NO_CHECK_CASTS -D__WXGTK__ -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES -o .libs/rapidsvn about_dlg.o action.o add_action.o auth_dlg.o checkout_action.o checkout_dlg.o cleanup_action.o commit_action.o commit_dlg.o delete_action.o delete_dlg.o destination_dlg.o exceptions.o external_program_action.o filelist_ctrl.o file_info.o folder_browser.o folder_item_data.o get_action.o import_action.o import_dlg.o log_action.o log_dlg.o merge_action.o merge_dlg.o mkdir_action.o move_action.o preferences.o preferences_dlg.o property_action.o property_dlg.o proportional_splitter.o rapidsvn_app.o rapidsvn_frame.o report_dlg.o resolve_action.o revert_action.o simple_worker.o svn_notify.o switch_action.o tracer.o trace_update.o tviewer.o update_action.o update_dlg.o utils.o verblist.o view_action.o workbench.o -pthread -L/var/tmp/portage/rapidsvn-0.2.0/work/rapidsvn-0.2.0/src/svncpp -L/usr/lib /var/tmp/portage/rapidsvn-0.2.0/work/rapidsvn-0.2.0/src/svncpp/.libs/libsvncpp.so /usr/lib/libsvn_client-1.so /usr/lib/libsvn_wc-1.so /usr/lib/libsvn_diff-1.so /usr/lib/libsvn_ra-1.so /usr/lib/libsvn_ra_local-1.so /usr/lib/libsvn_repos-1.so /usr/lib/libsvn_fs-1.so -ldb4 /usr/lib/libsvn_ra_dav-1.so -lpthread /usr/lib/libsvn_ra_svn-1.so /usr/lib/libsvn_delta-1.so /usr/lib/libsvn_subr-1.so /usr/lib/libneon.so /usr/lib/libxml2.so -lz /usr/lib/libapr-0.so -lrt -lm -lcrypt /usr/lib/libaprutil-0.so /usr/lib/libldap.so -lnsl -lresolv -ldl -lssl -lcrypto /usr/lib/liblber.so /usr/lib/libgdbm.so -ldb /usr/lib/libexpat.so -lwx_gtk2-2.4 /usr/lib/gcc-lib/i686-pc-linux-gnu/3.2.3/../../../../i686-pc-linux-gnu/bin/ld: cannot find -ldb4 collect2: ld returned 1 exit status make[2]: *** [rapidsvn] Error 1 make[2]: Leaving directory `/var/tmp/portage/rapidsvn-0.2.0/work/rapidsvn-0.2.0/src' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/rapidsvn-0.2.0/work/rapidsvn-0.2.0/src' make: *** [all-recursive] Error 1 !!! ERROR: dev-util/rapidsvn-0.2.0 failed. !!! Function src_compile, Line 32, Exitcode 2 !!! (no error message) If I use a subversion installation without berdb and apache2 support (client only) compiling rapidsvn works. Perhaps the ebuild should try to build a client-only version of subversion and link statically against it like the evolution ebuild does it with db-3
Ok, you probably have a subversion ebuild that has its own static db. Because of some apparent braindamage somewhere rapidsvn tries to link to db though while that is clearly not necessary (as db is allready in the libraries). This could be caused by the subversion la files. I'll try to look into this. In the meanwhile you could merge db-4.0.14 and remerge subversion. In that case subversion should use a shared db which can obviously be found.
g++ -DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE=\"rapidsvn\" -DVERSION=\"0.2.0\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -I. -I. -Wall -g -fexceptions -DLINUX=2 -D_REENTRANT -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_SVID_SOURCE -D_GNU_SOURCE -I/usr/include/apr-0 -I/usr/include/apr-0 -I/usr/include -I/usr/include/subversion-1 -I/usr/lib/wx/include/gtk2-2.4 -DGTK_NO_CHECK_CASTS -D__WXGTK__ -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES -mcpu=athlon-xp -O3 -pipe -fomit-frame-pointer -Wall -g -fexceptions -pthread -I/usr/lib/wx/include/gtk2-2.4 -DGTK_NO_CHECK_CASTS -D__WXGTK__ -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES -MT context.lo -MD -MP -MF .deps/context.Tpo -c context.cpp -o context.o >/dev/null 2>&1 client_modify.cpp: In member function `void svn::Client::resolve(const svn::Path&, bool)': client_modify.cpp:238: `svn_client_resolve' undeclared (first use this function) client_modify.cpp:238: (Each undeclared identifier is reported only once for each function it appears in.) make[2]: *** [client_modify.lo] Error 1 make[2]: *** Waiting for unfinished jobs.... mv -f .libs/context.lo context.lo make[2]: Leaving directory `/var/tmp/portage/rapidsvn-0.2.0/work/rapidsvn-0.2.0/src/svncpp' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/rapidsvn-0.2.0/work/rapidsvn-0.2.0/src' make: *** [all-recursive] Error 1 !!! ERROR: dev-util/rapidsvn-0.2.0 failed. !!! Function src_compile, Line 30, Exitcode 2 !!! (no error message) Ideas?
Alcino, we will need more info from you. At the very least emerge info, versions of related packages (svn, apache, etc) would help, and anything else you can think of.
I committed a new version that fixes some problems, if you guys could give it a try and let us know if you have any success
I've just hit the db linking error again: /usr/lib/gcc-lib/i686-pc-linux-gnu/3.2.2/../../../../i686-pc-linux-gnu/bin/ld: cannot find -ldb4 The command I used was `USE=-doc emerge rapidsvn`, which upgraded subversion from 0.21.0-r1 to 0.26.0 Then I tried to follow Paul de Vrieze's suggestions by emerging db: Calculating dependencies ...done! [ebuild U ] sys-libs/db-4.0.14-r2 [3.2.9-r1] After this, I unmerged & re-emerged subversion, and finally merged dev-util/rapidsvn 0.2.0 -- successfully! Off-topic question: after rapidsvn failed to emerge, its source was sprawling all over /var/tmp/portage/rapidsvn-0.2.0/work/rapidsvn-0.2.0 How does one tell portage to mop this up?
portage won't clean it up unless you emerge that package again, you can delete the directory without any negative consequences
can people test the newer version and let me know if they have luck
i'm unable to compile subversion 0.28, still trying to find whats wrong with that one, i will test it as soon as i get subversion to play nice
works perfectly for me now
here too :)