* header updated
Sylvestre Ledru [Tue, 19 Feb 2008 18:25:46 +0000 (18:25 +0000)]
* better use of the ./configure

scilab/modules/dynamic_link/macros/haveacompiler.sci
scilab/modules/dynamic_link/macros/ilib_build.sci
scilab/modules/dynamic_link/macros/ilib_for_link.sci
scilab/modules/dynamic_link/macros/ilib_gen_Make_unix.sci
scilab/modules/dynamic_link/macros/ilib_gen_gateway.sci
scilab/modules/dynamic_link/macros/ilib_mex_build.sci

index 794be4a..f95703a 100644 (file)
@@ -1,4 +1,3 @@
-//==========================================
 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
 // Copyright (C) INRIA - Allan CORNET , Sylvestre LEDRU
 // 
index df74466..bd83d0a 100644 (file)
@@ -1,4 +1,3 @@
-//==========================================
 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
 // Copyright (C) ENPC/INRIA
 // 
@@ -7,7 +6,6 @@
 // you should have received as part of this distribution.  The terms
 // are also available at    
 // http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
-
 //==========================================
 function ilib_build(ilib_name,table,files,libs,makename,ldflags,cflags,fflags,ismex,cc)
 
index f2f9b05..35abc29 100644 (file)
@@ -1,5 +1,3 @@
-//==========================================
-// Generate a shared library which can be used by link command. 
 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
 // Copyright (C) INRIA/ENPC
 // 
@@ -9,6 +7,7 @@
 // are also available at    
 // http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
 //==========================================
+// Generate a shared library which can be used by link command. 
 function libn = ilib_for_link(names, ..
                               files, ..
                               libs, ..
@@ -20,7 +19,7 @@ function libn = ilib_for_link(names, ..
                               cflags, ..
                               fflags, ..
                               cc)
-                            
+
   [lhs,rhs] = argn(0);
   
   if rhs <= 4 then makename = 'Makelib';end
index 5e7c1bb..62cdfd0 100644 (file)
@@ -1,6 +1,6 @@
 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
 // Copyright (C) ENPC
-// Copyright (C) 2007-2008 - INRIA - Sylvestre LEDRU
+// Copyright (C) 2007-2008 - INRIA - Sylvestre LEDRU (rewrite to use autotools)
 // 
 // This file must be used under the terms of the CeCILL.
 // This source file is licensed as described in the file COPYING, which
@@ -10,7 +10,6 @@
 
 //==========================================
 // Generate a Makefile which can be used by ilib_*
-// Rewrited by Sylvestre Ledru in order to use autotools
 //==========================================
 function ilib_gen_Make_unix(names, ..
                                  files, ..
@@ -33,9 +32,10 @@ warningmode = warning('query');
 
 originPath = pwd();
 linkpath = TMPDIR;
+commandpath = SCI+"/modules/dynamic_link/src/scripts/";
+  
 //  if ldflags <> '' | cflags <> '' | fflags <> '' | cc <> '' then
 if ldflags == '' & cflags == '' & fflags == '' & cc == '' then
-  commandpath = SCI+"/modules/dynamic_link/src/scripts/";
   // The normal configure in the standard path
   generateConfigure(commandpath)
 end
@@ -104,6 +104,14 @@ end
          end
          
          if ldflags <> '' | cflags <> '' | fflags <> '' | cc <> '' then
+               // Rerun the configure, then remove the Makefile which is used
+               // to detect if the process has been launched or not
+               mdelete(linkpath+"/Makefile.orig")
+               // Copy this file because it is mandatory in the working dir
+               [status,msg]=copyfile(commandpath+"/compilerDetection.sh",linkpath);
+               if (status <> 1)
+                 error(msprintf(gettext("%s: An error occurred: %s\n"), "ilib_gen_Make",msg));
+               end
                // Rerun the ./configure with the flags
                generateConfigure(linkpath, ldflags, cflags, fflags, cc)
          end
@@ -159,6 +167,7 @@ if (warningmode == 'on') then
   disp(msprintf(gettext("%s: configure : Generate Makefile in %s\n"),"ilib_gen_Make",workingPath));
 end
 cmd=workingPath+"/compilerDetection.sh "+cmd
+
 [msg,ierr] = unix_g(cmd);
 
 if ierr <> 0 then
index f7c695d..b282a6c 100644 (file)
@@ -1,8 +1,3 @@
-//==========================================
-// generate an interface gateway named name
-// from table table taking into account 
-// attributes of function i.e mex fmex or scilab interface 
-// if name is a full path just extract the filename 
 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
 // Copyright (C) INRIA/ENPC
 // 
@@ -11,9 +6,15 @@
 // you should have received as part of this distribution.  The terms
 // are also available at    
 // http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+
 //==========================================
 // ilib_gen_gateway used by ilib_build
 //==========================================
+// generate an interface gateway named name
+// from table table taking into account 
+// attributes of function i.e mex fmex or scilab interface 
+// if name is a full path just extract the filename 
+
 function ilib_gen_gateway(name,tables)
 
   k = strindex(name,['/','\']);
index f4733e9..22d7a0d 100644 (file)
@@ -1,6 +1,7 @@
 //==========================================
 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
 // Copyright (C) INRIA 
+// Copyright (C) 2008 - INRIA - Sylvestre LEDRU (add cc options)
 // 
 // This file must be used under the terms of the CeCILL.
 // This source file is licensed as described in the file COPYING, which