Salome HOME
Merge from V6_main 13/12/2012
[modules/kernel.git] / salome_adm / cmake_files / SalomeMacros.cmake
index b10f468dbaea3582bddfd17517bea217a37114e7..b96926dff2f05b37bf9613616586c51ec865e1a6 100755 (executable)
@@ -91,7 +91,7 @@ ENDMACRO(PARSE_ARGUMENTS)
 #----------------------------------------------------------------------------
 # SALOME_INSTALL_SCRIPTS is a macro useful for installing scripts.
 #
-# USAGE: SALOME_INSTALL_SCRIPTS(file_list path [DEF_PERMS])
+# USAGE: SALOME_INSTALL_SCRIPTS(file_list path [WORKING_DIRECTORY dir] [DEF_PERMS])
 #
 # ARGUMENTS:
 # file_list: IN : list of files to be installed. This list should be quoted.
@@ -102,13 +102,17 @@ ENDMACRO(PARSE_ARGUMENTS)
 # only OWNER_WRITE, OWNER_READ, GROUP_READ, and WORLD_READ. 
 #----------------------------------------------------------------------------
 MACRO(SALOME_INSTALL_SCRIPTS file_list path)
-  PARSE_ARGUMENTS(SALOME_INSTALL_SCRIPTS "" "DEF_PERMS" ${ARGN})
-  SET(PERMS OWNER_READ OWNER_WRITE GROUP_READ  WORLD_READ)
+  PARSE_ARGUMENTS(SALOME_INSTALL_SCRIPTS "WORKING_DIRECTORY" "DEF_PERMS" ${ARGN})
+  SET(PERMS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ)
   IF(NOT SALOME_INSTALL_SCRIPTS_DEF_PERMS)
     SET(PERMS ${PERMS} OWNER_EXECUTE GROUP_EXECUTE WORLD_EXECUTE)
   ENDIF(NOT SALOME_INSTALL_SCRIPTS_DEF_PERMS)
   FOREACH(file ${file_list})
-    INSTALL(FILES ${file} DESTINATION ${path} PERMISSIONS ${PERMS})
+    SET(PREFIX "")
+    IF(SALOME_INSTALL_SCRIPTS_WORKING_DIRECTORY)
+      SET(PREFIX "${SALOME_INSTALL_SCRIPTS_WORKING_DIRECTORY}/")
+    ENDIF(SALOME_INSTALL_SCRIPTS_WORKING_DIRECTORY)
+    INSTALL(FILES ${PREFIX}${file} DESTINATION ${path} PERMISSIONS ${PERMS})
     GET_FILENAME_COMPONENT(ext ${file} EXT)
     IF(ext STREQUAL .py)
       INSTALL(CODE "MESSAGE(STATUS \"py compiling ${CMAKE_INSTALL_PREFIX}/${path}/${file}\")")