MantisBT
Mantis Bug Tracker Workflow

View Issue Details Jump to Notes ] Related Changesets ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0029589Open CASCADE[OCCT] OCCT:Configurationpublic2018-03-19 08:582018-06-29 21:19
Reporterabv 
Assigned Tobugmaster 
PrioritynormalSeverityminor 
StatusclosedResolutionfixed 
PlatformOSOS Version
Product Version 
Target Version[OCCT] 7.3.0Fixed in Version[OCCT] 7.3.0 
Summary0029589: Configuration - allow MFC samples to be built when OCCT is linked statically
DescriptionCurrently building of MFC samples by CMake fails if option BUILD_LIBRARY_TYPE is set to "Static", for several reasons:
- mfcsample project gets built as DLL, not static lib
- usage of macro AFX_EXT_CLASS in classes defined in that library causes link conflicts
- paths to link libs of third-party libraries are not set due to changes made within #27380
Steps To ReproduceBuild OCCT using CMake setting BUILD_LIBRARY_TYPE to "Static" and with BUILD_MODULE_MfcSamples checked.
TagsNo tags attached.
Test case numberNot needed
Attached Files

- Relationships
related to 0029407closedabv Community Generating static libraries on macOS 
related to 0025713closedbugmaster Open CASCADE CMake configuring procedure should allow to build OCCT as static libraries 

-  Notes
(0074654)
git (administrator)
2018-03-19 15:01

Branch CR29589 has been created by abv.

SHA-1: 4d4fe34306486b634a8b17c3df38f58b8dca8273


Detailed log of new commits:

Author: abv
Date: Mon Mar 19 09:04:17 2018 +0300

    0029589: Configuration - allow MFC samples to be built when OCCT is linked statically
    
    CMake scripts are corrected to do perform search of libs and dlls of third-party libraries even for static builds of OCCT.
    Treatment of errors in this case is relaxed: not found DLLs are reported as warnings, and not found libs as warning for static build, and continuable error for shared build.
    
    Code of samples is corrected to allow building with OCCT linked statically.
    Implementation of main application class is corrected to ensure that initialization is done after all global objects are created.
    Note however that samples still fails to start for unclear reason (creation of MFC frame window fails).
(0074659)
abv (manager)
2018-03-19 15:50

Fix is pushed to CR29589, please review. Compilation has been tested in Jenkins job CR29589-master-abv.
(0074756)
apn (administrator)
2018-03-22 12:48

Reviewed. Building of MFC samples if option BUILD_LIBRARY_TYPE is set to "Static" was checked.
(0074874)
git (administrator)
2018-03-24 20:01

Branch CR29589 has been deleted by kgv.

SHA-1: 4d4fe34306486b634a8b17c3df38f58b8dca8273

- Related Changesets
occt: master 0553a8ea
Timestamp: 2018-03-19 06:04:17
Author: abv
Committer: bugmaster
Details ] Diff ]
0029589: Configuration - allow MFC samples to be built when OCCT is linked statically

CMake scripts are corrected to do perform search of libs and dlls of third-party libraries even for static builds of OCCT.
Treatment of errors in this case is relaxed: not found DLLs are reported as warnings, and not found libs as warning for static build, and continuable error for shared build.

Code of samples is corrected to allow building with OCCT linked statically.
Implementation of main application class is corrected to ensure that initialization is done after all global objects are created.
Note however that samples still fails to start for unclear reason (creation of MFC frame window fails).
mod - adm/cmake/3rdparty_macro.cmake Diff ] File ]
mod - adm/cmake/ffmpeg.cmake Diff ] File ]
mod - adm/cmake/freetype.cmake Diff ] File ]
mod - adm/cmake/qt.cmake Diff ] File ]
mod - adm/cmake/tbb.cmake Diff ] File ]
mod - adm/cmake/tcl.cmake Diff ] File ]
mod - adm/cmake/tk.cmake Diff ] File ]
mod - adm/cmake/vtk.cmake Diff ] File ]
mod - CMakeLists.txt Diff ] File ]
mod - samples/mfc/standard/05_ImportExport/src/ImportExportApp.cpp Diff ] File ]
mod - samples/mfc/standard/06_Ocaf/CMakeLists.txt Diff ] File ]
mod - samples/mfc/standard/Common/OCC_2dChildFrame.h Diff ] File ]
mod - samples/mfc/standard/Common/OCC_2dDoc.h Diff ] File ]
mod - samples/mfc/standard/Common/OCC_2dView.h Diff ] File ]
mod - samples/mfc/standard/Common/OCC_3dBaseDoc.h Diff ] File ]
mod - samples/mfc/standard/Common/OCC_3dChildFrame.h Diff ] File ]
mod - samples/mfc/standard/Common/OCC_3dDoc.h Diff ] File ]
mod - samples/mfc/standard/Common/OCC_3dView.h Diff ] File ]
mod - samples/mfc/standard/Common/OCC_App.cpp Diff ] File ]
mod - samples/mfc/standard/Common/OCC_App.h Diff ] File ]
mod - samples/mfc/standard/Common/OCC_BaseChildFrame.h Diff ] File ]
mod - samples/mfc/standard/Common/OCC_BaseDoc.h Diff ] File ]
mod - samples/mfc/standard/Common/OCC_BaseView.h Diff ] File ]
mod - samples/mfc/standard/Common/OCC_StereoConfigDlg.h Diff ] File ]
mod - samples/mfc/standard/mfcsample/CMakeLists.txt Diff ] File ]

- Issue History
Date Modified Username Field Change
2018-03-19 08:58 abv New Issue
2018-03-19 08:58 abv Assigned To => bugmaster
2018-03-19 08:58 abv Relationship added child of 0027380
2018-03-19 08:58 abv Relationship added related to 0029407
2018-03-19 08:59 abv Relationship added related to 0025713
2018-03-19 08:59 abv Relationship added related to 0022651
2018-03-19 15:01 git Note Added: 0074654
2018-03-19 15:50 abv Note Added: 0074659
2018-03-19 15:50 abv Assigned To bugmaster => apn
2018-03-19 15:50 abv Status new => resolved
2018-03-19 15:50 abv Steps to Reproduce Updated View Revisions
2018-03-22 12:48 apn Test case number => Not needed
2018-03-22 12:48 apn Note Added: 0074756
2018-03-22 12:48 apn Assigned To apn => bugmaster
2018-03-22 12:48 apn Status resolved => reviewed
2018-03-22 13:56 bugmaster Status reviewed => tested
2018-03-22 19:03 abv Target Version 7.4.0* => 7.3.0
2018-03-24 11:51 bugmaster Changeset attached => occt master 0553a8ea
2018-03-24 11:51 bugmaster Status tested => verified
2018-03-24 11:51 bugmaster Resolution open => fixed
2018-03-24 20:01 git Note Added: 0074874
2018-06-29 21:14 user533 Fixed in Version => 7.3.0
2018-06-29 21:19 user533 Status verified => closed


Copyright © 2000 - 2018 MantisBT Team
Powered by Mantis Bugtracker