temporary files (objects) are generated in a intermediate subdirectory (Windows)
Allan CORNET [Tue, 24 Feb 2009 14:35:01 +0000 (15:35 +0100)]
scilab/CHANGES_5.2.X
scilab/modules/dynamic_link/macros/ilib_for_link.sci
scilab/modules/dynamic_link/macros/ilib_gen_Make.sci
scilab/modules/dynamic_link/src/scripts/Makedll.incl
scilab/modules/dynamic_link/src/scripts/Makefile.incl.mak
scilab/modules/dynamic_link/src/scripts/TEMPLATE_MAKEFILE.VC

index fbf7c5a..2a6d542 100644 (file)
@@ -20,6 +20,12 @@ Input/Output functions:
  - Rewrite :
        + getenv
 
+Dynamic link:
+=========================
+ - Windows : temporary files (objects) are generated in a intermediate subdirectory (Release or Debug)
+   ilib_for_link and ilib_gen_Make (with Visual studio) use a same makefile template.
+   (SCI/modules/dynamic_link/src/scripts/TEMPLATE_MAKEFILE.VC)
+
 Bug fixes:
 ==========
 
index 5ab1732..fe83216 100644 (file)
@@ -209,77 +209,118 @@ function ilib_link_gen_Make_msvc(names, ..
                                   cflags, ..
                                   fflags, ..
                                   cc)
-  try
-    MAKEFILE_VC = mgetl(SCI+'/modules/dynamic_link/src/scripts/TEMPLATE_MAKEFILE.VC');
-  catch
-    MAKEFILE_VC = '';
-  end
 
-       if ( MAKEFILE_VC <> '') then
-         MAKEFILE_VC = strsubst(MAKEFILE_VC,"__SCI__",SCI);
-         MAKEFILE_VC = strsubst(MAKEFILE_VC,"__SCIDIR1__",pathconvert(SCI,%f,%f,'w'));
-         
-         if (libname == '') then libname = names(1);end 
-    MAKEFILE_VC = strsubst(MAKEFILE_VC,"__LIBNAME__",sprintf("lib%s",libname));
-    
-    if (files <> []) then
-      OBJS = '';
-      for x = files(:)'
-        [ptmp,ftmp,fext] = fileparts(x);
-        OBJ = ptmp + ftmp + '.obj';
-        OBJS = OBJS + ' ' + OBJ;
-      end
-      MAKEFILE_VC = strsubst(MAKEFILE_VC,"__OBJS__",OBJS);
-    else
-      MAKEFILE_VC = strsubst(MAKEFILE_VC,"__OBJS__","");
-    end
-    
-    if (libs <> []) then
-      LIBS = '';
-      for x = libs(:)'
-        if x <> '' then
-          LIBS = LIBS + ' ' + sprintf("%s.lib",x);
+  managed_ext = ['.cxx', '.cpp', '.c', '.f90', '.f'];
+  obj_ext = ['.o', '.obj', ''];
+
+  SCIDIR = SCI;
+  SCIDIR1 = pathconvert(SCI,%f,%f,'w');
+  LIBRARY = '';
+  FILES_SRC = '';
+  OBJS = '';
+  OBJS_WITH_PATH = '';
+  OTHERLIBS = '';
+  CC = cc;
+  CFLAGS = cflags;
+  MEXCFLAGS = '';
+  FFLAGS = fflags;
+  MEXFFLAGS = '';
+  LDFLAGS = ldflags;
+
+  FILES_SRC_MATRIX = [];  
+  
+  [path_Make, file_Make, ext_Make] = fileparts(Makename);
+  
+  for i=1:size(files,'*') 
+    [path_f, file_f, ext_f] = fileparts(files(i));
+
+    if or(obj_ext == ext_f) then
+      FILENAME = [];
+      FILE_FOUNDED = %f;
+      for y = managed_ext(:)'
+        if (FILE_FOUNDED == %f) then
+          if (fileinfo(path_f + file_f + y) <> []) | (fileinfo(path_Make + file_f + y) <> []) then
+            FILENAME = path_f + file_f + y;
+            FILE_FOUNDED = %t;
+          end
         end
       end
