1 cmake_minimum_required (VERSION 2.6)
5 add_definitions(-DWINVER=0x0501 -D_AFXEXT -DUNICODE -D_UNICODE)
9 set (mfcsample_SOURCE_FILES ${MFC_STANDARD_SAMPLES_DIR}/mfcsample/src/mfcsample.cpp
10 ${MFC_STANDARD_SAMPLES_DIR}/mfcsample/src/StdAfx.cpp )
12 SET (MFC_STANDARD_COMMON_SAMPLES_DIR "${MFC_STANDARD_SAMPLES_DIR}/Common")
13 set (COMMON_SOURCE_FILES ${MFC_STANDARD_COMMON_SAMPLES_DIR}/AISDialogs.cpp
14 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/OCC_2dDoc.cpp
15 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/OCC_2dChildFrame.cpp
16 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/OCC_2dView.cpp
17 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/OCC_3dBaseDoc.cpp
18 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/OCC_App.cpp
19 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/OCC_3dDoc.cpp
20 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/OCC_3dChildFrame.cpp
21 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/OCC_3dView.cpp
22 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/OCC_BaseDoc.cpp
23 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/OCC_BaseChildFrame.cpp
24 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/OCC_BaseView.cpp
25 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/OCC_MainFrame.cpp
26 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/OCC_StereoConfigDlg.cpp
27 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/ParamsFacesPage.cpp
28 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/ResultDialog.cpp
29 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/User_Cylinder.cxx
30 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/ColoredMeshDlg.cpp
31 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/DimensionDlg.cpp
32 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/LengthParamsEdgePage.cpp
33 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/LengthParamsVerticesPage.cpp
34 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/RadiusParamsPage.cpp
35 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/LengthParamsEdgesPage.cpp
36 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/LengthParamsVerticesPage.cpp
37 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/AngleParamsVerticesPage.cpp)
40 set (COMMON_IE_DIR ${MFC_STANDARD_COMMON_SAMPLES_DIR}/ImportExport)
41 set (COMMON_IE_HEADER_FILES ${COMMON_IE_DIR}/ImportExport.h
42 ${COMMON_IE_DIR}/SaveSTEPDlg.h )
43 set (COMMON_IE_SOURCE_FILES ${COMMON_IE_DIR}/ImportExport.cpp
44 ${COMMON_IE_DIR}/SaveSTEPDlg.cpp )
47 set (COMMON_ISESSION2D_DIR ${MFC_STANDARD_COMMON_SAMPLES_DIR}/ISession2D)
48 set (COMMON_ISESSION2D_HEADER_FILES ${COMMON_ISESSION2D_DIR}/ISession2D_Shape.h )
49 set (COMMON_ISESSION2D_SOURCE_FILES ${COMMON_ISESSION2D_DIR}/ISession2D_Shape.cpp )
52 set (COMMON_PRIMITIVE_DIR ${MFC_STANDARD_COMMON_SAMPLES_DIR}/Primitive)
53 set (COMMON_PRIMITIVE_HEADER_FILES ${COMMON_PRIMITIVE_DIR}/Sample2D_Face.h
54 ${COMMON_PRIMITIVE_DIR}/Sample2D_Image.h
55 ${COMMON_PRIMITIVE_DIR}/Sample2D_Markers.h
56 ${COMMON_PRIMITIVE_DIR}/Sample2D_Text.h )
57 set (COMMON_PRIMITIVE_SOURCE_FILES ${COMMON_PRIMITIVE_DIR}/Sample2D_Face.cpp
58 ${COMMON_PRIMITIVE_DIR}/Sample2D_Image.cpp
59 ${COMMON_PRIMITIVE_DIR}/Sample2D_Markers.cpp
60 ${COMMON_PRIMITIVE_DIR}/Sample2D_Text.cpp )
63 set (COMMON_RESOURCE2D_DIR ${MFC_STANDARD_COMMON_SAMPLES_DIR}/Resource2D)
64 set (COMMON_RESOURCE2D_HEADER_FILES ${COMMON_RESOURCE2D_DIR}/CircularGrid.h
65 ${COMMON_RESOURCE2D_DIR}/RectangularGrid.h )
66 set (COMMON_RESOURCE2D_SOURCE_FILES ${COMMON_RESOURCE2D_DIR}/CircularGrid.cpp
67 ${COMMON_RESOURCE2D_DIR}/RectangularGrid.cpp )
70 set (COMMON_HEADER_FILES ${MFC_STANDARD_COMMON_SAMPLES_DIR}/AISDialogs.h
71 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/OCC_2dDoc.h
72 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/OCC_2dChildFrame.h
73 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/OCC_2dView.h
74 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/OCC_3dBaseDoc.h
75 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/OCC_App.h
76 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/OCC_3dDoc.h
77 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/OCC_3dChildFrame.h
78 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/OCC_3dView.h
79 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/OCC_BaseDoc.h
80 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/OCC_BaseChildFrame.h
81 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/OCC_BaseView.h
82 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/OCC_MainFrame.h
83 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/OCC_StereoConfigDlg.h
84 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/ParamsFacesPage.h
85 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/ResultDialog.h
86 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/User_Cylinder.hxx
87 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/ColoredMeshDlg.h
88 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/DimensionDlg.h
89 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/LengthParamsEdgePage.h
90 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/LengthParamsVerticesPage.h
91 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/RadiusParamsPage.h
92 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/LengthParamsEdgesPage.h
93 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/LengthParamsVerticesPage.h
94 ${MFC_STANDARD_COMMON_SAMPLES_DIR}/AngleParamsVerticesPage.h)
98 set (COMMON_RESOURCE_DIR ${MFC_STANDARD_COMMON_SAMPLES_DIR}/res)
99 set (COMMON_RESOURCE_FILES ${COMMON_RESOURCE_DIR}/2dChildFrameTB.bmp
100 ${COMMON_RESOURCE_DIR}/2dType.ico
101 ${COMMON_RESOURCE_DIR}/3dChildFrameTB.bmp
102 ${COMMON_RESOURCE_DIR}/3dType.ico
103 ${COMMON_RESOURCE_DIR}/AIS_TB.bmp
104 ${COMMON_RESOURCE_DIR}/coloredm.bmp
105 ${COMMON_RESOURCE_DIR}/MainFrame.ico
106 ${COMMON_RESOURCE_DIR}/occ_logo.bmp
107 ${COMMON_RESOURCE_DIR}/OCC_Resource.rc)
109 # groups in the VS solution
110 source_group ( "Header Files" FILES ${COMMON_HEADER_FILES}
111 ${COMMON_IE_HEADER_FILES}
112 ${COMMON_PRIMITIVE_HEADER_FILES}
113 ${COMMON_RESOURCE2D_HEADER_FILES}
114 ${COMMON_ISESSION2D_HEADER_FILES})
116 source_group ("Source Files" FILES ${mfcsample_SOURCE_FILES}
117 ${COMMON_SOURCE_FILES}
118 ${COMMON_IE_SOURCE_FILES}
119 ${COMMON_PRIMITIVE_SOURCE_FILES}
120 ${COMMON_RESOURCE2D_SOURCE_FILES}
121 ${COMMON_ISESSION2D_SOURCE_FILES})
123 source_group ( "Resource Files" FILES ${COMMON_RESOURCE_FILES})
126 add_library ( mfcsample SHARED ${mfcsample_SOURCE_FILES}
127 ${COMMON_HEADER_FILES}
128 ${COMMON_SOURCE_FILES}
129 ${COMMON_IE_HEADER_FILES}
130 ${COMMON_IE_SOURCE_FILES}
131 ${COMMON_PRIMITIVE_HEADER_FILES}
132 ${COMMON_PRIMITIVE_SOURCE_FILES}
133 ${COMMON_RESOURCE2D_HEADER_FILES}
134 ${COMMON_RESOURCE2D_SOURCE_FILES}
135 ${COMMON_ISESSION2D_HEADER_FILES}
136 ${COMMON_ISESSION2D_SOURCE_FILES}
137 ${COMMON_RESOURCE_FILES})
139 set_property (TARGET mfcsample PROPERTY FOLDER Samples)
141 install (TARGETS mfcsample RUNTIME DESTINATION "${INSTALL_DIR}/win${COMPILER_BITNESS}/${COMPILER}/bin${BUILD_POSTFIX}"
142 ARCHIVE DESTINATION "${INSTALL_DIR}/win${COMPILER_BITNESS}/${COMPILER}/lib${BUILD_POSTFIX}"
143 LIBRARY DESTINATION "${INSTALL_DIR}/win${COMPILER_BITNESS}/${COMPILER}/lib${BUILD_POSTFIX}")
145 include_directories( ${CMAKE_SOURCE_DIR}/src
146 ${MFC_STANDARD_COMMON_SAMPLES_DIR}
148 ${COMMON_ISESSION2D_DIR}
149 ${COMMON_PRIMITIVE_DIR}
150 ${COMMON_RESOURCE2D_DIR})
152 # OCCT libraries for using
153 set (mfcsample_USED_LIBS TKVRML
181 target_link_libraries (mfcsample ${mfcsample_USED_LIBS})