News:

As usual while waiting for the next release - don't forget to check the nightly builds in the forum.

Main Menu

Ok for trunk ?

Started by reckless, April 16, 2012, 02:20:52 PM

Previous topic - Next topic

reckless

I worked over detection of the mingw64 compiler and have it working now.
Both the 32 and 64 bit versions are now detected and selectable from codeblocks on first run (didnt touch the old mingw autodetection routine).
Also added core i7 to to the -march option for optimizing for this (supported by gcc-4.6.x and up).
Ok for trunk ?.

MortenMacFly

Compiler logging: Settings->Compiler & Debugger->tab "Other"->Compiler logging="Full command line"
C::B Manual: [url="https://www.codeblocks.org/docs/main_codeblocks_en.html"]https://www.codeblocks.org/docs/main_codeblocks_en.html[/url]
C::B FAQ: [url="https://wiki.codeblocks.org/index.php?title=FAQ"]https://wiki.codeblocks.org/index.php?title=FAQ[/url]

ollydbg

Quote from: MortenMacFly on April 16, 2012, 02:28:30 PM
Quote from: reckless on April 16, 2012, 02:20:52 PM
Ok for trunk ?.
Dunno if you don't provide patches. ::)
reckless has supply the patches several months ago. (In our forum)
If some piece of memory should be reused, turn them to variables (or const variables).
If some piece of operations should be reused, turn them to functions.
If they happened together, then turn them to classes.

oBFusCATed

Link or it didn't happen...
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]

MortenMacFly

Quote from: ollydbg on April 16, 2012, 02:39:32 PM
reckless has supply the patches several months ago. (In our forum)
Quote from: oBFusCATed on April 16, 2012, 04:38:18 PM
Link or it didn't happen...
In fact searching does't reveal a patch, too for me.

Please: ALWAYS if you start a (new) topic concerning a patch, either provide a link to the patch, the patch tracker (ID) or simply attach the patch. ::)
Compiler logging: Settings->Compiler & Debugger->tab "Other"->Compiler logging="Full command line"
C::B Manual: [url="https://www.codeblocks.org/docs/main_codeblocks_en.html"]https://www.codeblocks.org/docs/main_codeblocks_en.html[/url]
C::B FAQ: [url="https://wiki.codeblocks.org/index.php?title=FAQ"]https://wiki.codeblocks.org/index.php?title=FAQ[/url]

xunxun

Regards,
xunxun

reckless

Aye that was the old one i refined several things since then.
Ill make a diff against trunk and post it here.
Or if you prefer a link to the patch ?.

reckless

#7
Hmm svn diff is buggering a bit about it luckily only on the last file so check if it writes it correctly.

link to patch http://code.google.com/p/realm/downloads/detail?name=cb-mingw64-trunk.diff&can=2&q=

I removed all x86 cpu optimisation switches from the 64bit only version (does not make much sense to optimize for a cpu that cannot run 64 bit code anyway).
Added corei7 optimization switch (supported by gcc-4.6.0 and later).
Changed default make to winmake instead of mingw32-make (actually mingw64 uses gmake but i hope they will adopt this).
Minor bugger i hope someone else can fix. Autodetect cannot find gdb (weird one as it uses the same name as on mingw) easy to fix though just point it to gdb.exe in mingw32/bin or mingw64/bin but better to fix the code.
All else works it seems.

MortenMacFly

#8
Quote from: reckless on April 16, 2012, 08:15:39 PM
link to patch http://code.google.com/p/realm/downloads/detail?name=cb-mingw64-trunk.diff&can=2&q=
Sorry to say that, but this patch is rather useless, too. Most of the changes is white-space stuff, so actually no functional change. There is an option in SVN to ignore white-space changes. You should always turn that on when creating patches or (even simpler) do not do white-space changes.

Edit1: It frightens me to death to see that the MSVC project loader has been touched when implementing support for MinGW?! ??? ??? ???

Edit2: Also, why having two classes (MinGW32, MinGW64), when MinGW32 = MinGW64 + additional params? Thats no good style. You should make the additional parameters become an option and merge the classes.
Compiler logging: Settings->Compiler & Debugger->tab "Other"->Compiler logging="Full command line"
C::B Manual: [url="https://www.codeblocks.org/docs/main_codeblocks_en.html"]https://www.codeblocks.org/docs/main_codeblocks_en.html[/url]
C::B FAQ: [url="https://wiki.codeblocks.org/index.php?title=FAQ"]https://wiki.codeblocks.org/index.php?title=FAQ[/url]

reckless

Mostly done this way to not confuse myself to much im no c++ shark but yeah that would have been the cleaner way.
Hmm was not aware of that option in svn ill check it out.
The msvc changes was to allow importing projects from msvc to mingw64 but i may have gone a bit overboard it seems to work though.

reckless

Ok the whitspace switch fixed things, still had some trouble with inconsistent line endings but got them fixed with unix2dos and svn could make the full diff after.
http://sourceforge.net/projects/cbadvanced/files/cb-mingw64-trunk.diff/download
Might not be exactly how the C::B guys want but feel free to use it as a base for a better patch.
Atleast i hope it will come in handy even if its not the most brilliant piece of work this side of eternity  :P