47071f8e86f483fd6c5d749f0df094cc27ebdd6a
[occt.git] / adm / cmake / occt_csf.cmake
1 # CSF variables definition
2
3 if(CSFS_ALREADY_INCLUDED)
4   return()
5 endif()
6 set(CSFS_ALREADY_INCLUDED 1)
7
8
9 if (NOT DEFINED USE_TCL)
10   OCCT_IS_PRODUCT_REQUIRED (CSF_TclLibs USE_TCL)
11 endif()
12
13 if (USE_TCL AND BUILD_SHARED_LIBS)
14   if ("${3RDPARTY_TCL_LIBRARY_VERSION}" STREQUAL "")
15     message (STATUS "Warning: TCL version has not been specified by CSF_TclLibs defining thus it will be used as 8.6")
16     set (3RDPARTY_TCL_LIBRARY_VERSION "8.6")
17   endif()
18
19   if ("${3RDPARTY_TK_LIBRARY_VERSION}" STREQUAL "")
20     message (STATUS "Warning: TK version has not been specified by CSF_TclTkLibs defining thus it will be used as 8.6")
21     set (3RDPARTY_TK_LIBRARY_VERSION "8.6")
22   endif()
23 endif()
24
25 if (USE_TBB)
26   set (CSF_TBB "tbb tbbmalloc")
27 else()
28   set (CSF_TBB)
29 endif()
30
31 if (WIN32)
32   set (CSF_advapi32      "advapi32.lib")
33   set (CSF_gdi32         "gdi32.lib")
34   set (CSF_user32        "user32.lib")
35   set (CSF_wsock32       "wsock32.lib")
36   set (CSF_winspool      "Winspool.lib")
37   set (CSF_psapi         "Psapi.lib")
38   set (CSF_AviLibs       "ws2_32.lib vfw32.lib")
39   if ("${CMAKE_SYSTEM_NAME}" STREQUAL "WindowsStore" OR USE_GLES2)
40     set (CSF_OpenGlLibs  "libEGL.lib libGLESv2.lib")
41   else()
42     set (CSF_OpenGlLibs  "opengl32.lib")
43   endif()
44
45   if (USE_FREETYPE)
46     set (CSF_FREETYPE "freetype.lib")
47   else()
48     set (CSF_FREETYPE)
49   endif()
50
51   if (USE_GL2PS)
52     set (CSF_GL2PS "gl2ps.lib")
53   else()
54     set (CSF_GL2PS)
55   endif()
56
57   if (USE_FREEIMAGE)
58     set (CSF_FreeImagePlus "freeimage.lib")
59   else()
60     set (CSF_FreeImagePlus)
61   endif()
62
63   if (USE_TCL)
64     set (CSF_TclLibs     "tcl${3RDPARTY_TCL_LIBRARY_VERSION}.lib")
65     set (CSF_TclTkLibs   "tk${3RDPARTY_TK_LIBRARY_VERSION}.lib")
66   endif()
67
68 else()
69
70   if (APPLE)
71     set (CSF_objc        "objc")
72
73     # frameworks
74     find_library (Appkit_LIB NAMES Appkit)
75     set (CSF_Appkit ${Appkit_LIB})
76
77     find_library (IOKit_LIB NAMES IOKit)
78     set (CSF_IOKit ${IOKit_LIB})
79
80     OCCT_CHECK_AND_UNSET (Appkit_LIB)
81     OCCT_CHECK_AND_UNSET (IOKit_LIB)
82
83     if (USE_GLX)
84       set (CSF_OpenGlLibs GL)
85       set (CSF_XwLibs     "X11 Xext Xmu Xi")
86     else()
87       find_library (OpenGlLibs_LIB NAMES OpenGL)
88       set (CSF_OpenGlLibs ${OpenGlLibs_LIB})
89
90       OCCT_CHECK_AND_UNSET (OpenGlLibs_LIB)
91     endif()
92     
93     if (USE_TCL)
94       set (CSF_TclTkLibs Tk)
95       set (CSF_TclLibs   Tcl)
96     endif()
97   elseif (ANDROID)
98     set (CSF_ThreadLibs  "c")
99     set (CSF_OpenGlLibs  "EGL GLESv2")
100   elseif (UNIX)
101     set (CSF_ThreadLibs  "pthread rt stdc++")
102     set (CSF_OpenGlLibs  "GL")
103     set (CSF_XwLibs      "X11 Xext Xmu Xi")
104     set (CSF_dl          "dl")
105
106     if (USE_TCL)
107       set (CSF_TclLibs     "tcl${3RDPARTY_TCL_LIBRARY_VERSION}")
108       set (CSF_TclTkLibs   "tk${3RDPARTY_TK_LIBRARY_VERSION}")
109     endif()
110   endif()
111
112   if (USE_FREETYPE)
113     set (CSF_FREETYPE "freetype")
114   else()
115     set (CSF_FREETYPE)
116   endif()
117
118   if (USE_FREEIMAGE)
119     set (CSF_FreeImagePlus "freeimage")
120   else()
121     set (CSF_FreeImagePlus)
122   endif()
123
124   if (NOT DEFINED ANDROID)
125     if (USE_GL2PS)
126       set (CSF_GL2PS "gl2ps")
127     else()
128       set (CSF_GL2PS)
129     endif()
130   endif()
131 endif()