View Issue Details

IDProjectCategoryView StatusLast Update
0004533The Dark ModCodingpublic06.06.2018 03:58
Reporterstgatilov Assigned Tostgatilov  
Status closedResolutionfixed 
Product VersionSVN 
Summary0004533: VC++ build cleaning
DescriptionThere are lots of minor issues now when building TDM in MSVC.

1. Mute/disable compiler warnings.
2. Make sure x86 and x64 versions build the same set of cpp files.
3. Why is "ignore default library LIBCMT.lib" hack necessary ?
4. Disable LTCG and choose proper build of PolarSSL.
5. Use FFmpeg as dll OR build static lib of smaller size.
6. Unify usage of minizip in game and engine.
7. Make win32 and win64 directories similar in structure.
8. Look through vcxproj and clean them up...

9. Find some memory leak detection which works.
10. Check build speed, especially in multicore case.
11. Update FFmpeg and rebuilt libs.

Note: all of the points should work equally well at least in Debug, Debug with Inlines, and Release configurations on both x86 and x64 platforms.
TagsNo tags attached.


related to 0004544 resolvedduzenko Exclude the (multiplayer) network code for now. 
related to 0004826 resolvedstgatilov Remove ID hacks from third-party libraries: minizip and libjpeg 
related to 0004810 resolvedstgatilov Stop shipping/using outdated bundles of dependencies 
related to 0004822 resolvedstgatilov Restructure third-party libraries in code SVN 




16.05.2017 15:55

developer   ~0008863


I wish there was a like button in bug-tracker!


04.06.2017 12:06

developer   ~0008883

3. I am rather ignorant with C++ but I guess that some of the used lib's were build against the static C++ runtime (libcmt.lib), so the linker tries to add the stuff from there rather than from the crt dll.
5. done?
6. Solved by the single executable change?


13.06.2017 02:13

administrator   ~0008903

Point 6 is not done.
framework/minizip/* contains Doom3-customized version of minizip, which duplicates what ExtLibs has.
Removing this internal version is not as trivial as you think, because it has some Doom3-specific methods.


06.06.2018 03:57

administrator   ~0010504

Last edited: 06.06.2018 03:57

View 2 revisions

1. [compiler warnings] not so important now
2. [same set of cpp files] done during 2.06
3. [ignore LIBCMT.lib] duzenko explains it, should be fixed with 3-rd party libs update
4. [LTCG and PolarSSL] should be fixed with 3-rd party libs update
5. [FFmpeg as dll] this is about 3-rd party update again
6. [minizip] moved to 0004826
7. [win32/64 directories] will be fixed by 0004822
8. [clean vcxproj] done during 2.06

9. [memory leak detection] I hope I'll do it some day =)
10. [build speed] not important for me with new Ryzen =)
11. [update FFmpeg] part of 3-rd party libs update.

Right now third party libs update belongs to 0004810, but probably it will moved to another issue.

This, I'm closing this uber-issue =)

Issue History

Date Modified Username Field Change
16.05.2017 15:45 stgatilov New Issue
16.05.2017 15:45 stgatilov Status new => assigned
16.05.2017 15:45 stgatilov Assigned To => stgatilov
16.05.2017 15:55 nbohr1more Note Added: 0008863
04.06.2017 12:06 duzenko Note Added: 0008883
11.06.2017 07:29 stgatilov Description Updated View Revisions
12.06.2017 19:40 duzenko Relationship added related to 0004544
13.06.2017 02:13 stgatilov Note Added: 0008903
26.06.2017 17:13 stgatilov Description Updated View Revisions
06.06.2018 03:50 stgatilov Relationship added related to 0004826
06.06.2018 03:57 stgatilov Note Added: 0010504
06.06.2018 03:57 stgatilov Note Edited: 0010504 View Revisions
06.06.2018 03:57 stgatilov Relationship added related to 0004810
06.06.2018 03:57 stgatilov Relationship added related to 0004822
06.06.2018 03:58 stgatilov Status assigned => closed
06.06.2018 03:58 stgatilov Resolution open => fixed