/
CMakeLists.txt
171 lines (155 loc) · 4.26 KB
/
CMakeLists.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
if(MSVC)
add_definitions(-DFCAppTechDraw -DHAVE_ACOSH -DHAVE_ASINH -DHAVE_ATANH)
else(MSVC)
add_definitions(-DHAVE_LIMITS_H -DHAVE_CONFIG_H -DHAVE_ACOSH -DHAVE_ATANH -DHAVE_ASINH)
endif(MSVC)
include_directories(
${CMAKE_BINARY_DIR}
${CMAKE_BINARY_DIR}/src
${CMAKE_SOURCE_DIR}/src
${CMAKE_CURRENT_BINARY_DIR}
${CMAKE_CURRENT_SOURCE_DIR}
${CMAKE_CURRENT_BINARY_DIR}
${Boost_INCLUDE_DIRS}
${QT_INCLUDE_DIR}
${OCC_INCLUDE_DIR}
${ZLIB_INCLUDE_DIR}
${PYTHON_INCLUDE_DIRS}
${XercesC_INCLUDE_DIRS}
${QT_QTCORE_INCLUDE_DIR}
)
link_directories(${OCC_LIBRARY_DIR})
set(TechDrawLIBS
Measure
Part
Spreadsheet
)
generate_from_xml(DrawPagePy)
generate_from_xml(DrawViewPy)
generate_from_xml(DrawViewPartPy)
generate_from_xml(DrawViewSymbolPy)
generate_from_xml(DrawTemplatePy)
generate_from_xml(DrawParametricTemplatePy)
generate_from_xml(DrawSVGTemplatePy)
generate_from_xml(DrawViewSymbolPy)
generate_from_xml(DrawViewClipPy)
generate_from_xml(DrawViewDimensionPy)
generate_from_xml(DrawHatchPy)
generate_from_xml(DrawViewCollectionPy)
generate_from_xml(DrawProjGroupPy)
generate_from_xml(DrawProjGroupItemPy)
SET(Draw_SRCS
DrawPage.cpp
DrawPage.h
DrawView.cpp
DrawView.h
DrawViewPart.cpp
DrawViewPart.h
DrawViewAnnotation.cpp
DrawViewAnnotation.h
DrawViewSymbol.cpp
DrawViewSymbol.h
DrawViewSpreadsheet.cpp
DrawViewSpreadsheet.h
DrawViewClip.cpp
DrawViewClip.h
DrawProjGroup.cpp
DrawProjGroup.h
DrawProjGroupItem.cpp
DrawProjGroupItem.h
DrawParametricTemplate.cpp
DrawParametricTemplate.h
DrawSVGTemplate.cpp
DrawSVGTemplate.h
DrawTemplate.cpp
DrawTemplate.h
DrawViewCollection.cpp
DrawViewCollection.h
DrawViewDimension.cpp
DrawViewDimension.h
DrawViewSection.cpp
DrawViewSection.h
DrawHatch.cpp
DrawHatch.h
DrawViewDraft.cpp
DrawViewDraft.h
)
SET(TechDraw_SRCS
AppTechDraw.cpp
AppTechDrawPy.cpp
DrawUtil.cpp
DrawUtil.h
PreCompiled.cpp
PreCompiled.h
EdgeWalker.cpp
EdgeWalker.h
)
SET(Geometry_SRCS
Geometry.cpp
Geometry.h
GeometryObject.cpp
GeometryObject.h
)
SET(Python_SRCS
DrawPagePy.xml
DrawPagePyImp.cpp
DrawViewPy.xml
DrawViewPyImp.cpp
DrawViewPartPy.xml
DrawViewPartPyImp.cpp
DrawViewSymbolPy.xml
DrawViewSymbolPyImp.cpp
DrawTemplatePy.xml
DrawTemplatePyImp.cpp
DrawParametricTemplatePy.xml
DrawParametricTemplatePyImp.cpp
DrawSVGTemplatePy.xml
DrawSVGTemplatePyImp.cpp
DrawViewClipPy.xml
DrawViewClipPyImp.cpp
DrawViewDimensionPy.xml
DrawViewDimensionPyImp.cpp
DrawHatchPy.xml
DrawHatchPyImp.cpp
DrawViewCollectionPy.xml
DrawViewCollectionPyImp.cpp
DrawProjGroupPy.xml
DrawProjGroupPyImp.cpp
DrawProjGroupItemPy.xml
DrawProjGroupItemPyImp.cpp)
SOURCE_GROUP("Mod" FILES ${TechDraw_SRCS})
SOURCE_GROUP("Features" FILES ${Draw_SRCS})
SOURCE_GROUP("Geometry" FILES ${Geometry_SRCS})
SOURCE_GROUP("Python" FILES ${Python_SRCS})
SET(TechDraw_Templates
Templates/A0_Landscape_ISO7200TD.svg
Templates/A1_Landscape_ISO7200TD.svg
Templates/A2_Landscape_ISO7200TD.svg
Templates/A3_Landscape_ISO7200TD.svg
Templates/A4_LandscapeTD.svg
Templates/A4_Landscape_ISO7200TD.svg
Templates/A4_Portrait_ISO7200TD.svg
)
if(MSVC)
#add_definitions(-D_PreComp_)
#GET_MSVC_PRECOMPILED_SOURCE("PreCompiled.cpp" TechDrawCPP_SRCS ${TechDraw_SRCS} ${Draw_SRCS} )
#ADD_MSVC_PRECOMPILED_HEADER(TechDraw PreCompiled.h PreCompiled.cpp TechDrawCPP_SRCS)
endif(MSVC)
add_library(TechDraw SHARED ${TechDraw_SRCS} ${Draw_SRCS} ${TechDrawAlgos_SRCS}
${Geometry_SRCS} ${Python_SRCS})
target_link_libraries(TechDraw ${TechDrawLIBS};${QT_QTXML_LIBRARY};${TechDraw})
SET(TechDrawScripts
Init.py
TestTechDrawApp.py
)
fc_target_copy_resource(TechDraw
${CMAKE_SOURCE_DIR}/src/Mod/TechDraw
${CMAKE_BINARY_DIR}/Mod/TechDraw
${TechDrawScripts})
fc_target_copy_resource(TechDraw
${CMAKE_SOURCE_DIR}/src/Mod/TechDraw
${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_DATADIR}/Mod/TechDraw
${TechDraw_Templates})
SET_BIN_DIR(TechDraw TechDraw /Mod/TechDraw)
SET_PYTHON_PREFIX_SUFFIX(TechDraw)
INSTALL(TARGETS TechDraw DESTINATION ${CMAKE_INSTALL_LIBDIR})