Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 56371 - ardour-0.9_beta17 needs GCC-3.4 tweaks
Summary: ardour-0.9_beta17 needs GCC-3.4 tweaks
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo Sound Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-07-07 13:43 UTC by Frank van de Pol (RETIRED)
Modified: 2004-07-16 02:35 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
ardour-0.9_beta17-gcc34.patch (ardour-0.9_beta17-gcc34.patch,3.27 KB, patch)
2004-07-07 18:10 UTC, Patrick Dawson (RETIRED)
Details | Diff
ardour-0.9_beta17-gcc34.patch (ardour-0.9_beta17-gcc34.patch,9.24 KB, patch)
2004-07-10 20:43 UTC, Patrick Dawson (RETIRED)
Details | Diff
ardour-0.9_beta17-gcc34.patch (ardour-0.9_beta17-gcc34.patch,9.34 KB, patch)
2004-07-11 11:16 UTC, Patrick Dawson (RETIRED)
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Frank van de Pol (RETIRED) gentoo-dev 2004-07-07 13:43:06 UTC
ardour-0.9_beta17 needs some GCC-3.4 tweaks:

g++ -DHAVE_CONFIG_H -I. -I. -I.     -D_REENTRANT -O3 -fomit-frame-pointer -ffast-math -fstrength-reduce -fmove-all-movables -Wall -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -I/var/tmp/portage/ardour-0.9_beta17/work/ardour-0.9beta17.1/libs/sigc++ -I/var/tmp/portage/ardour-0.9_beta17/work/ardour-0.9beta17.1/libs/sigc++/sigc++/config -I/var/tmp/portage/ardour-0.9_beta17/work/ardour-0.9beta17.1/libs/pbd -I/var/tmp/portage/ardour-0.9_beta17/work/ardour-0.9beta17.1/libs/midi++ -I/var/tmp/portage/ardour-0.9_beta17/work/ardour-0.9beta17.1/libs/ardour -I/var/tmp/portage/ardour-0.9_beta17/work/ardour-0.9beta17.1/libs/soundtouch -I/usr/include/libxml2   -c -o pool.o `test -f 'pool.cc' || echo './'`pool.cc
pathscanner.cc: In member function `std::string* PathScanner::find_first(const std::string&, const std::string&, bool, bool)':
pathscanner.cc:171: error: `vector_delete' undeclared (first use this function)
pathscanner.cc:171: error: (Each undeclared identifier is reported only once for each function it appears in.)
pathscanner.cc: In member function `std::string* PathScanner::find_first(const std::string&, bool (*)(const std::string&, void*), void*, bool, bool)':
pathscanner.cc:198: error: `vector_delete' undeclared (first use this function)
make[4]: *** [pathscanner.o] Error 1
make[4]: *** Waiting for unfinished jobs....
make[4]: Leaving directory `/var/tmp/portage/ardour-0.9_beta17/work/ardour-0.9beta17.1/libs/pbd'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/var/tmp/portage/ardour-0.9_beta17/work/ardour-0.9beta17.1/libs/pbd'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/var/tmp/portage/ardour-0.9_beta17/work/ardour-0.9beta17.1/libs/pbd'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/ardour-0.9_beta17/work/ardour-0.9beta17.1/libs'
make: *** [all-recursive] Error 1


Reproducible: Always
Steps to Reproduce:
1.
2.
3.

Actual Results:  
 

Expected Results:
Comment 1 Patrick Dawson (RETIRED) gentoo-dev 2004-07-07 18:10:27 UTC
Created attachment 34962 [details, diff]
ardour-0.9_beta17-gcc34.patch

I'm using gcc-3.4.1 on x86. I'm submitting what I've done so far, but it looks
like this one has lots of problems. After my patch, it dies in libs/gtkmm.
Comment 2 Eldad Zack (RETIRED) gentoo-dev 2004-07-10 06:42:26 UTC
Seems upstream is aware of that issue:

http://www.ardour.org/mantis/bug_view_page.php?bug_id=0000534

Maybe you can help with that effort? There's already some of the gcc 3.4 patches.
Comment 3 Patrick Dawson (RETIRED) gentoo-dev 2004-07-10 20:43:52 UTC
Created attachment 35141 [details, diff]
ardour-0.9_beta17-gcc34.patch

Thanks for the link!

Since the old GTK and libsigc++ code is being phased out of ardour in the near
future, there honestly doesn't seem much point in working on it upstream. As
paul says, "we are not really interested in patching gtkmm". In the interest of
getting gcc-3.4 working for Gentoo users, I've done my best to create a short
patch to make ardour compile and run with gcc-3.3 or 3.4. Most of my work is
based on Simone Piunno's patches.

To keep my patch small, I've simply removed a number of "protected:" keywords
rather than rewriting the GTK code to use inheritance properly. Obviously this
is bad C++ coding style, but as far as I know, it will not alter the
functionality of the class. I'll be doing more extensive testing as soon as I
can. Let me know if I've made some horrible mistake; I'm new here ;-)
Comment 4 Jeremy Huddleston (RETIRED) gentoo-dev 2004-07-10 21:08:39 UTC
Patrick, thanks for the help.  Everyone started out "new here," and based on your apparent enthusiasm, I'd say it's a good beginning.  ooh... and if you want to help out with more gcc-3.4 patches, that would be greatly appreciated... just search bugzilla, and take note of the gracious devs =)

Eldad, can you please test this patch and commit?
Comment 5 Eldad Zack (RETIRED) gentoo-dev 2004-07-11 01:25:05 UTC
Patrick, thanks for the patch!

It applies cleanly against the sources.
I'll do the QA (though it will take me abit, hardware limitations...)

And also, it'll be great if you take it upstream - I think paul will be willing to merge this, the patch looks (beside two lines I didn't quite follow) pretty simple.


Comment 6 Patrick Dawson (RETIRED) gentoo-dev 2004-07-11 08:09:39 UTC
Unfortunately, ardour segfaults on startup, at least for me. It's either a problem with gcc-3.4 itself or something to do with operator* in base.h. The Gtk::wrap function doesn't exist, so I thought it would be safe to just remove that, like Simone did. Perhaps not. I'll take a closer look at this tomorrow when I have time.
Comment 7 Patrick Dawson (RETIRED) gentoo-dev 2004-07-11 08:36:21 UTC
Nope, ardour segfaults if I use this patch and compile with gcc-3.3.4 too. To clarify, it doesn't segfault immediately; it dies after loading my configuration files and initializing some audio stuff, which is just about when it would normally start the GUI.
Comment 8 Patrick Dawson (RETIRED) gentoo-dev 2004-07-11 08:59:36 UTC
Confirmed; removing the patch to operator* in base.h and leaving the rest allows ardour to compile and run correctly on gcc-3.3.4. I'll figure out how to patch this correctly ASAP.
Comment 9 Patrick Dawson (RETIRED) gentoo-dev 2004-07-11 11:16:34 UTC
Created attachment 35196 [details, diff]
ardour-0.9_beta17-gcc34.patch

Alright! This one starts and doesn't segfault. I'll submit my changes upstream
after this gets more thoroughly tested.
Comment 10 Eldad Zack (RETIRED) gentoo-dev 2004-07-12 04:02:17 UTC
Ok, I've just started compiling it, I'll take it for a spin, and if it looks stable, I'll commit it.

Thanks, Patrick!
Comment 11 Eldad Zack (RETIRED) gentoo-dev 2004-07-14 00:00:36 UTC
Looks good. Though I had a crash with beta17, but it also occured without the patch.
and I think it's an open issue in ardour (scheduled next tarball)

I'll be putting this in.
Comment 12 Eldad Zack (RETIRED) gentoo-dev 2004-07-16 02:35:33 UTC
ok, the updated ebuild is now in portage.