-      MAKEFILE_VC = strsubst(MAKEFILE_VC,"__OTHERSLIBS__",LIBS);
     else
-      MAKEFILE_VC = strsubst(MAKEFILE_VC,"__OTHERSLIBS__","");
+      FILENAME = files(i);
     end
-    
-    if cc <> "" then
-    
-      MAKEFILE_VC = strsubst(MAKEFILE_VC,"__CC__",cc);
-    else
-      MAKEFILE_VC = strsubst(MAKEFILE_VC,"CC = __CC__","#CC = ");
-    end
-    
-    if cflags <> "" then
-      MAKEFILE_VC = strsubst(MAKEFILE_VC,"__CFLAGS__",cflags);
-    else
-      MAKEFILE_VC = strsubst(MAKEFILE_VC,"__CFLAGS__","");    
-    end
-    
-    if fflags <> "" then
-      MAKEFILE_VC = strsubst(MAKEFILE_VC,"__FFLAGS__",fflags);
-    else
-      MAKEFILE_VC = strsubst(MAKEFILE_VC,"__FFLAGS__","");    
-    end
-    
-    if ldflags <> "" then
-      MAKEFILE_VC = strsubst(MAKEFILE_VC,"__LDFLAGS__",ldflags);
-    else
-      MAKEFILE_VC = strsubst(MAKEFILE_VC,"__LDFLAGS__","");
+    FILES_SRC_MATRIX = [FILES_SRC_MATRIX , FILENAME];
+  end
+
+  FILES_SRC = strcat(FILES_SRC_MATRIX,' ');
+  
+  OBJ_DEST_PATH = '';
+  if (getenv("DEBUG_SCILAB_DYNAMIC_LINK","NO") == "NO") then
+    OBJ_DEST_PATH = "Release/";
+  else
+    OBJ_DEST_PATH = "Debug/";
+  end
+  
+  OBJS_MATRIX = [];
+  OBJS_WITH_PATH_MATRIX = [];
+  
+  for y = 1:size(FILES_SRC_MATRIX,'*')
+    [path_f, file_f, ext_f] = fileparts(FILES_SRC_MATRIX(y));
+    OBJS_MATRIX = [OBJS_MATRIX, path_f + file_f + '.obj'];
+    OBJS_WITH_PATH_MATRIX = [OBJS_WITH_PATH_MATRIX, OBJ_DEST_PATH + path_f + file_f + '.obj'];
+  end
+  
+  OBJS = strcat(OBJS_MATRIX, ' ');
+  OBJS_WITH_PATH =  strcat(OBJS_WITH_PATH_MATRIX, ' ');
+
+  if (libname == '') then
+    LIBRARY = 'lib' + names(1);
+  else
+    LIBRARY = 'lib' + libname;
+  end
+
+  if (libs <> []) then
+    for x = libs(:)'
+      if x <> '' then
+        OTHERLIBS = OTHERLIBS + ' ' + x + '.lib';
+      end
     end
