0032525: Data Exchange, RWGltf_CafReader - support KHR_draco_mesh_compression
[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 # TBB
14 if (USE_TBB)
15   set (CSF_TBB "tbb tbbmalloc")
16 else()
17   set (CSF_TBB)
18 endif()
19
20 # FREETYPE
21 if (USE_FREETYPE)
22   set (CSF_FREETYPE "freetype")
23 else()
24   set (CSF_FREETYPE)
25 endif()
26
27 # FFmpeg
28 if (USE_FFMPEG)
29   set (CSF_FFmpeg "avcodec avformat swscale avutil")
30 else()
31   set (CSF_FFmpeg)
32 endif()
33
34 # FREEIMAGE
35 if (USE_FREEIMAGE)
36   set (CSF_FreeImagePlus "freeimage")
37 else()
38   if (WIN32)
39     set (CSF_FreeImagePlus "windowscodecs")
40   else()
41     set (CSF_FreeImagePlus)
42   endif()
43 endif()
44
45 # OpenVR
46 if (USE_OPENVR)
47   set (CSF_OpenVR "openvr_api")
48 else()
49   set (CSF_OpenVR)
50 endif()
51
52 # TCL
53 if (USE_TCL)
54   if (WIN32)
55     set (CSF_TclLibs     "tcl86")
56   else()
57     if(APPLE)
58       set (CSF_TclLibs   Tcl)
59     elseif(UNIX)
60       set (CSF_TclLibs   "tcl8.6")
61     endif()
62   endif()
63 endif()
64
65 # TK
66 if (USE_TK)
67   if (WIN32)
68     set (CSF_TclTkLibs   "tk86")
69   else()
70     if(APPLE)
71       set (CSF_TclTkLibs Tk)
72     elseif(UNIX)
73       set (CSF_TclTkLibs "tk8.6")
74     endif()
75   endif()
76 endif()
77
78 # Draco
79 if (USE_DRACO)
80   set (CSF_Draco "draco")
81 else()
82   set (CSF_Draco)
83 endif()
84
85 if (WIN32)
86   set (CSF_advapi32      "advapi32.lib")
87   set (CSF_gdi32         "gdi32.lib")
88   set (CSF_user32        "user32.lib")
89   set (CSF_shell32       "shell32.lib")
90   set (CSF_wsock32       "wsock32.lib")
91   set (CSF_psapi         "psapi.lib")
92   set (CSF_winmm         "winmm.lib")
93   set (CSF_d3d9          "D3D9.lib")
94   set (CSF_OpenGlLibs    "opengl32.lib")
95   set (CSF_OpenGlesLibs  "libEGL libGLESv2")
96 else()
97
98   if (APPLE)
99     set (CSF_objc        "objc")
100
101     # frameworks
102     if (IOS)
103       find_library (Appkit_LIB NAMES UIKit)
104       set (CSF_Appkit ${Appkit_LIB})
105     else()
106       find_library (Appkit_LIB NAMES AppKit)
107       set (CSF_Appkit ${Appkit_LIB})
108     endif()
109     OCCT_CHECK_AND_UNSET (Appkit_LIB)
110
111     find_library (IOKit_LIB NAMES IOKit)
112     set (CSF_IOKit ${IOKit_LIB})
113     OCCT_CHECK_AND_UNSET (IOKit_LIB)
114
115     if (IOS)
116       find_library (OpenGlesLibs_LIB NAMES OpenGLES)
117       set (CSF_OpenGlesLibs ${OpenGlesLibs_LIB})
118       OCCT_CHECK_AND_UNSET (OpenGlesLibs_LIB)
119     elseif (USE_XLIB)
120       set (CSF_OpenGlLibs "GL")
121       set (CSF_XwLibs     "X11")
122     else()
123       find_library (OpenGlLibs_LIB NAMES OpenGL)
124       set (CSF_OpenGlLibs ${OpenGlLibs_LIB})
125       OCCT_CHECK_AND_UNSET (OpenGlLibs_LIB)
126     endif()
127
128   elseif (EMSCRIPTEN)
129     set (CSF_ThreadLibs   "pthread rt stdc++")
130     set (CSF_OpenGlesLibs "EGL GLESv2")
131     set (CSF_dl           "dl")
132   elseif (ANDROID)
133     set (CSF_ThreadLibs  "c")
134     set (CSF_OpenGlesLibs "EGL GLESv2")
135     set (CSF_androidlog  "log")
136   elseif (UNIX)
137     set (CSF_ThreadLibs  "pthread rt stdc++")
138     if (USE_XLIB)
139       set (CSF_OpenGlLibs "GL")
140       set (CSF_XwLibs     "X11")
141     else()
142       set (CSF_OpenGlLibs "GL EGL")
143     endif()
144     set (CSF_OpenGlesLibs "EGL GLESv2")
145     set (CSF_dl          "dl")
146     if (USE_FREETYPE)
147       set (CSF_fontconfig "fontconfig")
148     endif()
149   endif()
150 endif()