Author Topic: The 13 August 2022 build (12864) is out.  (Read 25804 times)

Offline killerbot

  • Administrator
  • Lives here!
  • *****
  • Posts: 5490
Re: The 13 August 2022 build (12864) is out.
« Reply #15 on: August 16, 2022, 07:17:36 am »
building 3.1.7 :

patching:
* 2D patch (see below)
* (aui floating window) https://github.com/wxWidgets/wxWidgets/commit/0e57ed18518d0417759346541dd3c60e1f3e5e8e


2D patch:
Code
include/wx/msw/setup.h

#if defined(_MSC_VER) && _MSC_VER >= 1600
    #define wxUSE_GRAPHICS_DIRECT2D wxUSE_GRAPHICS_CONTEXT
#else
    #define wxUSE_GRAPHICS_DIRECT2D 0
#endif

==> just 1 line
    #define wxUSE_GRAPHICS_DIRECT2D wxUSE_GRAPHICS_CONTEXT


and build instruction:
Code
mingw32-make -f makefile.gcc SHARED=1 MONOLITHIC=1 BUILD=release UNICODE=1 VENDOR=cb CXXFLAGS+="-std=c++11"

Offline Miguel Gimenez

  • Developer
  • Lives here!
  • *****
  • Posts: 1553
Re: The 13 August 2022 build (12864) is out.
« Reply #16 on: August 16, 2022, 02:58:55 pm »
If nobody has objections I will commit the MSW projects for wxWidgets 3.2 in 32 and 64 bits.

Offline gd_on

  • Lives here!
  • ****
  • Posts: 796
Re: The 13 August 2022 build (12864) is out.
« Reply #17 on: August 16, 2022, 06:50:35 pm »
If you are interested, here is a set of cbp files which are a compromise between standard wx31_64.cbps and Andrew Cotrell's versions. They need to set global variables and work for 32/64 bits, 3.0, 3.1, 3.2, and future wxwidgets versions. Just update need to be adapted (which is not the case for Andrew Cotrell versions because they are integrated in each cbp.)
« Last Edit: August 25, 2022, 07:17:32 pm by gd_on »
Windows 11 64 bits (23H2), svn C::B (last version or almost!), wxWidgets 3.2.4 (tests with 3.3), Msys2 Compilers 13.2.0, 64 bits (seh, posix : gcc, g++ and gfortran in C:\msys64\mingw64) or 32 bits (dwarf2, posix  in C:\msys64\mingw32).

Offline killerbot

  • Administrator
  • Lives here!
  • *****
  • Posts: 5490
Re: The 13 August 2022 build (12864) is out.
« Reply #18 on: August 16, 2022, 08:36:05 pm »
why do we even still but the effort in 32 bits, is there still some operating system supported by the vendors in 32 bit ?

Offline killerbot

  • Administrator
  • Lives here!
  • *****
  • Posts: 5490
Re: The 13 August 2022 build (12864) is out.
« Reply #19 on: August 16, 2022, 08:37:00 pm »
I support the idea we only have 1 cbp file which can deal somehow in a nice way with whatever wx version, instead of maintaining near duplicates.

Offline AndrewCot

  • Plugin developer
  • Lives here!
  • ****
  • Posts: 678
Re: The 13 August 2022 build (12864) is out.
« Reply #20 on: August 17, 2022, 12:34:03 am »
gd_on,
Thanks for taking the time to check out my project file changes and taking the time to make them better as per below.

Is it possible to get a 7z file with the directory structure preserved as then the project files will land in the correct directory if you unzip it in the correct directory. If you have a repo some where with the code I can grab the files from there to save time.

Is is also possible to get a copy of the config snippet for the global variables needed?
From my quick 5 minute look it seems that the $(CB_BUILD) has not been included. If this is the only change then it will help out a heck of allot and ensure that only one set of project files are
needed. The lack of using $(CB_BUILD) is a good one as it does bite when you move code and I have no problems with it's removal as it will lessen issues devs face (btw I keep getting issues with when I make copies of the soruce tree and forget to update it, so I am starting to <expletive removed> with it and have been thinking of reverting it for the last month). I will be incorporating the removal of the $(CB_BUILD) as I think it is the correct way to go.



Offline ollydbg

  • Developer
  • Lives here!
  • *****
  • Posts: 5910
  • OpenCV and Robotics
    • Chinese OpenCV forum moderator
Re: The 13 August 2022 build (12864) is out.
« Reply #21 on: August 17, 2022, 04:35:38 am »

Is is also possible to get a copy of the config snippet for the global variables needed?
From my quick 5 minute look it seems that the $(CB_BUILD) has not been included. If this is the only change then it will help out a heck of allot and ensure that only one set of project files are
needed. The lack of using $(CB_BUILD) is a good one as it does bite when you move code and I have no problems with it's removal as it will lessen issues devs face (btw I keep getting issues with when I make copies of the soruce tree and forget to update it, so I am starting to <expletive removed> with it and have been thinking of reverting it for the last month). I will be incorporating the removal of the $(CB_BUILD) as I think it is the correct way to go.

