MantisBT
Mantis Bug Tracker Workflow

View Issue Details Jump to Notes ] Related Changesets ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0024888Open CASCADE[OCCT] OCCT:Configurationpublic2014-04-30 16:102016-11-21 13:03
Reporteribs 
Assigned Tobugmaster 
PrioritynormalSeverityminor 
StatusclosedResolutionfixed 
PlatformOSOS Version
Product Version[OCCT] 6.7.1 
Target Version[OCCT] 6.8.0Fixed in Version[OCCT] 6.8.0 
Summary0024888: Refactoring of OCCT CMake meta-project
DescriptionRefactoring of OCCT CMake meta-project includes:
* find_package usage in search for 3rdparty products
* use (first of all) default CMake's tcl and freetype search scripts
* do not use *_dll variable in lin/mac case
TagsNo tags attached.
Test case number
Attached Files

- Relationships
related to 0025244closedbugmaster CMake building procedure should support VTK usage 
related to 0025140closedbugmaster CMake: ask for Tcl/Tk only if build Draw option is chosen 
related to 0025141closedbugmaster CMake / MinGW: link recipe fails due to long command 
related to 0025146closedbugmaster Porting to Android 
related to 0028135closedapn Configuration - adopt building script for using built-in Android cross-compiling support in CMake 3.7 

-  Notes
(0029382)
ibs (developer)
2014-05-19 11:14
edited on: 2014-05-30 11:10

dear rnv, please review CR24888 OCCT and WOK branches

(0030476)
git (administrator)
2014-07-29 17:32

Branch CR24888 has been updated forcibly by ibs.

SHA-1: f04186b1c96ab99bb29f2a98ec7c953dcf8eb4d7
(0030515)
rnv (developer)
2014-08-01 10:57

My remarks on the current CMake OCCT build procedure:

1. Using of the custom variables BUILD_CONFIGURATION and INSTALL_DIR variables which are duplicates CMAKE_BUILD_TYPE and CMAKE_INSTALL_PREFIX variables. Why define and use new variables which duplicate built-in CMake standard variables?

2. Third party detection mechanism: at the moment detection of the third party libraries done in the strange custom way, which doesn’t use standard CMake find_package() macro.

3. There are a lot of the unnecessary CMake custom macros in the OCCTMacros.cmake. In my opinion several macros can be suppressed because each such macro defines one or several variables and values of these variables don’t change during generation of the project, so these variables can be defined one time in the OCCTDefsAndFlags.cmake script, for example. There is a list of such macros:
 - OCCT_MAKE_BUILD_POSTFIX
 - OCCT_MAKE_COMPILER_BITNESS
 - OCCT_MAKE_OS_WITH_BITNESS
 - OCCT_MAKE_COMPILER_SHORT_NAME

4. Why create separate CMake project for the each OCCT toolkit?
(0030517)
ibs (developer)
2014-08-01 11:16

rnv, thanks for your remarks.
(0031758)
git (administrator)
2014-09-16 14:56

Branch CR24888 has been updated forcibly by ibs.

SHA-1: 825cdfdc1580e0e632889dc410d25d87eb683427
(0031759)
ibs (developer)
2014-09-16 14:57
edited on: 2014-09-16 15:15

dear bugmaster,
please test CR24888 occt and wok branches

(0031766)
ibs (developer)
2014-09-16 15:20

1. generate cmake files by wok for win and lin systems
2. generate vc-projects (win) or automake (lin)
3. build generated projects
4. run testgrid test
(0031772)
bugmaster (administrator)
2014-09-16 16:40

Usage of VTK can not be defined from cmake procedure
(0031777)
git (administrator)
2014-09-16 17:11

Branch CR24888 has been updated forcibly by ibs.

SHA-1: 86e10d7170cdb644c266c70c30dac0b9289cc685
(0031778)
ibs (developer)
2014-09-16 17:20

VTK is moved to separate issue 0025244.
(0031779)
ibs (developer)
2014-09-16 17:20

dear bugmaster, please test this issue that doesn't contain vtk support anymore
(0031785)
git (administrator)
2014-09-16 18:35

Branch CR24888 has been updated by ibs.

SHA-1: a6e6924c177d771b2be689fba917453de5e613bc


Detailed log of new commits:

Author: ibs
Date: Tue Sep 16 18:34:49 2014 +0400

    The messages of freetype search process added

(0031824)
git (administrator)
2014-09-17 17:32

Branch CR24888 has been updated forcibly by ibs.

SHA-1: 1d080f3babd401fc8387a5b2cd3adade929623f4
(0031856)
git (administrator)
2014-09-18 13:00

Branch CR24888 has been updated by ibs.

SHA-1: ae2619add0338904c808f90978b5a3968a803802


Detailed log of new commits:

