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

Single PCH file for building the CodeBlocks_wx31_64.cbp

(1/7) > >>

ollydbg:
Several years ago, I posted some patches to build CodeBlocks_wx30.cbp which only need to use single PCH, also, we don't need to export unnecessary symbols from the codeblocks.dll. Now those patches are manually applied to the CodeBlocks_wx31_64.cbp and related files.

You can find it here: https://github.com/asmwarrior/codeblocks_sf/tree/small_codeblocks_dll

LETARTARE:
Hello,
what are these fixes?

ollydbg:
One issue I try to fix is that I don't think it is necessary to export all the symbols  from the codeblocks.dll, only a few of them need to be exported, so this can reduce the size of the codeblocks.dll.

Another issue is: I always see two PCH file generated when building. In-fact, we can use only one PCH file for both building sdk target and other src or plugin targets.

EDIT:
http://forums.codeblocks.org/index.php/topic,20607.msg140408.html#msg140408

This is the old discussion about this issue.

oBFusCATed:
1. In my opinion this PCH stuff causes more problems than it solves. For me even slows the compilation down, because I edit some of the headers included in it very often. But most of these headers are not used everywhere, but I get a full rebuild anyway. I'll be happy to just remove it. Also full rebuilds are serialized on modern machines, because they are waiting on the 2 pch compilations.
2. Your branch contains other changes.
3. You reuse the DLLIMPORT macro for different libs, don't do it. It will cause problems some day.
4. I'm 25% into the process of removing SqPlus.
5. I'm pretty sure you've broken the --disable-pch autotools build, but I have not tested.

ollydbg:

--- Quote from: oBFusCATed on November 28, 2020, 01:11:00 pm ---1. In my opinion this PCH stuff causes more problems than it solves. For me even slows the compilation down, because I edit some of the headers included in it very often. But most of these headers are not used everywhere, but I get a full rebuild anyway. I'll be happy to just remove it. Also full rebuilds are serialized on modern machines, because they are waiting on the 2 pch compilations.
2. Your branch contains other changes.

--- End quote ---

My branch has manily two things:
1, PCH related changes, from your point, non-pch build is better, so, we can drop the PCH related changes.
2, some export related changes, I think we don't need to export every symbols from the codeblocks.dll, which makes the codeblocks.dll smaller.


--- Quote ---3. You reuse the DLLIMPORT macro for different libs, don't do it. It will cause problems some day.

--- End quote ---
which commit?


--- Quote ---4. I'm 25% into the process of removing SqPlus.

--- End quote ---
I don't know SqPlus' relatationship with my branch.


--- Quote ---5. I'm pretty sure you've broken the --disable-pch autotools build, but I have not tested.

--- End quote ---
I have only Windows build system, so, I can't test it.

Navigation

[0] Message Index

[#] Next page

Go to full version