I just looked at the Cbps.7z file supplied by gd_on, it has some code snippet like:

Code
			<Target title="scintilla">
<Option output="devel$(#WXWIDGETS.WX_VERSION)_$(#CB_BUILD.OSBITS)/wxscintilla_cb" prefix_auto="1" extension_auto="1" />
<Option working_dir="" />
<Option object_output=".objs$(#WXWIDGETS.WX_VERSION)_$(#CB_BUILD.OSBITS)" />

So, I'm not sure how can you do that if you remove the "$(CB_BUILD)" (global variable) and use the existing "cb_release_type" variable?
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.

Offline gd_on

  • Lives here!
  • ****
  • Posts: 796
Re: The 13 August 2022 build (12864) is out.
« Reply #22 on: August 17, 2022, 10:58:06 am »
Here is an other packaging of my cbps for windows. I have also added in a pdf how env_vars are configured for me.
Nevetheless, my cbps still use some update*.bat which are not wxwidgets version independant. May be need still some work...
« Last Edit: August 25, 2022, 07:17:58 pm by gd_on »
Windows 11 64 bits (23H2), svn C::B (last version or almost!), wxWidgets 3.2.4 (tests with 3.3), Msys2 Compilers 13.2.0, 64 bits (seh, posix : gcc, g++ and gfortran in C:\msys64\mingw64) or 32 bits (dwarf2, posix  in C:\msys64\mingw32).

Offline MortenMacFly

  • Administrator
  • Lives here!
  • *****
  • Posts: 9694
Re: The 13 August 2022 build (12864) is out.
« Reply #23 on: August 17, 2022, 11:08:31 am »
why do we even still but the effort in 32 bits, is there still some operating system supported by the vendors in 32 bit ?
From my point of view: Yes.

Reasons are:
1.) 32 bit IDE for 32 Bit compilers which are very well common in embedded environment (where you have the issue that a 32 bit gdb will not work in a 64 bit runtime)
2.) Schools and universities (which are main users of C::B) are still on 32 bit quite often
3.) We were nagged several times after we tried to released 64 bit only. We can try again, but I guess we will again be asked accordingly
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: 9694
Re: The 13 August 2022 build (12864) is out.
« Reply #24 on: August 17, 2022, 11:10:38 am »
Nevetheless, my cbps still use some update*.bat which are not wxwidgets version independant. May be need still some work...
I once played around with that and made the batch file accept a command line parameter that defines the wx version. This used to work. (I.e. when calling the batch file just call it with the value of the #wx global var.)
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 AndrewCot

  • Plugin developer
  • Lives here!
  • ****
  • Posts: 678
Re: The 13 August 2022 build (12864) is out.
« Reply #25 on: August 17, 2022, 12:21:28 pm »
I agree with Morten's reasons for keeping 32 bit support. I have been asked via PM's about about 4 or 5 times in the last year and Miguel built one a week or two ago. XAV build's nightly Windows 32 releases which end users can use without anyone knowing.


Offline Xaviou

  • Regular
  • ***
  • Posts: 402
    • X@v's wxStuff
Re: The 13 August 2022 build (12864) is out.
« Reply #26 on: August 17, 2022, 12:35:27 pm »
Hi.
why do we even still but the effort in 32 bits, is there still some operating system supported by the vendors in 32 bit ?
I'm still using a Win10-32bits at work on witch I have running version of Code::Blocks (it's why I regularly propose 32 bits versions of the nightly).

Regards.
Xav'
The french wxWidgets site : http://www.wxdev.fr
My wxWidgets's stuff : https://wxstuff.xaviou.fr/

Offline ollydbg

  • Developer
  • Lives here!
  • *****
  • Posts: 5910
  • OpenCV and Robotics
    • Chinese OpenCV forum moderator
Re: The 13 August 2022 build (12864) is out.
« Reply #27 on: August 17, 2022, 02:46:23 pm »
If nobody has objections I will commit the MSW projects for wxWidgets 3.2 in 32 and 64 bits.
I think we can commit the wx 3.2 cbps, and let people try the wx 3.2 builds.

The unified version cbps could be added later.
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.

Offline Miguel Gimenez

  • Developer
  • Lives here!
  • *****
  • Posts: 1553
Re: The 13 August 2022 build (12864) is out.
« Reply #28 on: August 17, 2022, 03:00:21 pm »
I agree with you, the unified version needs some testing/polishing and would delay usage of wx3.2.

I think it could be commited in parallel and become the only version by wx3.3.

Offline gd_on

  • Lives here!
  • ****
  • Posts: 796
Re: The 13 August 2022 build (12864) is out.
« Reply #29 on: August 17, 2022, 03:40:30 pm »
Quote
The unified version cbps could be added later.
Quote
the unified version needs some testing/polishing
Ok for me. Look also to Andrew's versions.
Windows 11 64 bits (23H2), svn C::B (last version or almost!), wxWidgets 3.2.4 (tests with 3.3), Msys2 Compilers 13.2.0, 64 bits (seh, posix : gcc, g++ and gfortran in C:\msys64\mingw64) or 32 bits (dwarf2, posix  in C:\msys64\mingw32).