add detection of Intel Composer XE 2013 Fortran
[scilab.git] / scilab / modules / dynamic_link / macros / detectmsifort64tools.sci
1 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
2 // Copyright (C) DIGITEO - Allan CORNET
3 //
4 // This file must be used under the terms of the CeCILL.
5 // This source file is licensed as described in the file COPYING, which
6 // you should have received as part of this distribution.  The terms
7 // are also available at
8 // http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
9
10 //=============================================================================
11 function bOK = detectmsifort64tools()
12
13  bOK = %F;
14  if getos() == "Windows" & win64() then
15   IFORTPATH = "";
16    ifortcomp = findmsifortcompiler();
17    if ifortcomp <> "unknown" then
18      select ifortcomp,
19        case  "ifort13" then
20          IFORTPATH = getenv("IFORT_COMPILER13","");
21
22        case  "ifort12" then
23          IFORTPATH = getenv("IFORT_COMPILER12","");
24
25        case  "ifort11" then
26          IFORTPATH = getenv("IFORT_COMPILER11","");
27
28        case  "ifort10" then
29          IFORTPATH = getenv("IFORT_COMPILER10","");
30
31        case  "ifort9" then
32          IFORTPATH = getenv("IFORT_COMPILER9","");
33
34      else
35        show = displayWarningmsifort();
36        if show then
37          TXT = gettext("Intel Fortran Compiler 9, 10, 11 or 12 Compiler not found.");
38          warning(TXT);
39          clear TXT;
40          disableWarningmsifort();
41        end
42        bOK = %F;
43        return
44      end
45    end
46
47    select ifortcomp,
48      case  "ifort13" then
49        IFORTSPATHEMT64 = IFORTPATH + "compiler\lib\intel64";
50      case  "ifort12" then
51        IFORTSPATHEMT64 = IFORTPATH + "compiler\lib\intel64";
52      case  "ifort11" then
53        IFORTSPATHEMT64 = IFORTPATH + "lib\intel64";
54      else
55        IFORTSPATHEMT64 = IFORTPATH + "em64t";
56    end
57
58    if isdir(IFORTSPATHEMT64) then
59      bOK = %T;
60    end
61  end
62
63 endfunction
64 //=============================================================================
65 function show = displayWarningmsifort()
66   settings_filename = "/.settings_warning_msif";
67   settings_file = pathconvert(SCIHOME+settings_filename,%f,%t);
68   w = fileinfo(settings_file);
69   show = %t;
70   if isfile(settings_file) then
71     show = grep(mgetl(settings_file),"displayWarningIFx64=no")==[]
72   end
73 endfunction
74 //=============================================================================
75 function disableWarningmsifort()
76   settings_filename = "/.settings_warning_msif";
77   settings_file = pathconvert(SCIHOME+settings_filename,%f,%t);
78   mputl("displayWarningIFx64=no",settings_file);
79 endfunction
80 //=============================================================================