Fix WOK extraction when environment variable HAVE_VTK is not defined
[occt.git] / src / OS / Draw.tcl
1 # Copyright (c) 1999-2014 OPEN CASCADE SAS
2 #
3 # This file is part of Open CASCADE Technology software library.
4 #
5 # This library is free software; you can redistribute it and/or modify it under
6 # the terms of the GNU Lesser General Public License version 2.1 as published
7 # by the Free Software Foundation, with special exception defined in the file
8 # OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
9 # distribution for complete text of the license and disclaimer of any warranty.
10 #
11 # Alternatively, this file may be used under the terms of Open CASCADE
12 # commercial license or contractual agreement.
13
14 ;#
15 ;# Liste des toolkits WOK sous forme de full path
16 ;# 
17 proc Draw:toolkits { } {
18     set aResult [list TKDraw TKTopTest TKViewerTest TKXSDRAW TKDCAF TKXDEDRAW TKTObjDRAW TKQADraw]
19
20     if { [info exists ::env(HAVE_VTK)] && $::env(HAVE_VTK) == "true" } {
21       lappend aResult "TKIVtkDraw"
22     }
23
24     return $aResult
25 }
26
27 ;#
28 ;# Autres UDs a prendre. Listes de triplets
29 ;# { ar typ UD str } Tous les types de UD vont dans un sous directory nomme root/str
30 ;# Ils seront dans CAS3.0/str de l'archive de type ar (source/runtime)
31 ;# { ar typ UD {}  } Tous les types de UD vont dans root/UD/src => CAS3.0/src
32 ;#
33 proc Draw:ressources { } {
34     return [list \
35             [list both r DrawResources {}] \
36             [list both x DRAWEXE {}] \
37             ]
38 }
39 proc Draw:freefiles { } {
40     return {}
41 }
42 ;#
43 ;# Nom du module 
44 ;#
45 proc Draw:name { } {
46     return Draw
47 }
48 proc Draw:alias { } {
49     return DRAW
50 }
51 proc Draw:depends { } {
52     return [list DataExchange]
53 }
54
55 proc Draw:acdepends { } {
56     return [list TCLTK]
57 }
58
59 ;#
60 ;# Pre-requis pour la compilation ( -I ... )
61 ;# Returns a list of directory that should be used in -I directives
62 ;# while compiling c or c++ files.
63 ;#
64 proc Draw:CompileWith {} {
65     
66     set l {}
67     switch -- [OS:os] {
68         HP-UX {
69         }
70         Linux {
71             lappend l "-I[lindex [wokparam -v %CSF_JavaHome] 0]/include"
72             lappend l "-I[lindex [wokparam -v %CSF_JavaHome] 0]/include/linux"
73             lappend l "[lindex [wokparam -v %CSF_TCL_HOME] 0]/include"
74             lappend l "[lindex [lindex [wokparam -v %STLPortInclude] 0] 0]" 
75         }
76         SunOS {
77             lappend l "/usr/openwin/include"
78             lappend l "/usr/dt/include"
79             lappend l [lindex [wokparam -v %CSF_CXX_INCLUDE] 0]
80             lappend l "-I[lindex [wokparam -v %CSF_JavaHome] 0]/include" 
81             lappend l "-I[lindex [wokparam -v %CSF_JavaHome] 0]/include/solaris"
82             lappend l "[lindex [wokparam -v %CSF_TCL_HOME] 0]/include"
83         }
84         IRIX {
85             lappend l /usr/include/CC
86             lappend l /usr/tcltk/include/itcl
87             lappend l /opt/Orbix_2.2/include
88         }
89
90     }
91     return $l
92 }
93 ;#
94 ;# Pre-requis pour la compilation ( -L ... )
95 ;# Returns a list of directory that should be used in -L directives
96 ;# while creating shareable.
97 ;#
98 proc Draw:LinksoWith {} {
99     
100     set l {}
101     switch -- [OS:os] {
102         HP-UX {
103         }
104         Linux {
105             lappend l -L/usr/X11R6/lib
106             lappend l "-L[wokparam -v %CSF_TCL_HOME]/lib"
107             lappend l "-L[wokparam -v %STLPortHome]/lib"
108         }
109         SunOS {
110             lappend l /usr/openwin/lib
111             lappend l "[wokparam -v %CSF_TCL_HOME]/lib"
112             lappend l /opt/DEV5_1/SUNWspro/SC4.2/include/CC
113         }
114         IRIX {
115             lappend l /usr/lib32 
116             lappend l /usr/tcltk.64/lib/itcl
117         }
118
119     }
120     return $l
121 }
122 ;#
123 ;# Returns a list of exported features.
124 ;# source : Source files
125 ;# runtime: Shareables
126 ;# wokadm : WOK admin files
127 ;# api    : Public include files
128 ;#
129 proc Draw:Export { } {
130     return [list source runtime wokadm api]
131 }