Description of problem: The cmake package, in Fedora, does not ship CMakeSetup. However, the cmake tarball ships a wxWidgets version of that tool. I attach a patch to the cmake package, that enables the cmakesetup tool. Well, maybe I should have been more verbose in the %description tag. The hard task was to make the wx CMakeSetup compile with a unicode-enabled wxWidgets library. That patch should be pushed upstream, if possible. Version-Release number of selected component (if applicable): cmake-2.4.8-1.fc8
Created attachment 294288 [details] Proposed patch to spec file. Includes two new patches.
Thanks for the report. I'm trying out CMakeSetup on my F8 box, but when I try to configure a project I get: terminate called after throwing an instance of 'std::logic_error' what(): basic_string::_S_construct NULL not valid and it crashes. Any ideas?
Oups. Maybe my "unicode" patch is not that bullet-proof. I'll have a look. I also noticed that the window title is scambled. Do you have a backtrace of the bug, so that I can focus on it?
Let me know if you want me to install any more debuginfo packages. What I'm doing is running CMakeSetup in the directory of a project. Specifying "." for the project dir and "fedora" for the build dir. It asks then to create the "fedora" directory. #0 0x00110402 in __kernel_vsyscall () #1 0x0052c690 in raise () from /lib/libc.so.6 #2 0x0052df91 in abort () from /lib/libc.so.6 #3 0x00a20ba0 in __gnu_cxx::__verbose_terminate_handler () from /usr/lib/libstdc++.so.6 #4 0x00a1e685 in ?? () from /usr/lib/libstdc++.so.6 #5 0x00a1e6c2 in std::terminate () from /usr/lib/libstdc++.so.6 #6 0x00a1e7fa in __cxa_throw () from /usr/lib/libstdc++.so.6 #7 0x009b490f in std::__throw_logic_error () from /usr/lib/libstdc++.so.6 #8 0x009fb09f in ?? () from /usr/lib/libstdc++.so.6 #9 0x009fb247 in std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string () from /usr/lib/libstdc++.so.6 #10 0x0817ca4b in cmGlobalGenerator::EnableLanguage (this=0x8d2ba00, languages=@0xbfd1238c, mf=0x8d2dc60) at /usr/src/debug/cmake-2.4.8/Source/cmGlobalGenerator.cxx:464 #11 0x0818bbf2 in cmGlobalUnixMakefileGenerator3::EnableLanguage (this=0x8d2ba00, languages=@0xbfd1238c, mf=0x8d2dc60) at /usr/src/debug/cmake-2.4.8/Source/cmGlobalUnixMakefileGenerator3.cxx:42 #12 0x080ca14b in cmMakefile::EnableLanguage (this=0x8d2dc60, lang=@0xbfd1238c) at /usr/src/debug/cmake-2.4.8/Source/cmMakefile.cxx:2290 #13 0x08126f85 in cmProjectCommand::InitialPass (this=0x8d2e9a0, args=@0xbfd123d4) at /usr/src/debug/cmake-2.4.8/Source/cmProjectCommand.cxx:75 #14 0x08137b75 in cmCommand::InvokeInitialPass (this=0x8d2e9a0, args=@0x8d35e04) at /usr/src/debug/cmake-2.4.8/Source/cmCommand.h:66 #15 0x080c5997 in cmMakefile::ExecuteCommand (this=0x8d2dc60, lff=@0x8d35e00) at /usr/src/debug/cmake-2.4.8/Source/cmMakefile.cxx:337 #16 0x080cad0a in cmMakefile::ReadListFile (this=0x8d2dc60, filename_in=0x8c4055c "/export/home/orion/fedora/kdesvn/devel/kdesvn-0.14.1/CMakeLists.txt", external_in=0x0) at /usr/src/debug/cmake-2.4.8/Source/cmMakefile.cxx:481 #17 0x0819d369 in cmLocalGenerator::Configure (this=0x8d2bc00) at /usr/src/debug/cmake-2.4.8/Source/cmLocalGenerator.cxx:66 #18 0x081ac418 in cmLocalUnixMakefileGenerator3::Configure (this=0x8d2bc00) at /usr/src/debug/cmake-2.4.8/Source/cmLocalUnixMakefileGenerator3.cxx:73 #19 0x08178312 in cmGlobalGenerator::Configure (this=0x8d2ba00) at /usr/src/debug/cmake-2.4.8/Source/cmGlobalGenerator.cxx:642 #20 0x0810a1be in cmake::Configure (this=0x8c2c1b8) at /usr/src/debug/cmake-2.4.8/Source/cmake.cxx:1658 #21 0x0809d89d in CMakeSetupFrm::RunCMake (this=0x8a44918, generateProjectFiles=false) at /usr/src/debug/cmake-2.4.8/Source/WXDialog/CMakeSetupFrame.cpp:1213 #22 0x0809e435 in CMakeSetupFrm::DoConfigure (this=0x8a44918) at /usr/src/debug/cmake-2.4.8/Source/WXDialog/CMakeSetupFrame.cpp:1122 #23 0x0683c2f5 in wxAppConsole::HandleEvent () from /usr/lib/libwx_baseu-2.8.so.0 #24 0x068e680f in wxEvtHandler::ProcessEventIfMatches () from /usr/lib/libwx_baseu-2.8.so.0 #25 0x068e695d in wxEventHashTable::HandleEvent () from /usr/lib/libwx_baseu-2.8.so.0 #26 0x068e6ac6 in wxEvtHandler::ProcessEvent () from /usr/lib/libwx_baseu-2.8.so.0 ---Type <return> to continue, or q <return> to quit--- #27 0x07dfa86b in wxWindowBase::TryParent () from /usr/lib/libwx_gtk2u_core-2.8.so.0 #28 0x068e6a7b in wxEvtHandler::ProcessEvent () from /usr/lib/libwx_baseu-2.8.so.0 #29 0x07dfa86b in wxWindowBase::TryParent () from /usr/lib/libwx_gtk2u_core-2.8.so.0 #30 0x068e6a7b in wxEvtHandler::ProcessEvent () from /usr/lib/libwx_baseu-2.8.so.0 #31 0x07dfa86b in wxWindowBase::TryParent () from /usr/lib/libwx_gtk2u_core-2.8.so.0 #32 0x068e6a7b in wxEvtHandler::ProcessEvent () from /usr/lib/libwx_baseu-2.8.so.0 #33 0x07d1b520 in ?? () from /usr/lib/libwx_gtk2u_core-2.8.so.0 #34 0x00ab2409 in g_cclosure_marshal_VOID__VOID () from /lib/libgobject-2.0.so.0 #35 0x00aa4f83 in g_closure_invoke () from /lib/libgobject-2.0.so.0 #36 0x00ab5771 in ?? () from /lib/libgobject-2.0.so.0 #37 0x00ab6997 in g_signal_emit_valist () from /lib/libgobject-2.0.so.0 #38 0x00ab6b59 in g_signal_emit () from /lib/libgobject-2.0.so.0 #39 0x02fb8bb9 in gtk_button_clicked () from /usr/lib/libgtk-x11-2.0.so.0 #40 0x02fba506 in ?? () from /usr/lib/libgtk-x11-2.0.so.0 #41 0x08a398e8 in ?? () #42 0x02fba4c2 in ?? () from /usr/lib/libgtk-x11-2.0.so.0 #43 0xbfd130d8 in ?? () #44 0x00ab2409 in g_cclosure_marshal_VOID__VOID () from /lib/libgobject-2.0.so.0 (gdb) up 10 #10 0x0817ca4b in cmGlobalGenerator::EnableLanguage (this=0x8d2ba00, languages=@0xbfd1238c, mf=0x8d2dc60) at /usr/src/debug/cmake-2.4.8/Source/cmGlobalGenerator.cxx:464 464 std::string projectCompatibility = mf->GetDefinition("CMAKE_ROOT"); Got this from a core file. Process runs okay when run under gdb.
Sorry Orion. I have been very busy with my daily job. I do not know how to reproduce your crash correctly. However, I agree that my patch is not so correct, because I see strange behavior (such as a scrambled window title). Maybe it is safer to forget my proposal and close the bug.
I'm happy to leave the bug open until you have a chance to work on it some more.
Orion, as next release of CMake has a better GUI (using Qt), let's close that bug. Do you plan to push cmake-2.6 to released versions of Fedora (F-8, and soon F-9)?
Sounds good. Currently 2.6 will be in F-10. I'm hesitant to push to F-8 and F-9 as there are some incompatibilities with 2.4. Perhaps after 2.6 has been out for a while and projects have a chance to adapt.