Author: ibs
Date: Thu Sep 18 12:58:56 2014 +0400

    [CMAKE] custom.sh.in uses library variables instead unused dll ones.
    
    -DDEBUG remove from CMAKE_CXX_FLAGS_DEBUG and CMAKE_C_FLAGS_DEBUG
    
    hide unused 3rdparty in android case
    
    also messages of freetype search mechanism slightly updated

(0031858)
bugmaster (administrator)
2014-09-18 13:36

Fix has been tested on Linux and Windows platforms with HAVE_VTK=false
All are OK.
(0032397)
git (administrator)
2014-09-30 11:35

Branch CR24888 has been deleted by inv.

SHA-1: ae2619add0338904c808f90978b5a3968a803802

- Related Changesets
occt: master 9f33b387
Timestamp: 2014-09-18 11:22:02
Author: ibs
Committer: bugmaster
Details ] Diff ]
0024888: Refactoring of OCCT CMake meta-project

user sees just dirs of libs, shared libs and headers of 3rdparty products
documentation updated

3rdparty search priority was fixed: 1. user paths; 2. system paths
3rdparty debug usage fixed
vtk search introduced
occt information, generated by wok, was divided onto two files: occt_toolkits.cmake and occt_inc_toolkits.cmake
additional behavior of cmake search for freetype 2.5.1 and above

CMake (version < 3.0) don't know about new place of config/ftheader.h in freetype 2.5.1. There are cases when cmake seeks config/ftheader.h in defined place (3RDPARTY_FREETYPE_DIR variable), doesn't find it and start new search in system places. If system has own freetype header- cmake will find it and 3RDPARTY_FREETYPE* variables will point to different places. This situation is avoided

tcl, freetype, vtk are checked before usage of it (CSF variables usage)
tbb search mechanism was refactored
freetype search is processed by default cmake mechanism
tcl search is processed by default cmake mechanism

3rdparty macro seeks debug libraries (and release if debug ones aren't found); 3rdparty dll is sought in win case only

ADD_SUBDIRECTORY preferred to SUBDIRS

gendoc.bat search for tclsh.exe in user's system

0025141: CMake / MinGW: link recipe fails due to long command

0025146: Porting to Android

OCCT documentation updated. "Building with CMake and ADT for Android" article added

[CMAKE] custom.sh.in uses library variables instead unused dll ones.

-DDEBUG remove from CMAKE_CXX_FLAGS_DEBUG and CMAKE_C_FLAGS_DEBUG

hide unused 3rdparty in android case

also messages of freetype search mechanism slightly updated
add - adm/templates/3rdparty_macro.cmake Diff ] File ]
mod - adm/templates/custom.bat.in Diff ] File ]
mod - adm/templates/custom.bat.main Diff ] File ]
mod - adm/templates/custom.sh.in Diff ] File ]
mod - adm/templates/custom.sh.main Diff ] File ]
mod - adm/templates/env.bat.in Diff ] File ]
mod - adm/templates/env.sh.in Diff ] File ]
add - adm/templates/freeimage.cmake Diff ] File ]
add - adm/templates/freeimageplus.cmake Diff ] File ]
add - adm/templates/freetype.cmake Diff ] File ]
add - adm/templates/gl2ps.cmake Diff ] File ]
add - adm/templates/glx.cmake Diff ] File ]
add - adm/templates/occt_defs_flags.cmake Diff ] File ]
add - adm/templates/occt_macros.cmake Diff ] File ]
add - adm/templates/opencl.cmake Diff ] File ]
mod - adm/templates/tbb.cmake Diff ] File ]
mod - adm/templates/tcl.cmake Diff ] File ]
mod - CMakeLists.txt Diff ] File ]
add - dox/dev_guides/building/android/android.md Diff ] File ]
add - dox/dev_guides/building/android/images/android_image001.png Diff ] File ]
add - dox/dev_guides/building/android/images/android_image002.png Diff ] File ]
add - dox/dev_guides/building/android/images/android_image003.png Diff ] File ]
add - dox/dev_guides/building/android/images/android_image004.png Diff ] File ]
add - dox/dev_guides/building/android/images/android_image005.png Diff ] File ]
add - dox/dev_guides/building/android/images/android_image006.png Diff ] File ]
add - dox/dev_guides/building/android/images/android_image007.png Diff ] File ]
add - dox/dev_guides/building/android/images/android_image008.png Diff ] File ]
add - dox/dev_guides/building/android/images/android_image009.png Diff ] File ]
add - dox/dev_guides/building/android/images/android_image010.png Diff ] File ]
mod - dox/dev_guides/building/building.md Diff ] File ]
mod - dox/dev_guides/building/cmake/cmake.md Diff ] File ]
rm - dox/dev_guides/building/cmake/images/cmake_image006.png Diff ] File ]
mod - dox/FILES_HTML.txt Diff ] File ]
mod - dox/overview/overview.md Diff ] File ]
mod - gendoc.bat Diff ] File ]
mod - samples/mfc/standard/01_Geometry/CMakeLists.txt Diff ] File ]
mod - samples/mfc/standard/02_Modeling/CMakeLists.txt Diff ] File ]
mod - samples/mfc/standard/03_Viewer2d/CMakeLists.txt Diff ] File ]
mod - samples/mfc/standard/04_Viewer3d/CMakeLists.txt Diff ] File ]
mod - samples/mfc/standard/05_ImportExport/CMakeLists.txt Diff ] File ]
mod - samples/mfc/standard/06_Ocaf/CMakeLists.txt Diff ] File ]
mod - samples/mfc/standard/07_Triangulation/CMakeLists.txt Diff ] File ]
mod - samples/mfc/standard/08_HLR/CMakeLists.txt Diff ] File ]
mod - samples/mfc/standard/09_Animation/CMakeLists.txt Diff ] File ]
mod - samples/mfc/standard/10_Convert/CMakeLists.txt Diff ] File ]
mod - samples/mfc/standard/mfcsample/CMakeLists.txt Diff ] File ]