-    
-    fd = mopen(Makename,"w");
-    mputl(MAKEFILE_VC,fd);
+  end
+
+  try
+    MAKEFILE_VC = mgetl(SCI+'/modules/dynamic_link/src/scripts/TEMPLATE_MAKEFILE.VC');
+  catch
+    MAKEFILE_VC = '';
+  end
+  
+  MAKEFILE_VC = strsubst(MAKEFILE_VC, "__SCI__", SCIDIR);
+  MAKEFILE_VC = strsubst(MAKEFILE_VC, "__SCIDIR1__", SCIDIR1);
+  MAKEFILE_VC = strsubst(MAKEFILE_VC, "__LIBNAME__", LIBRARY);
+  MAKEFILE_VC = strsubst(MAKEFILE_VC, "__FILES_SRC__", FILES_SRC);
+  MAKEFILE_VC = strsubst(MAKEFILE_VC, "__OBJS__", OBJS);
+  MAKEFILE_VC = strsubst(MAKEFILE_VC, "__OBJS_WITH_PATH__", OBJS_WITH_PATH);
+  MAKEFILE_VC = strsubst(MAKEFILE_VC, "__OTHERSLIBS__", OTHERLIBS);
+  
+  if CC <> '' then
+    MAKEFILE_VC = strsubst(MAKEFILE_VC, "__CC__",CC);
+  else
+    MAKEFILE_VC = strsubst(MAKEFILE_VC, "CC = __CC__","#CC = ");
+  end
+  
+  MAKEFILE_VC = strsubst(MAKEFILE_VC, "__CFLAGS__", CFLAGS);
+  MAKEFILE_VC = strsubst(MAKEFILE_VC, "__MEXCFLAGS__", MEXCFLAGS);
+  MAKEFILE_VC = strsubst(MAKEFILE_VC, "__FFLAGS__", FFLAGS);
+  MAKEFILE_VC = strsubst(MAKEFILE_VC, "__MEXFFLAGS__", MEXFFLAGS);
+  MAKEFILE_VC = strsubst(MAKEFILE_VC, "__LDFLAGS__", LDFLAGS);
+
+  if ( MAKEFILE_VC <> '') then
+    fd = mopen(Makename, "wt");
+    mputl(MAKEFILE_VC, fd);
     mclose(fd);
