+#########################################################################
+# SALOME_DO_VAR_SUBSTITUTION()
+#
+# USAGE: SALOME_DO_VAR_SUBSTITUTION(env variable value)
+#
+# ARGUMENTS:
+# env [out]: output script.
+# variable [in]: varable name
+# value [in]: variable value
+#
+# This macro concatenate variable value into script, like this:
+# on Linux:
+# export variable=value:${varuable}
+#
+# or on Windows:
+# SET variable=value;${varuable}
+#
+# Platform dependat variables PATH (Windows),
+# DYLD_LIBRARY_PATH (Apple), LD_LIBRARY_PATH (Linux), should be
+# passed in Linux naming style, i.e. LD_LIBRARY_PATH. Macro
+# converts this variable into platform scpecific variable.
+#
+MACRO(SALOME_DO_VAR_SUBSTITUTION env variable value)
+ SET(_item ${variable})
+ SET(_val ${value})
+ IF(WIN32)
+ IF(${_item} STREQUAL "LD_LIBRARY_PATH")
+ SET(_item PATH)
+ ENDIF()
+ STRING(REPLACE "/" "\\" ${env} "${${env}}@SET ${_item}=${_val};%${_item}%\n")
+ ELSEIF(APPLE)
+ IF(${_item} STREQUAL "LD_LIBRARY_PATH")
+ SET(${env} "${${env}} export DYLD_LIBRARY_PATH=${_val}:\${DYLD_LIBRARY_PATH}\n")
+ ELSE()
+ SET(${env} "${${env}} export ${_item}=${_val}:\${${_item}}\n")
+ ENDIF()
+ ELSE()
+ SET(${env} "${${env}} export ${_item}=${_val}:\${${_item}}\n")
+ ENDIF()
+ENDMACRO(SALOME_DO_VAR_SUBSTITUTION)