- Issue History
Date Modified Username Field Change
2014-04-30 16:10 ibs New Issue
2014-04-30 16:10 ibs Assigned To => ibs
2014-05-12 14:38 ibs Description Updated View Revisions
2014-05-19 11:06 ibs Status new => resolved
2014-05-19 11:07 ibs Note Added: 0029381
2014-05-19 11:07 ibs Assigned To ibs => bugmaster
2014-05-19 11:07 ibs Status resolved => reviewed
2014-05-19 11:13 ibs Note Deleted: 0029381
2014-05-19 11:14 ibs Assigned To bugmaster => ibs
2014-05-19 11:14 ibs Status reviewed => assigned
2014-05-19 11:14 ibs Note Added: 0029382
2014-05-19 11:14 ibs Assigned To ibs => rnv
2014-05-19 11:14 ibs Status assigned => resolved
2014-05-19 15:57 ibs Note Edited: 0029382 View Revisions
2014-05-22 14:03 ibs Status resolved => feedback
2014-05-30 11:10 ibs Note Edited: 0029382 View Revisions
2014-07-01 15:36 ibs Assigned To rnv => ibs
2014-07-01 15:36 ibs Assigned To ibs => rnv
2014-07-29 17:32 git Note Added: 0030476
2014-08-01 10:57 rnv Note Added: 0030515
2014-08-01 10:57 rnv Status feedback => reviewed
2014-08-01 10:58 rnv Status reviewed => assigned
2014-08-01 10:58 rnv Assigned To rnv => ibs
2014-08-01 11:16 ibs Note Added: 0030517
2014-09-16 11:29 ibs Relationship added related to 0025140
2014-09-16 11:30 ibs Relationship added related to 0025114
2014-09-16 11:30 ibs Relationship added related to 0025141
2014-09-16 11:31 ibs Relationship deleted related to 0025114
2014-09-16 14:56 git Note Added: 0031758
2014-09-16 14:57 ibs Note Added: 0031759
2014-09-16 14:57 ibs Assigned To ibs => bugmaster
2014-09-16 14:57 ibs Status assigned => resolved
2014-09-16 15:15 ibs Note Edited: 0031759 View Revisions
2014-09-16 15:16 ibs Status resolved => reviewed
2014-09-16 15:20 ibs Note Added: 0031766
2014-09-16 16:40 bugmaster Note Added: 0031772
2014-09-16 16:40 bugmaster Assigned To bugmaster => ibs
2014-09-16 16:40 bugmaster Status reviewed => assigned
2014-09-16 16:53 ibs Description Updated View Revisions
2014-09-16 16:57 ibs Relationship added related to 0025244
2014-09-16 17:11 git Note Added: 0031777
2014-09-16 17:20 ibs Note Added: 0031778
2014-09-16 17:20 ibs Status assigned => resolved
2014-09-16 17:20 ibs Note Added: 0031779
2014-09-16 17:20 ibs Status resolved => reviewed
2014-09-16 18:35 git Note Added: 0031785
2014-09-17 16:42 abv Relationship added related to 0025146
2014-09-17 17:32 git Note Added: 0031824
2014-09-18 13:00 git Note Added: 0031856
2014-09-18 13:36 bugmaster Note Added: 0031858
2014-09-18 13:36 bugmaster Status reviewed => tested
2014-09-19 13:42 bugmaster Changeset attached => occt master 9f33b387
2014-09-19 13:42 bugmaster Assigned To ibs => bugmaster
2014-09-19 13:42 bugmaster Status tested => verified
2014-09-19 13:42 bugmaster Resolution open => fixed
2014-09-30 11:35 git Note Added: 0032397
2014-11-11 12:44 aiv Fixed in Version => 6.8.0
2014-11-11 12:58 aiv Status verified => closed
2016-11-21 13:03 kgv Relationship added related to 0028135


Copyright © 2000 - 2020 MantisBT Team
Powered by Mantis Bugtracker