allows to embed some external ATOMS module in windows binary version 58/6358/2
Allan CORNET [Wed, 22 Feb 2012 10:02:10 +0000 (11:02 +0100)]
Change-Id: Ie2785286522bd71628f399f078f3a5600d803dda

scilab/.gitignore
scilab/modules/atoms/atoms.iss
scilab/tools/innosetup/Create_ISS.sce
scilab/tools/innosetup/Scilab.iss

index 58ca236..2304bf9 100644 (file)
@@ -52,6 +52,7 @@ lib
 
 # Generated file: Scilab.iss
 /Scilab.iss
+contrib/external_modules.iss
 
 #
 # VS solution files (windows)
@@ -151,6 +152,7 @@ scilab.pc
 .atoms
 contrib/archives
 
+
 # SWIG generated files which are not used
 modules/types/src/java/org/scilab/modules/types/types.java
 modules/types/src/java/org/scilab/modules/types/typesJNI.java
index ccf80b6..8a37f0d 100644 (file)
@@ -1,8 +1,7 @@
 ;
 ; Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
-; Copyright (C) DIGITEO - 2009 - Allan CORNET
 ; Copyright (C) DIGITEO - 2010 - Pierre MARECHAL
-; Copyright (C) DIGITEO - 2010 - Allan CORNET
+; Copyright (C) DIGITEO - 2009-2010 - Allan CORNET
 ;
 ; This file must be used under the terms of the CeCILL.
 ; This source file is licensed as described in the file COPYING, which
@@ -40,3 +39,5 @@ Source: modules\{#ATOMS}\macros\cleanmacros.bat; DestDir: {app}\modules\{#ATOMS}
 Source: modules\{#ATOMS}\tests\*.*; DestDir: {app}\modules\{#ATOMS}\tests; Flags: recursesubdirs; Components: {#COMPN_ATOMS} and {#COMPN_TESTS}
 ;
 ;--------------------------------------------------------------------------------------------------------------
+#include BinariesSourcePath + "\contrib\external_modules.iss"
+;--------------------------------------------------------------------------------------------------------------
index ba9e3ab..e9e7ac1 100644 (file)
@@ -1,6 +1,6 @@
 //
 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
-// Copyright (C) DIGITEO - 2010-2011 - Allan CORNET
+// Copyright (C) DIGITEO - 2010-2012 - Allan CORNET
 //
 // This file must be used under the terms of the CeCILL.
 // This source file is licensed as described in the file COPYING, which
@@ -239,11 +239,40 @@ function ret = Update_Script_Innosetup(ISSFilenameSource)
     return;
   end;
 
+  if isdir(SCI + "/.atoms") <> %F then
+    err = generateAdditionnalIss();
+    if err == %F then
+      ret = err;
+      return;
+    end;
+  end
+
+  
   mdelete(WSCI+"\"+ISSFilenameSource);
   printf("\nSaving %s\n",WSCI+"\"+ISSFilenameSource);
   ret = mputl(SciFile,WSCI+"\"+ISSFilenameSource);
 endfunction
 //------------------------------------------------------------------------------
+function bOK = generateAdditionnalIss()
+  bOK = %f;
+  ATOMS_DIR = fullpath(SCI + '/contrib');
+  dir_list = ls(ATOMS_DIR);
+  dir_list = fullpath(ATOMS_DIR + filesep() + dir_list);
+  dir_list = dir_list(isdir(dir_list) == %t);
+  
+  // remove default modules
+  list_default_ATOMS = ['xcos_toolbox_skeleton', 'toolbox_skeleton'];
+  dir_list(grep(dir_list, list_default_ATOMS)) = [];
+  if dir_list <> [] then
+    name_list = basename(dir_list);
+    ISS = "Source: contrib\" + name_list  +"\*.*; DestDir: {app}\contrib\" + name_list + "; Flags: recursesubdirs; Components: {#COMPN_ATOMS}";
+    ISS = [ISS; "Source: .atoms\*.*; DestDir: {app}\.atoms; Flags: recursesubdirs; Components: {#COMPN_ATOMS}"];
+  else
+    ISS = '';
+  end
+  bOK = mputl(ISS, fullpath(SCI + "\contrib\external_modules.iss"));
+endfunction
+//------------------------------------------------------------------------------  
 // Main
 [units,typs,nams] = file();
 path = fileparts(string(nams(1)),"path");
index 07413ff..3debfcb 100644 (file)
@@ -1,6 +1,6 @@
 ;
 ; Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
-; Copyright (C) DIGITEO - 2010-2011 - Allan CORNET
+; Copyright (C) DIGITEO - 2010-2012 - Allan CORNET
 ;
 ; This file must be used under the terms of the CeCILL.
 ; This source file is licensed as described in the file COPYING, which