2 SET(VERSION_INFO 0.0.0)
10 SET(AM_CPPFLAGS ${AM_CPPFLAGS} -DHAVE_SALOME_CONFIG -I${KERNEL_ROOT_DIR}/include/salome -include SALOMEconfig.h)
11 SET(AM_CXXFLAGS ${AM_CXXFLAGS} -DHAVE_SALOME_CONFIG -I${KERNEL_ROOT_DIR}/include/salome -include SALOMEconfig.h)
13 # Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE
15 # Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
16 # CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
18 # This library is free software; you can redistribute it and/or
19 # modify it under the terms of the GNU Lesser General Public
20 # License as published by the Free Software Foundation; either
21 # version 2.1 of the License.
23 # This library is distributed in the hope that it will be useful,
24 # but WITHOUT ANY WARRANTY; without even the implied warranty of
25 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
26 # Lesser General Public License for more details.
28 # You should have received a copy of the GNU Lesser General Public
29 # License along with this library; if not, write to the Free Software
30 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
32 # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
35 # Author : Vitaly Smetannikov
39 # include $(top_srcdir)/adm_local/unix/make_common_starter.am
45 SET(salomeinclude_HEADERS
49 SET(dist_libPARAVISEngine_la_SOURCES
53 SET(libPARAVISEngine_la_CPPFLAGS
57 -I${CMAKE_BINARY_DIR}/salome_adm/unix
58 -I${CMAKE_BINARY_DIR}/idl
61 SET(libPARAVISEngine_la_LDFLAGS
67 ${CMAKE_BINARY_DIR}/idl/libSalomeIDLPARAVIS.la
71 FOREACH(dir ${SUBDIRS})
72 IF(NOT dir STREQUAL .)
73 ADD_SUBDIRECTORY(${dir})
74 ENDIF(NOT dir STREQUAL .)
75 ENDFOREACH(dir ${SUBDIRS})
78 FOREACH(amname ${lib_LTLIBRARIES})
81 STRING(REPLACE .la _la amname ${amname})
84 STRING(LENGTH ${amname} len)
85 MATH(EXPR newlen "${len}-3")
86 STRING(SUBSTRING ${amname} 0 ${newlen} name)
89 STRING(REGEX MATCH "^lib" BEGIN_WITH_lib ${name})
91 STRING(LENGTH ${name} len)
92 MATH(EXPR newlen "${len}-3")
93 STRING(SUBSTRING ${name} 3 ${newlen} name)
97 STRING(REGEX MATCH "IDL" ISIDL ${name})
112 FOREACH(src ${${amname}_SOURCES} ${dist_${amname}_SOURCES})
113 GET_FILENAME_COMPONENT(ext ${src} EXT)
115 IF(src STREQUAL trte.f)
116 SET(input ${CMAKE_CURRENT_SOURCE_DIR}/${src})
117 STRING(REPLACE ".f" ".c" src ${src})
118 SET(src ${CMAKE_CURRENT_BINARY_DIR}/${src})
123 MAIN_DEPENDENCY ${input}
125 ELSE(src STREQUAL trte.f)
126 SET(input ${CMAKE_CURRENT_SOURCE_DIR}/${src})
127 STRING(REPLACE ".f" ".o" src ${src})
128 SET(src ${CMAKE_CURRENT_BINARY_DIR}/${src})
137 COMMAND ${F77} -c -o ${output} ${input}
138 MAIN_DEPENDENCY ${input}
140 ENDIF(src STREQUAL trte.f)
141 ENDIF(ext STREQUAL .f)
142 SET(srcs ${srcs} ${src})
143 ENDFOREACH(src ${${amname}_SOURCES} ${dist_${amname}_SOURCES})
146 SET(l ${nodist_${amname}_SOURCES} ${UIC_FILES})
148 SET(src ${CMAKE_CURRENT_BINARY_DIR}/${f})
149 SET(srcs ${srcs} ${src})
154 SET(l ${nodist_${amname}_SOURCES} ${BUILT_SOURCES})
156 GET_FILENAME_COMPONENT(ext ${f} EXT)
158 ELSE(ext STREQUAL .py)
159 SET(build_srcs ${build_srcs} ${CMAKE_CURRENT_BINARY_DIR}/${f})
160 ENDIF(ext STREQUAL .py)
164 ADD_LIBRARY(${name} ${type} ${srcs})
170 SET(targets ${targets} SalomeIDLKernel)
171 SET(targets ${targets} SalomeDS)
172 SET(targets ${targets} SALOMEDSTest)
173 SET(targets ${targets} SALOMEDS_Client_exe)
174 SET(targets ${targets} SalomeIDLGEOM)
175 SET(targets ${targets} GEOMEngine)
176 SET(targets ${targets} MEDEngine)
177 SET(targets ${targets} SMESHEngine)
178 SET(targets ${targets} SMESH)
179 FOREACH(target ${targets})
180 IF(name STREQUAL ${target})
181 SET(var ${var} -DNOGDI)
182 ENDIF(name STREQUAL ${target})
183 ENDFOREACH(target ${targets})
189 SET(targets ${targets} MEFISTO2D)
190 FOREACH(target ${targets})
191 IF(name STREQUAL ${target})
192 SET(dir $ENV{F2CHOME})
193 STRING(REPLACE "\\\\" "/" dir ${dir})
194 SET(var ${var} -I${dir})
195 SET(var ${var} -DF2C_BUILD)
196 ENDIF(name STREQUAL ${target})
197 ENDFOREACH(target ${targets})
201 SET(var ${var} ${AM_CPPFLAGS})
202 SET(var ${var} ${AM_CXXFLAGS})
205 SET(var ${var} ${PLATFORM_CPPFLAGS})
206 SET(var ${var} ${PTHREAD_CFLAGS})
207 SET(var ${var} ${${amname}_CPPFLAGS})
208 SET(var ${var} ${${amname}_CXXFLAGS})
209 SET(var ${var} ${${amname}_CFLAGS})
212 SET(vars ${vars} -include SALOMEconfig.h)
213 SET(vars ${vars} -ftemplate-depth-32)
214 SET(vars ${vars} -fPIC)
223 ENDFOREACH(v ${vars})
224 SET(flags "${flags} ${f}")
226 SET_TARGET_PROPERTIES(${name} PROPERTIES COMPILE_FLAGS "${flags}")
229 SET_TARGET_PROPERTIES(${name} PROPERTIES VERSION ${VERSION_INFO} SOVERSION ${SOVERSION_INFO})
237 SET(targets ${targets} MEFISTO2D)
238 FOREACH(target ${targets})
239 IF(name STREQUAL ${target})
240 SET(dir $ENV{F2CHOME})
241 STRING(REPLACE "\\\\" "/" dir ${dir})
242 SET(libadd ${libadd} ${dir}/LIBF77.lib)
243 SET(libadd ${libadd} ${dir}/LIBI77.lib)
244 ENDIF(name STREQUAL ${target})
245 ENDFOREACH(target ${targets})
249 SET(libs ${PLATFORM_LIBADD} ${PLATFORM_LDFLAGS} ${${amname}_LIBADD} ${${amname}_LDADD} ${${amname}_LDFLAGS})
250 FOREACH(lib SALOMEBasics SalomeBatch)
251 IF(name STREQUAL lib)
252 SET(libs ${libs} ${PTHREAD_LIBS})
253 ENDIF(name STREQUAL lib)
254 ENDFOREACH(lib SALOMEBasics SalomeBatch)
258 GET_FILENAME_COMPONENT(ext ${lib} EXT)
260 GET_FILENAME_COMPONENT(lib ${lib} NAME_WE)
261 STRING(REGEX REPLACE "^lib" "" lib ${lib})
262 ENDIF(ext STREQUAL .la)
264 SET(vars ${vars} -no-undefined)
265 SET(vars ${vars} -lvtkWidgets)
267 SET(vars ${vars} -module)
268 SET(vars ${vars} -Wl,-E)
269 SET(vars ${vars} -Xlinker)
270 SET(vars ${vars} -export-dynamic)
271 SET(vars ${vars} -lm)
272 SET(vars ${vars} -lboost_thread)
273 SET(vars ${vars} -lboost_signals)
274 SET(vars ${vars} -pthread -lpthread -ldl)
279 ENDIF(lib STREQUAL v)
280 ENDFOREACH(v ${vars})
281 SET(libadd ${libadd} ${lib})
282 ENDFOREACH(lib ${libs})
283 TARGET_LINK_LIBRARIES(${name} ${libadd})
288 SET(targets ${targets} MEFISTO2D)
289 FOREACH(target ${targets})
290 IF(name STREQUAL ${target})
291 IF(CMAKE_BUILD_TYPE STREQUAL Debug)
292 SET_TARGET_PROPERTIES(${name} PROPERTIES LINK_FLAGS "/NODEFAULTLIB:MSVCRT")
293 ENDIF(CMAKE_BUILD_TYPE STREQUAL Debug)
294 ENDIF(name STREQUAL ${target})
295 ENDFOREACH(target ${targets})
303 INSTALL(TARGETS ${name} DESTINATION ${DEST})
310 INSTALL(TARGETS ${name} DESTINATION lib/python${PYTHON_VERSION}/site-packages/salome)
311 IF(CMAKE_BUILD_TYPE STREQUAL Release)
312 INSTALL(FILES ${CMAKE_INSTALL_PREFIX}/lib/python${PYTHON_VERSION}/site-packages/salome/${name}.dll DESTINATION lib/python${PYTHON_VERSION}/site-packages/salome RENAME ${name}.pyd)
313 ELSE(CMAKE_BUILD_TYPE STREQUAL Release)
314 INSTALL(FILES ${CMAKE_INSTALL_PREFIX}/lib/python${PYTHON_VERSION}/site-packages/salome/${name}.dll DESTINATION lib/python${PYTHON_VERSION}/site-packages/salome RENAME ${name}_d.pyd)
315 ENDIF(CMAKE_BUILD_TYPE STREQUAL Release)
317 GET_TARGET_PROPERTY(version ${name} VERSION)
318 GET_TARGET_PROPERTY(soversion ${name} SOVERSION)
319 INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/lib${name}.so.${version} DESTINATION lib/python${PYTHON_VERSION}/site-packages/salome RENAME ${name}.so.${version})
320 INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/lib${name}.so.${version} DESTINATION lib/python${PYTHON_VERSION}/site-packages/salome RENAME ${name}.so.${soversion})
321 INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/lib${name}.so.${version} DESTINATION lib/python${PYTHON_VERSION}/site-packages/salome RENAME ${name}.so)
325 ENDIF(BEGIN_WITH_lib)
328 ENDFOREACH(amname ${lib_LTLIBRARIES})
330 FOREACH(f ${salomeinclude_HEADERS})
332 SET(DEST include/salome)
335 STRING(COMPARE EQUAL ${f} SALOMEconfig.h.in test_SALOMEconfig.h.in)
336 IF(test_SALOMEconfig.h.in)
337 INSTALL(FILES SALOMEconfig.ref.in DESTINATION ${DEST} RENAME SALOMEconfig.h.in)
338 ELSE(test_SALOMEconfig.h.in)
339 SET(dummy dummy-NOTFOUND)
340 MARK_AS_ADVANCED(dummy)
341 # FILE(REMOVE ${CMAKE_INSTALL_PREFIX}/${DEST}/${f})
342 FIND_FILE(dummy ${f} PATHS ${CMAKE_CURRENT_SOURCE_DIR} NO_DEFAULT_PATH)
346 GET_FILENAME_COMPONENT(ext ${f} EXT)
348 IF(DEST STREQUAL bin/salome)
350 SET(PERMS ${PERMS} OWNER_READ OWNER_WRITE OWNER_EXECUTE)
351 SET(PERMS ${PERMS} GROUP_READ GROUP_EXECUTE)
352 SET(PERMS ${PERMS} WORLD_READ WORLD_EXECUTE)
353 INSTALL(FILES ${f} DESTINATION ${DEST} PERMISSIONS ${PERMS})
354 ELSE(DEST STREQUAL bin/salome)
355 INSTALL(FILES ${f} DESTINATION ${DEST})
356 ENDIF(DEST STREQUAL bin/salome)
357 ELSE(ext STREQUAL .py)
358 INSTALL(FILES ${f} DESTINATION ${DEST})
359 ENDIF(ext STREQUAL .py)
363 GET_FILENAME_COMPONENT(ext ${f} EXT)
365 STRING(REGEX REPLACE .qm .ts input ${f})
368 SET(input ${CMAKE_CURRENT_SOURCE_DIR}/resources/${input})
371 SET(output ${CMAKE_CURRENT_BINARY_DIR}/${f})
372 # ADD_CUSTOM_COMMAND(
374 # COMMAND ${QT_LRELEASE_EXECUTABLE} ${input} -qm ${output}
375 # MAIN_DEPENDENCY ${input}
377 EXECUTE_PROCESS(COMMAND ${QT_LRELEASE_EXECUTABLE} ${input} -qm ${output})
378 ENDIF(ext STREQUAL .qm)
379 INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/${f} DESTINATION ${DEST})
381 ENDIF(test_SALOMEconfig.h.in)
384 GET_FILENAME_COMPONENT(ext ${f} EXT)
386 INSTALL(CODE "SET(PYTHON_FILE ${f})")
387 INSTALL(CODE "SET(CMAKE_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX})")
388 INSTALL(CODE "SET(DEST ${DEST})")
389 INSTALL(CODE "SET(PYTHON_EXECUTABLE ${PYTHON_EXECUTABLE})")
392 STRING(REPLACE "\\" "/" KERNEL_ROOT_DIR ${KERNEL_ROOT_DIR})
393 INSTALL(SCRIPT ${KERNEL_ROOT_DIR}/salome_adm/cmake_files/install_and_compile_python_file.cmake)
396 ENDIF(ext STREQUAL .py)
398 ENDFOREACH(f ${salomeinclude_HEADERS})