Developer forums (C::B DEVELOPMENT STRICTLY!) > Development

Code::Blocks still plans to keep using Configure/Make, correct?

(1/2) > >>

Code::Blocks still plans to keep using Configure/Make, correct?

I am thinking about trying to create an MSys2 CB Package and wish to confirm CB has no serious plans to stop using the configure/make build system. I figure the two obvious ways was the cb project via cbp2make or using the configure/make method to create an MSys2 MinGW package for Code::Blocks. There was an CB user who suggested cmake about two years ago; but, I think that went no where.

The build systems I have glanced at in the last 5 years to build CB are:
1. configure/make  pros CB currently uses it and a lot of other projects use it
2. cbp2make          pros the CB team seems to have taken over the cbp2make project
3. cmake               pros seems to be a lot of projects using it
4. premake            pros looked like a nice system; but, few people are using it

Current plan is to create a MSys2 MinGW package for just cbp2make and see it it can create anything useful when applied to CB core project only. If the result is bad, try once more to use configure/make and see it it can produce useful output for just CB core (no contrib plugin) in a short time frame.

If that fails, then review the pros and cons on premake and cmake (cmake is the one likely to be chosen) and pick one to try.

Status updates below:
Using cbp2make looks to be too much work; just getting cbp2make to work is too much work.
Since, I am trying to learn cmake, I might try that next.

Tim S.

Configure/make is Linux (and the like) only, so you would still need something for Windows. Premake is just way too limited especially in regard to finding external libraries.

Go CMake right away. It works in automated CLI environments but also in GUI environments. Tool support for CMake is getting better and its library metadata format is spreading. Be aware though, doing CMake right is not easy and will take lots of time. Use the latest available version and don't care about anything before.

It took me months to get the build of wxFormBuilder done, but now it is entirely driven by CMake on all three platforms. No more external helper scripts that are a pain to maintain. Only the debian and flatpak builds are external, but with their support for using CMake, driving the build is essential a one-liner.


--- Quote from: sodev on July 29, 2022, 05:31:12 pm ---Configure/make is Linux (and the like) only, so you would still need something for Windows.

--- End quote ---

Years ago, I got MSys2 to build an non working Code::Blocks using configure and someone took that work and tried to finish it.
I think I saved the broken work somewhere.

Tim S.

I have C::B building on Windows using the configre/make, but it is slow 30 minutes compared to 10 minutes using the workspace. My build includes additional plugins so it does take longer than a normal C::B build takes. I used the Linux non debian process as a starting point and made the mods as required to get it to work. The windows make/configure process create the files in the develop3x_yy directory structure like the workspace does and as such can then be used by the NSIS installer process.

The changes are in my GIT repo. You should be able to take the chanegs in the root. debian and m4 directories along with the and build with Windows. I also have it building using Github workflow for Windows, Linuix and Mac that may help out to see how it works in a CI environment.

IMHO the boostrap/configure/make process is outdated and needs to be modernized as very few people use it daily and as I have found getting support/help from other C::B devs is almost non existent. I think cmake is the way to go. I had a friend who converted a C::B project for a poker machine to cmake in about 4 days from start to finish with the only knowledge with CMake is that it is a make system that is smarter and better than make and is used allot.

I think CMake get more popular these years.

I'm not quite familiar with CMake, but when building under Windows, do we need third library checks? I mean I don't see those check especially when using the cbp/workspace build system. So, I guess is that CMake under Windows just need to add the source file and necessary libries?  ;)


[0] Message Index

[#] Next page

Go to full version