View Issue Details

IDProjectCategoryView StatusLast Update
0027290Open CASCADEOCCT:Configurationpublic2016-12-23 11:33
ReporterabvAssigned Tobugmaster  
PrioritynormalSeverityminor 
Status closedResolutionfixed 
Target Version7.0.0Fixed in Version7.0.0 
Summary0027290: CMake configuration files for OCCT
DescriptionCMake provides standard mechanism for the package (OCCT in our case) to specify its configuration (location of components, build settings etc.) for dependent projects. We shall use this mechanism for OCCT to make it more usable by CMake-based software.

See https://cmake.org/Wiki/CMake/Tutorials/How_to_create_a_ProjectConfig.cmake_file for basic description and further references.

I suppose that implementation of CMake scripts of VTK can be used as example of how to apply this feature.

The project / package name of OCCT should be "OpenCASCADE".

At a minimum, file "OpenCASCADEConfig.cmake" should be created and installed. Additional files like "OpenCASCADEConfigVersion.cmake", "FindOpenCASCADE.cmake" can be created if reasonable.

The configuration file should indicate (in the order of decreasing priority):
- version of OCCT
- paths to headers, binaries, libs, resources
- used third-party libraries used (HAVE_*)
- installed modules / toolkits of OCCT
- other compiler and build options (e.g. compiler, static / dynamic build, etc.)
Steps To Reproduce1) Configure and generate OCCT with CMake
2) Build and install it
3) Check INSTALL_DIR/OpenCASCADEConfig.cmake and OpenCASCADEConfigVersion.cmake files
4) Try to configure, generate and build products
TagsNo tags attached.
Test case number

Relationships

parent of 0027301 closedabv Open CASCADE CMake: export targets for OCCT 

Activities

git

2016-03-23 16:47

administrator   ~0051908

Branch CR27290 has been created by ski.

SHA-1: 868bf6da96c97697b848762d5ab198790c2da17a


Detailed log of new commits:

Author: ski
Date: Wed Mar 23 16:47:04 2016 +0300

    0027290: CMake configuration files for OCCT
    
    CMake configuration file was created.

ski

2016-03-23 16:48

developer   ~0051909

OCCT branch CR27290 and PRODUCTS branch CR27290 were created.

git

2016-03-24 10:23

administrator   ~0051931

Branch CR27290 has been updated forcibly by ski.

SHA-1: 19d665a72a9cfc94e114252c666d4e0a34d7e9d3

ski

2016-03-25 14:36

developer   ~0052009

The configuration file and version file can be generated now.

PRODUCTS branch contains changes to use these files by find_package proc.
Instead of CAS_PROD_ROOT variable, CMake creates OpenCASCADE_DIR variable to save path to OCCT instalation directory.

Please, review.

git

2016-03-29 18:54

administrator   ~0052139

Branch CR27290_1 has been created by abv.

SHA-1: 33224f1c2e546f98f4a1fafec0acbf1abb4eaf0b


Detailed log of new commits:

Author: ski
Date: Thu Mar 24 10:23:03 2016 +0300

    0027290: CMake configuration files for OCCT
    
    CMake scripts improved to install CMake configuration files for OpenCASCADE product.

git

2016-03-29 22:50

administrator   ~0052143

Branch CR27290_1 has been updated forcibly by abv.

SHA-1: 1e91bf66a459587bb56f718a53ac7c504f839623

git

2016-03-30 07:45

administrator   ~0052144

Branch CR27290_1 has been updated forcibly by abv.

SHA-1: a55ba696eb18dba8f40ab36134f1cd1b5215143b

git

2016-03-30 09:49

administrator   ~0052147

Branch CR27290_1 has been updated forcibly by abv.

SHA-1: 155ddfabd27919a64a884f75d2a8d6482e28ea48

abv

2016-03-30 09:56

manager   ~0052152

Reviewed, slightly amended, and tested on Windows (vc10, vc12, vc14) and Linux (gcc). Please check compilation and installation and integrate. Note that OpenCASCADEConfig.cmake is created (by default) in lib/cmake/opencascade<-version> in Linux-style install layout, and in win64/vc10/lib in Windows-style layout.

git

2016-04-17 13:27

administrator   ~0052880

Branch CR27290 has been deleted by kgv.

SHA-1: 19d665a72a9cfc94e114252c666d4e0a34d7e9d3

git

2016-04-17 13:27

administrator   ~0052881

Branch CR27290_1 has been deleted by kgv.

SHA-1: 155ddfabd27919a64a884f75d2a8d6482e28ea48

Related Changesets

occt: master 2e48c1cb

2016-03-24 07:23:03

ski


Committer: bugmaster Details Diff
0027290: CMake configuration files for OCCT

CMake scripts are improved to install CMake configuration files for OpenCASCADE product.
Affected Issues
0027290
mod - adm/cmake/occt_defs_flags.cmake Diff File
mod - adm/cmake/vardescr.cmake Diff File
add - adm/templates/OpenCASCADEConfig.cmake.in Diff File
mod - CMakeLists.txt Diff File

Issue History

Date Modified Username Field Change
2016-03-21 13:57 abv New Issue
2016-03-21 13:57 abv Assigned To => bugmaster
2016-03-21 13:58 abv Assigned To bugmaster => ski
2016-03-21 13:58 abv Status new => assigned
2016-03-21 13:58 abv Description Updated
2016-03-23 16:47 git Note Added: 0051908
2016-03-23 16:48 ski Note Added: 0051909
2016-03-24 10:23 git Note Added: 0051931
2016-03-25 14:36 ski Note Added: 0052009
2016-03-25 14:36 ski Assigned To ski => abv
2016-03-25 14:36 ski Status assigned => resolved
2016-03-25 14:36 ski Steps to Reproduce Updated
2016-03-25 15:06 ski Relationship added parent of 0027301
2016-03-29 18:54 git Note Added: 0052139
2016-03-29 22:50 git Note Added: 0052143
2016-03-30 07:45 git Note Added: 0052144
2016-03-30 09:49 git Note Added: 0052147
2016-03-30 09:56 abv Note Added: 0052152
2016-03-30 09:56 abv Assigned To abv => bugmaster
2016-03-30 09:56 abv Status resolved => reviewed
2016-03-30 09:56 abv Target Version 7.1.0 => 7.0.0
2016-04-06 10:33 bugmaster Changeset attached => occt master 2e48c1cb
2016-04-06 10:33 bugmaster Status reviewed => verified
2016-04-06 10:33 bugmaster Resolution open => fixed
2016-04-17 13:27 git Note Added: 0052880
2016-04-17 13:27 git Note Added: 0052881
2016-04-20 15:43 aiv Fixed in Version => 7.0.0
2016-04-20 15:50 aiv Status verified => closed