From e4b77a4e7fdff70f008e3b69adb8f3da71adf20d Mon Sep 17 00:00:00 2001 From: ibs Date: Tue, 12 Aug 2014 13:11:35 +0400 Subject: [PATCH] 0025146: Porting to Android osutils.tcl - link to GLESv2 gl2ps, x-libs disabled for android. GLESv1_CM/EGL libraries added for OpenGL ES 1.1 emulator supports a per-thread CPU usage timer turned on for android 0024444: Fix compilation issues on some not fully POSIX compliant Unix systems list of being used android hide draw module if current occt building for android --- src/WOKTclLib/OS.tcl | 8 ++++++++ src/WOKTclLib/osutils.tcl | 34 ++++++++++++++++++++++++++++++---- 2 files changed, 38 insertions(+), 4 deletions(-) diff --git a/src/WOKTclLib/OS.tcl b/src/WOKTclLib/OS.tcl index fcea405..60363e7 100755 --- a/src/WOKTclLib/OS.tcl +++ b/src/WOKTclLib/OS.tcl @@ -2992,7 +2992,15 @@ proc OS:MKCMK { theOutDir {theModules {}} {theAllSolution ""} } { # modules of occt set aBuff [list] foreach aModule $theModules { + if {$aModule == "Draw"} { + lappend aBuff "IF (NOT DEFINED ANDROID)" + } + lappend aBuff "SET(BUILD_${aModule} ON CACHE BOOL \"include ${aModule}\" )" + + if {$aModule == "Draw"} { + lappend aBuff "ENDIF()" + } } regsub -all -- {__MODULE_LIST__} $aModulesTmpl [join $aBuff "\n"] aModulesTmpl diff --git a/src/WOKTclLib/osutils.tcl b/src/WOKTclLib/osutils.tcl index 33d4ffe..6b490b5 100755 --- a/src/WOKTclLib/osutils.tcl +++ b/src/WOKTclLib/osutils.tcl @@ -1897,7 +1897,7 @@ proc osutils:csfList { theOS theCsfMap theTarget} { set aCsfMap(CSF_OpenGlLibs) "GLU GL" } elseif { "$theOS" == "mac" } { - set aCsfMap(CSF_objc) "objc" + set aCsfMap(CSF_objc) "objc" # frameworks set aCsfMap(CSF_Appkit) "Appkit" @@ -1905,10 +1905,15 @@ proc osutils:csfList { theOS theCsfMap theTarget} { set aCsfMap(CSF_OpenGlLibs) "OpenGL" set aCsfMap(CSF_TclLibs) "Tcl" set aCsfMap(CSF_TclTkLibs) "Tk" + } elseif { "$theOS" == "android" } { + set aCsfMap(CSF_ThreadLibs) "c" + set aCsfMap(CSF_OpenGlLibs) "EGL GLESv2" } - set aCsfMap(CSF_XwLibs) "X11 Xext Xmu Xi" - set aCsfMap(CSF_MotifLibs) "X11" + if { "$theOS" != "android" } { + set aCsfMap(CSF_XwLibs) "X11 Xext Xmu Xi" + set aCsfMap(CSF_MotifLibs) "X11" + } # variable is required for support for OCCT version that use fgtl #-- FTGL (font renderer for OpenGL) @@ -1925,7 +1930,9 @@ proc osutils:csfList { theOS theCsfMap theTarget} { set aCsfMap(CSF_FreeImagePlus) "freeimage" #-- GL2PS - set aCsfMap(CSF_GL2PS) "gl2ps" + if { "$theOS" != "android" } { + set aCsfMap(CSF_GL2PS) "gl2ps" + } #-- OpenCL set aCsfMap(CSF_OPENCL) "OpenCL" @@ -2016,6 +2023,7 @@ proc osutils:cmktk { theOutDir theToolKit {theIsExec false} theModule} { set anUsedWntLibs [osutils:usedOsLibs $theToolKit "wnt" cmake] set anUsedUnixLibs [osutils:usedOsLibs $theToolKit "lin" cmake] set anUsedMacLibs [osutils:usedOsLibs $theToolKit "mac"] + set anUsedAndroidLibs [osutils:usedOsLibs $theToolKit "android"] set anUnits [list] foreach anUnitWithPath [osutils:tk:units [woklocate -u $theToolKit]] { @@ -2221,6 +2229,24 @@ proc osutils:cmktk { theOutDir theToolKit {theIsExec false} theModule} { lappend aFileBuff " list( APPEND ${theToolKit}_USED_LIBS ${anUsedMacLib} )" } } + lappend aFileBuff "elseif(ANDROID)" + foreach anUsedAndroidLib $anUsedAndroidLibs { + if { $anUsedAndroidLib == "tbb" || $anUsedAndroidLib == "tbbmalloc" } { + lappend aFileBuff " if(USE_TBB)" + lappend aFileBuff " list( APPEND ${theToolKit}_USED_LIBS ${anUsedAndroidLib} )" + lappend aFileBuff " endif()" + } elseif { $anUsedAndroidLib == "freeimage" } { + lappend aFileBuff " if(USE_FREEIMAGE)" + lappend aFileBuff " list( APPEND ${theToolKit}_USED_LIBS ${anUsedAndroidLib} )" + lappend aFileBuff " endif()" + } elseif { $anUsedAndroidLib == "gl2ps" } { + lappend aFileBuff " if(USE_GL2PS)" + lappend aFileBuff " list( APPEND ${theToolKit}_USED_LIBS ${anUsedAndroidLib} )" + lappend aFileBuff " endif()" + } elseif { $anUsedAndroidLib != "" } { + lappend aFileBuff " list( APPEND ${theToolKit}_USED_LIBS ${anUsedAndroidLib} )" + } + } lappend aFileBuff "else()" foreach anUsedUnixLib $anUsedUnixLibs { if { $anUsedUnixLib == "tbb" || $anUsedUnixLib == "tbbmalloc" } { -- 2.39.5