DiscussionsIssue archiveOCCT:Configuration

Archived issue #0029514

Configuration, CMake - OpenGL ES should be available for Linux

Open CASCADEOCCT:Configurationclosed6 public notes

Search issues

Description

Current logic expects for using OpenGL ES and EGL:
- Android/iOS: unconditionally enabled.
  HAVE_GLES2 and HAVE_EGL are not needed to be defined by CMake (but linkage libraries should be set appropriately, using platform SDK).
- Windows, desktop: optional (disabled by default).
  Building environment should find 3rdparty implementation of GLESv2 and EGL (Angle project).
- Windows, UWP: unconditionally enabled.
  Building environment should find 3rdparty implementation of GLESv2 and EGL (Angle project).
- Linux: OpenGL ES cannot be selected.
# OpenGL ES 2.0
if (WIN32 AND CAN_USE_GLES2)
  if ("${CMAKE_SYSTEM_NAME}" STREQUAL "WindowsStore")
    set (USE_GLES2 ON)
  else()
    set (USE_GLES2 OFF CACHE BOOL "${USE_GLES2_DESCR}")
  endif()


The behavior on Linux is incorrect - modern systems provide GLESv2 and EGL, so OCCT can be optionally built with them as alternative to desktop OpenGL (GL library).

For this, CMake scripts should be adjusted (genproj already allows building with GLESv2 on Linux).

As further extension, it is desired including a dedicated Jenkins job, which would allow building OCCT with GLESv2 enabled on Linux system and execute tests on such configuration.
This can be done by introducing a new flag in standard testing job, so that this will be limited by weekly tests and optionally forced while testing branches containing changes in TKOpenGl toolkit.

Public activity

6 archived notes

Participants are labeled by their role within this record.

01Commenter 2
Branch [archived branch] has been created by Commenter 3.

[revision removed]


Detailed log of new commits:

Author: Commenter 3
Date: Mon Feb 19 12:24:55 2018 +0300

    0029514: Configuration, CMake - OpenGL ES should be available for Linux
    
    Allow optionally building OCCT with GLESv2 and EGL on Linux
02Commenter 3
Opportunity for optional building of OCCT with GLESv2 and EGL on Linux was added to CR29514. All missing gles and egl dev packages were installed on work stations. Jenkins job with USE_GLES2 option and appropriate testing reference data will be created.
03Commenter 2
Branch [archived branch] has been updated forcibly by Commenter 3.

[revision removed]
04Commenter 3
Dear kgv, could you please review OCCT and PRODUCTS branches CR29514.
Testing results:
OCCT: http://occt-tests/IR-2018-02-16-APN-GLES-OCCT/Debian70-64/summary.html
PRODUCTS: http://occt-tests/IR-2018-02-16-APN-GLES-Products/Debian70-64/summary.html
05Author
Patch looks OK, if tested.
06Commenter 2
Branch [archived branch] has been deleted by Author.

[revision removed]

Related records