Author Topic: svn r8764 breaks linux-build  (Read 8768 times)

Offline Jenna

  • Administrator
  • Lives here!
  • *****
  • Posts: 7252
svn r8764 breaks linux-build
« on: January 07, 2013, 07:05:00 pm »
The changes to wxLED in svn r8764 break the build on linux.
The cause is, that the system headers of wxWidgets are included before our own.
This happens because wx-config is called in Compiler options and zthe search-directories are added later.
The changes in ledctrl.cpp are not compatible with the enum in the system-ledctrl.h, where wxLED_ALIGN_CENTER and wxLED_ALIGN_MASK still have the same value (0x04).
This can be avoided by manually adding the search dir to the targets compiler options and prepending them, so our includes are searched before the system-includes.

But apart from this, we can (pbviously) always run into trouble, if we have our own versions of controls, that are now part of wxWidgets.

Was the update really needed, or woukld it be better to use the wxWidgets version of wxLED ?
Should we rename "our" version ?

What's the best way to handle this for now (and for the future) ?

Offline MortenMacFly

  • Administrator
  • Lives here!
  • *****
  • Posts: 9720
Re: svn r8764 breaks linux-build
« Reply #1 on: January 07, 2013, 07:49:11 pm »
What's the best way to handle this for now (and for the future) ?
I wasn't aware that there is a WX version... where? Is it wx 2.9.x?
Compiler logging: Settings->Compiler & Debugger->tab "Other"->Compiler logging="Full command line"
C::B Manual: https://www.codeblocks.org/docs/main_codeblocks_en.html
C::B FAQ: https://wiki.codeblocks.org/index.php?title=FAQ

Offline MortenMacFly

  • Administrator
  • Lives here!
  • *****
  • Posts: 9720
Re: svn r8764 breaks linux-build
« Reply #2 on: January 07, 2013, 07:54:58 pm »
I wasn't aware that there is a WX version... where? Is it wx 2.9.x?
Aaaaaaaaaah! No I got it. Its still one of these f**** contrib includes I guess. These have to be removed (I did that for the wx29 projects already). None of our plugins uses contrib stuff and in wx2.9.x there is no contrib anymore. That would be the solution.
Compiler logging: Settings->Compiler & Debugger->tab "Other"->Compiler logging="Full command line"
C::B Manual: https://www.codeblocks.org/docs/main_codeblocks_en.html
C::B FAQ: https://wiki.codeblocks.org/index.php?title=FAQ

Offline MortenMacFly

  • Administrator
  • Lives here!
  • *****
  • Posts: 9720
Re: svn r8764 breaks linux-build
« Reply #3 on: January 07, 2013, 07:59:13 pm »
....mmmmh. On seconds thoughts... How to do when you use wx-config? I suppose the include originate from this script, right? Is there a switch to suppress this particular include? ???
Compiler logging: Settings->Compiler & Debugger->tab "Other"->Compiler logging="Full command line"
C::B Manual: https://www.codeblocks.org/docs/main_codeblocks_en.html
C::B FAQ: https://wiki.codeblocks.org/index.php?title=FAQ

Offline Jenna

  • Administrator
  • Lives here!
  • *****
  • Posts: 7252
Re: svn r8764 breaks linux-build
« Reply #4 on: January 07, 2013, 08:17:41 pm »
In wx-2.8.12 source-tree it is in contrib/include/wx/, but in the installed wxwidgets (at least on fedora) it is in /usr/include/wx-2.8/wx/.
So no way to exclude it.

Offline Jenna

  • Administrator
  • Lives here!
  • *****
  • Posts: 7252
Re: svn r8764 breaks linux-build
« Reply #5 on: January 07, 2013, 08:20:47 pm »
I just looked into the debian-package, and it is in the same folder as on fedora.

Offline MortenMacFly

  • Administrator
  • Lives here!
  • *****
  • Posts: 9720
Re: svn r8764 breaks linux-build
« Reply #6 on: January 07, 2013, 08:47:49 pm »
So I am lost now. The problem is its a pure wx2.8 "some Linux platforms" issue it seems. Shall we "fix" whats obsolete sooner or later?

I would prefer (if there is a way) that we take our sources as they will be needed for wx2.9 anyways. So if there is a way to prepend the appropriate folder on Linux that'd be fine.

Alternatively feel free to revert the revision in question and we will hopefully remember once we switch to wx2.9. :P
Compiler logging: Settings->Compiler & Debugger->tab "Other"->Compiler logging="Full command line"
C::B Manual: https://www.codeblocks.org/docs/main_codeblocks_en.html
C::B FAQ: https://wiki.codeblocks.org/index.php?title=FAQ

Offline Jenna

  • Administrator
  • Lives here!
  • *****
  • Posts: 7252
Re: svn r8764 breaks linux-build
« Reply #7 on: January 07, 2013, 10:02:39 pm »
I would prefer (if there is a way) that we take our sources as they will be needed for wx2.9 anyways. So if there is a way to prepend the appropriate folder on Linux that'd be fine.
As I wrote adding the include-dir to the compiler options manually (instead of using search-dirs tab for it) and prepending the target optins to the project options works.
I will commit a fix this evening.