-    
-       else
-        // TEMPLATE_MAKEFILE.VC not found
-        warning(SCI+'/modules/dynamic_link/src/scripts/TEMPLATE_MAKEFILE.VC'+ 'not found.');
-       end
-                                  
+  else
+    // TEMPLATE_MAKEFILE.VC not found
+    warning(SCI+'/modules/dynamic_link/src/scripts/TEMPLATE_MAKEFILE.VC'+ _('not found.') );
+  end
+
 endfunction
 //==========================================    
 function ilib_link_gen_Make_lcc(names, ..
index ff90f54..e0d1fca 100644 (file)
@@ -68,74 +68,143 @@ endfunction
 
 
 function ilib_gen_Make_win32(name,table,files,libs,Makename,with_gateway,ldflags,cflags,fflags)
-
-  managed_ext = ['.f90','.cxx','.cpp','.c','.f'];
-  for i=1:size(files,'*') // compatibility scilab 4.x
+  managed_ext = ['.cxx', '.cpp', '.c', '.f90', '.f'];
+  obj_ext = ['.o', '.obj', ''];
+  
+  SCIDIR = SCI;
+  SCIDIR1 = pathconvert(SCI,%f,%f,'w');
+  LIBRARY = name;
+  FILES_SRC = '';
+  OBJS = '';
+  OBJS_WITH_PATH = '';
+  OTHERLIBS = '';
+  CC = '';
+  CFLAGS = cflags;
+  MEXCFLAGS = '';
+  FFLAGS = fflags;
+  MEXFFLAGS = '';
+  LDFLAGS = ldflags;
+  
+  FILES_SRC_MATRIX = [];
+  
+  [path_Make, file_Make, ext_Make] = fileparts(Makename);
+  
+  for i=1:size(files,'*') 
     [path_f, file_f, ext_f] = fileparts(files(i));
-    if or(managed_ext == ext_f) then
-      files(i) = path_f + file_f;
+    
+    if or(obj_ext == ext_f) then
+      FILENAME = [];
+      FILE_FOUNDED = %f;
+      for y = managed_ext(:)'
+        if (FILE_FOUNDED == %f) then
+          if (fileinfo(path_f + file_f + y) <> []) | (fileinfo(path_Make + file_f + y) <> []) then
+            FILENAME = path_f + file_f + y;
+            FILE_FOUNDED = %t;
+          end
+        end
+      end
     else
-      files(i) = path_f + file_f + ext_f;
+      FILENAME = files(i);
     end
+    FILES_SRC_MATRIX = [FILES_SRC_MATRIX , FILENAME];
   end
-
-  fd=mopen(Makename,"w");
-  mfprintf(fd,"# generated by builder.sce: Please do not edit this file\n");
-  mfprintf(fd,"# ------------------------------------------------------\n");
-  mfprintf(fd,"SCIDIR =%s\n",SCI);
-  mfprintf(fd,"SCIDIR1 =%s\n",pathconvert(SCI,%f,%f,'w'));
-  mfprintf(fd,"# name of the dll to be built\n"); 
-  mfprintf(fd,"LIBRARY = %s\n",name);
-  mfprintf(fd,"# list of objects file\n");
-  mfprintf(fd,"OBJS =");
-  for x=files(:)' ; mfprintf(fd," %s.obj",x);end
-
-  if typeof(tables)<>'list' then 
-    tables= list(tables)
+  
+  if typeof(tables) <> 'list' then 
+    tables = list(tables);
   end
-  L=length(tables); 
+  L = length(tables); 
 
   if with_gateway then 
-    if L==1 then 
-      mfprintf(fd," %s.obj",name);
+    if L == 1 then 
+      FILES_SRC_MATRIX = [FILES_SRC_MATRIX , name + '.c'];
     else
-       for i=1:L , mfprintf(fd," %s.obj",name+string(i));end 
+       for i=1:L
+        FILES_SRC_MATRIX = [FILES_SRC_MATRIX , name + string(i) + '.c'];
+       end 
     end
   end
   
   for it=1:L 
     table = tables(it);
-    [mt,nt]=size(table);
+    [mt,nt] = size(table);
  
     for i=1:mt ; 
       // mex files to be added 
       if table(i,3)=='cmex' | table(i,3)=='fmex' | table(i,3)=='Fmex' 
-       mfprintf(fd," %s.obj",table(i,2));
+        FILES_SRC_MATRIX = [FILES_SRC_MATRIX , table(i,2)];
       end
     end
   end
-  mfprintf(fd,"\n# added libraries \n");
-  mfprintf(fd,"OTHERLIBS = ");
-  for x=libs(:)' ; mfprintf(fd," %s.lib",x);end
-  mfprintf(fd,"\n");
-  mfprintf(fd,"!include $(SCIDIR1)/modules/dynamic_link/src/scripts/Makefile.incl.mak\n");
   
-  mexcflags = ' ';
-  mexfflags = ' ';
+  FILES_SRC = strcat(FILES_SRC_MATRIX,' ');
   
   if table(i,3)=='cmex' | table(i,3)=='fmex' | table(i,3)=='Fmex' then
-    if findmsvccompiler() <>'msvc90express' then
-      mexcflags = " -Dmexfunction_=mex$*_  -DmexFunction=mex_$* ";
-      mexfflags = " -Dmexfunction=mex$* ";
-    end
+    MEXCFLAGS = "-Dmexfunction_=mex$*_ -DmexFunction=mex_$*";
+    MEXFFLAGS = "-Dmexfunction=mex$*";
+  end
+
+  OBJ_DEST_PATH = '';
+  if (getenv("DEBUG_SCILAB_DYNAMIC_LINK","NO") == "NO") then
+    OBJ_DEST_PATH = "Release/";
+  else
+    OBJ_DEST_PATH = "Debug/";
+  end
+  
+  OBJS_MATRIX = [];
+  OBJS_WITH_PATH_MATRIX = [];
+  
+  for y = 1:size(FILES_SRC_MATRIX,'*')
+    [path_f, file_f, ext_f] = fileparts(FILES_SRC_MATRIX(y));
+    OBJS_MATRIX = [OBJS_MATRIX, path_f + file_f + '.obj'];
+    OBJS_WITH_PATH_MATRIX = [OBJS_WITH_PATH_MATRIX, OBJ_DEST_PATH + path_f + file_f + '.obj'];
+  end
+  
+  OBJS = strcat(OBJS_MATRIX, ' ');
+  OBJS_WITH_PATH =  strcat(OBJS_WITH_PATH_MATRIX, ' ');
+  
+  for x=libs(:)'
+     if OTHERLIBS <> '' then
+       OTHERLIBS = OTHERLIBS + ' ' + x + '.lib';
+     else
+       OTHERLIBS = x + '.lib';
+     end 
+  end
+
+  try
+    MAKEFILE_VC = mgetl(SCI+'/modules/dynamic_link/src/scripts/TEMPLATE_MAKEFILE.VC');
+  catch
+    MAKEFILE_VC = '';
+  end
+  
+  MAKEFILE_VC = strsubst(MAKEFILE_VC, "__SCI__", SCIDIR);
+  MAKEFILE_VC = strsubst(MAKEFILE_VC, "__SCIDIR1__", SCIDIR1);
+  MAKEFILE_VC = strsubst(MAKEFILE_VC, "__LIBNAME__", LIBRARY);
+  MAKEFILE_VC = strsubst(MAKEFILE_VC, "__FILES_SRC__", FILES_SRC);
+  MAKEFILE_VC = strsubst(MAKEFILE_VC, "__OBJS__", OBJS);
+  MAKEFILE_VC = strsubst(MAKEFILE_VC, "__OBJS_WITH_PATH__", OBJS_WITH_PATH);
+  MAKEFILE_VC = strsubst(MAKEFILE_VC, "__OTHERSLIBS__", OTHERLIBS);
+  
+  if CC <> '' then
+    MAKEFILE_VC = strsubst(MAKEFILE_VC, "__CC__",CC);
+  else
+    MAKEFILE_VC = strsubst(MAKEFILE_VC, "CC = __CC__","#CC = ");
+  end
+  
+  MAKEFILE_VC = strsubst(MAKEFILE_VC, "__CFLAGS__", CFLAGS);
+  MAKEFILE_VC = strsubst(MAKEFILE_VC, "__MEXCFLAGS__", MEXCFLAGS);
+  MAKEFILE_VC = strsubst(MAKEFILE_VC, "__FFLAGS__", FFLAGS);
+  MAKEFILE_VC = strsubst(MAKEFILE_VC, "__MEXFFLAGS__", MEXFFLAGS);
+  MAKEFILE_VC = strsubst(MAKEFILE_VC, "__LDFLAGS__", LDFLAGS);
+
+  if ( MAKEFILE_VC <> '') then
+    fd = mopen(Makename, "wt");
+    mputl(MAKEFILE_VC, fd);
+    mclose(fd);
+  else
+    // TEMPLATE_MAKEFILE.VC not found
+    warning(SCI+'/modules/dynamic_link/src/scripts/TEMPLATE_MAKEFILE.VC'+ _('not found.') );
   end
-  mfprintf(fd,"CFLAGS = $(CC_OPTIONS) -DFORDLL -I\""$(SCIDIR)/modules/core/includes\"""+...
-          mexcflags + cflags +" \n"); 
-  mfprintf(fd,"FFLAGS = $(FC_OPTIONS) -DFORDLL -I\""$(SCIDIR)/modules/core/includes\"""+...
-          mexfflags + fflags +"\n"); 
-  mfprintf(fd,"EXTRA_LDFLAGS = "+ ldflags+"\n");
-  mfprintf(fd,"!include $(SCIDIR1)/modules/dynamic_link/src/scripts/Makedll.incl \n");
-  mclose(fd);
 endfunction
 //---------------------------------------------------------------------------------------
          
index e2f3d4d..b4071a9 100644 (file)
@@ -8,11 +8,11 @@ all :: $(LIBRARY).dll
 $(LIBRARY).dll: $(OBJS)
        @echo Creation of dll $(LIBRARY).dll and import lib from ...
        @echo $(OBJS)
-       @$(DUMPEXTS) -o "$*.def" "$*.dll" $**
-       @$(LINKER) $(LINKER_FLAGS) $(OBJS) $(OTHERLIBS) $(SCIIMPLIB) $(SCILAB_LIBS) $(EXTRA_LDFLAGS) /nologo /dll /out:"$*.dll" /implib:"$*.lib" /def:"$*.def" 
+       $(DUMPEXTS) -o "$*.def" "$*.dll" $(OBJS_WITH_PATH)
+       $(LINKER) $(LINKER_FLAGS) $(OBJS_WITH_PATH) $(OTHERLIBS) $(SCIIMPLIB) $(SCILAB_LIBS) $(EXTRA_LDFLAGS) /nologo /dll /out:"$*.dll" /implib:"$*.lib" /def:"$*.def" 
 
 clean  ::
-       -del *.obj
+       -del "$(DIR_OBJ)\*.obj"
        -del $(LIBRARY)_gateway.c
        -del $(LIBRARY).def
        -del $(LIBRARY).dll
index d3286fd..f2c295a 100644 (file)
@@ -21,16 +21,18 @@ DWIN=-DWIN32
 !ENDIF
 
 !IF "$(DEBUG_SCILAB_DYNAMIC_LINK)" == "YES"
-LINKER_OPTIMISATION_MODE=/DEBUG -PDB:$(LIBRARY).pdb
-CC__OPTIMISATION_MODE=-Zi -Od 
+DIR_OBJ=Debug
+LINKER_OPTIMISATION_MODE=/DEBUG -PDB:"$(DIR_OBJ)\$(LIBRARY).pdb"
+CC__OPTIMISATION_MODE=-Zi -Od
 !ELSE
+DIR_OBJ=Release
 LINKER_OPTIMISATION_MODE=/RELEASE
 CC__OPTIMISATION_MODE=-Z7 -O2
 !ENDIF
 
 CC_COMMON=-D__MSC__ $(DWIN) -c -DSTRICT -D_CRT_SECURE_NO_DEPRECATE -D__MAKEFILEVC__ -nologo $(INCLUDES)
 LINKER_FLAGS=/NOLOGO $(MACHINE) $(LINKER_OPTIMISATION_MODE)
-CC_OPTIONS = $(CC_COMMON) -W3 -Gd $(CC__OPTIMISATION_MODE)
+CC_OPTIONS = $(CC_COMMON) -W3 -Gd $(CC__OPTIMISATION_MODE) /Fo"$(DIR_OBJ)/" /Fd"$(DIR_OBJ)/"
 
 # include options 
 INCLUDES=-I"$(SCIDIR)/libs/MALLOC/includes" \
@@ -61,7 +63,8 @@ USE_F2C=NO
 # if USE_F2C is set to NO we will use the following Fortran compiler (i.e Intel Fortran 10.x)
 !IF "$(USE_F2C)" == "NO"
 FC=ifort 
-FC_OPTIONS=/debug /nologo /assume:underscore /compile_only /iface:cref /names:lowercase 
+FC_OPTIONS=/debug /nologo /assume:underscore /compile_only /iface:cref /names:lowercase /Fo"$(DIR_OBJ)/" /Fd"$(DIR_OBJ)/" \
+/include:"$(SCIDIR1)/modules/core/includes"
 LINKER_FLAGS=$(LINKER_FLAGS) /force:multiple
 !ENDIF
 #==================================================
@@ -83,14 +86,20 @@ SCILAB_LIBS="$(SCIDIR1)/bin/MALLOC.lib" "$(SCIDIR1)/bin/blasplus.lib" \
 #==================================================
 .c.obj :
        @echo ------------- Compile file $< --------------
+       -mkdir $(DIR_OBJ)
+
        $(CC) $(CFLAGS) $< 
 
 .cxx.obj       :
        @echo ------------- Compile file $< --------------
+       -mkdir $(DIR_OBJ)
+
        @$(CC) $(CFLAGS) /EHsc $*.cxx 
 
 .cpp.obj       :
        @echo ------------- Compile file $< --------------
+       -mkdir $(DIR_OBJ)
+
        @$(CC) $(CFLAGS) /EHsc $*.cpp
 
 # default rule for Fortran 77 & 90 Compilation 
@@ -104,6 +113,7 @@ SCILAB_LIBS="$(SCIDIR1)/bin/MALLOC.lib" "$(SCIDIR1)/bin/blasplus.lib" \
 !ELSE  
        @"$(SCIDIR1)/bin/f2c.exe" -I"$(SCIDIR1)/modules/core/includes" $(FFLAGS) $*.f 2>NUL
 !ENDIF
+       -mkdir $(DIR_OBJ)
 
        @$(CC) $(CFLAGS) $*.c 
 !IF "$(DEBUG_SCILAB_DYNAMIC_LINK)" == "YES"
@@ -116,6 +126,8 @@ SCILAB_LIBS="$(SCIDIR1)/bin/MALLOC.lib" "$(SCIDIR1)/bin/blasplus.lib" \
 
 .f.obj :
        @echo -----------Compile file $*.f  (using $(FC)) -------------
+       -mkdir $(DIR_OBJ)
+
        @$(FC) $(FFLAGS) $<
        
 !ENDIF
@@ -124,11 +136,12 @@ SCILAB_LIBS="$(SCIDIR1)/bin/MALLOC.lib" "$(SCIDIR1)/bin/blasplus.lib" \
 
 .f90.obj       :
        @echo F2C cannot build .f90 file
-       
 !ELSE 
 
 .f90.obj       :
        @echo -----------Compile file $*.f90  (using $(FC)) -------------
+       -mkdir $(DIR_OBJ)
+
        @$(FC) $(FFLAGS) $<
        
 !ENDIF
@@ -139,16 +152,16 @@ RM = del
 #==================================================
 clean::
        -del *.bak 
-  -del *.obj
+  -del "$(DIR_OBJ)\*.obj"
 !IF "$(DEBUG_SCILAB_DYNAMIC_LINK)" == "YES"
-  -del *.pdb
+  -del "$(DIR_OBJ)\*.pdb"
 !ENDIF
 #==================================================
 distclean::  
   -del *.bak 
-  -del *.obj
+  -del "$(DIR_OBJ)\*.obj"
 !IF "$(DEBUG_SCILAB_DYNAMIC_LINK)" == "YES"
-  -del *.pdb
+  -del "$(DIR_OBJ)\*.pdb"
 !ENDIF
 #==================================================
 
index 5b74ac1..c5ec9ce 100644 (file)
@@ -9,8 +9,12 @@ SCIDIR1 = __SCIDIR1__
 # name of the dll to be built
 LIBRARY = __LIBNAME__
 # ------------------------------------------------------
+# list of files
+FILES_SRC = __FILES_SRC__
+# ------------------------------------------------------
 # list of objects file
 OBJS = __OBJS__
+OBJS_WITH_PATH = __OBJS_WITH_PATH__
 # ------------------------------------------------------
 # added libraries
 OTHERLIBS = __OTHERSLIBS__
@@ -19,9 +23,9 @@ OTHERLIBS = __OTHERSLIBS__
 # ------------------------------------------------------
 CC = __CC__
 # ------------------------------------------------------
-CFLAGS = $(CC_OPTIONS) -DFORDLL __CFLAGS__
+CFLAGS = $(CC_OPTIONS) -DFORDLL __CFLAGS__ __MEXCFLAGS__
 # ------------------------------------------------------
-FFLAGS = $(FC_OPTIONS) -DFORDLL __FFLAGS__
+FFLAGS = $(FC_OPTIONS) -DFORDLL __FFLAGS__ __MEXFFLAGS__
 # ------------------------------------------------------
 EXTRA_LDFLAGS = __LDFLAGS__
 # ------------------------------------------------------