Browse Source

+ dllversion global variable
* FPC_USE_CPREFIX code removed, not necessary anymore
as we use .edata direct writing by default now.

pierre 26 years ago
parent
commit
3e399a860d
6 changed files with 42 additions and 25 deletions
  1. 6 4
      compiler/cg386inl.pas
  2. 6 4
      compiler/cg68kinl.pas
  3. 6 4
      compiler/cgai386.pas
  4. 8 1
      compiler/globals.pas
  5. 10 8
      compiler/options.pas
  6. 6 4
      compiler/symsym.inc

+ 6 - 4
compiler/cg386inl.pas

@@ -190,9 +190,6 @@ implementation
             new(r);
             new(r);
             reset_reference(r^);
             reset_reference(r^);
             r^.symbol:=newasmsymbol(
             r^.symbol:=newasmsymbol(
-{$ifdef FPC_USE_CPREFIX}
-              target_os.Cprefix+
-{$endif FPC_USE_CPREFIX}
             'U_'+upper(target_info.system_unit)+io[doread]);
             'U_'+upper(target_info.system_unit)+io[doread]);
             emit_ref_reg(A_LEA,S_L,r,R_EDI)
             emit_ref_reg(A_LEA,S_L,r,R_EDI)
           end;
           end;
@@ -1484,7 +1481,12 @@ implementation
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.84  1999-12-14 10:17:40  florian
+  Revision 1.85  1999-12-20 21:42:35  pierre
+    + dllversion global variable
+    * FPC_USE_CPREFIX code removed, not necessary anymore
+      as we use .edata direct writing by default now.
+
+  Revision 1.84  1999/12/14 10:17:40  florian
     * fixed an internalerror 10 with pred(...)
     * fixed an internalerror 10 with pred(...)
 
 
   Revision 1.83  1999/12/02 12:38:45  florian
   Revision 1.83  1999/12/02 12:38:45  florian

+ 6 - 4
compiler/cg68kinl.pas

@@ -103,9 +103,6 @@ implementation
             new(r);
             new(r);
             reset_reference(r^);
             reset_reference(r^);
             r^.symbol:=stringdup(
             r^.symbol:=stringdup(
-{$ifdef FPC_USE_CPREFIX}
-              target_os.Cprefix+
-{$endif FPC_USE_CPREFIX}
             'U_'+upper(target_info.system_unit)+io[byte(doread)]);
             'U_'+upper(target_info.system_unit)+io[byte(doread)]);
             exprasmlist^.concat(new(paicpu,op_ref_reg(A_LEA,S_L,r,R_A0)))
             exprasmlist^.concat(new(paicpu,op_ref_reg(A_LEA,S_L,r,R_A0)))
           end;
           end;
@@ -903,7 +900,12 @@ implementation
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.19  1999-11-20 01:22:18  pierre
+  Revision 1.20  1999-12-20 21:42:35  pierre
+    + dllversion global variable
+    * FPC_USE_CPREFIX code removed, not necessary anymore
+      as we use .edata direct writing by default now.
+
+  Revision 1.19  1999/11/20 01:22:18  pierre
     + cond FPC_USE_CPREFIX (needs also some RTL changes)
     + cond FPC_USE_CPREFIX (needs also some RTL changes)
       this allows to use unit global vars as DLL exports
       this allows to use unit global vars as DLL exports
       (the underline prefix seems needed by dlltool)
       (the underline prefix seems needed by dlltool)

+ 6 - 4
compiler/cgai386.pas

@@ -2844,9 +2844,6 @@ procedure mov_reg_to_dest(p : ptree; s : topsize; reg : tregister);
                    new(hr);
                    new(hr);
                    reset_reference(hr^);
                    reset_reference(hr^);
                    hr^.symbol:=newasmsymbol(
                    hr^.symbol:=newasmsymbol(
-{$ifdef FPC_USE_CPREFIX}
-              target_os.Cprefix+
-{$endif FPC_USE_CPREFIX}
                    'U_SYSWIN32_ISCONSOLE');
                    'U_SYSWIN32_ISCONSOLE');
                    if apptype=at_cui then
                    if apptype=at_cui then
                      exprasmlist^.insert(new(paicpu,op_const_ref(A_MOV,S_B,
                      exprasmlist^.insert(new(paicpu,op_const_ref(A_MOV,S_B,
@@ -3449,7 +3446,12 @@ procedure mov_reg_to_dest(p : ptree; s : topsize; reg : tregister);
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.63  1999-12-01 22:45:54  peter
+  Revision 1.64  1999-12-20 21:42:35  pierre
+    + dllversion global variable
+    * FPC_USE_CPREFIX code removed, not necessary anymore
+      as we use .edata direct writing by default now.
+
+  Revision 1.63  1999/12/01 22:45:54  peter
     * fixed wrong assembler with in-node
     * fixed wrong assembler with in-node
 
 
   Revision 1.62  1999/11/30 10:40:43  peter
   Revision 1.62  1999/11/30 10:40:43  peter

+ 8 - 1
compiler/globals.pas

@@ -116,6 +116,7 @@ unit globals;
        { deffile }
        { deffile }
        usewindowapi  : boolean;
        usewindowapi  : boolean;
        description   : string;
        description   : string;
+       dllversion    : string;
 
 
        { current position }
        { current position }
        token,                        { current token being parsed }
        token,                        { current token being parsed }
@@ -1370,6 +1371,7 @@ implementation
       { Def file }
       { Def file }
         usewindowapi:=false;
         usewindowapi:=false;
         description:='Compiled by FPC '+version_string+' - '+target_cpu_string;
         description:='Compiled by FPC '+version_string+' - '+target_cpu_string;
+        dllversion:='';
 
 
       { Init values }
       { Init values }
         initmodeswitches:=fpcmodeswitches;
         initmodeswitches:=fpcmodeswitches;
@@ -1418,7 +1420,12 @@ begin
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.39  1999-12-08 10:40:00  pierre
+  Revision 1.40  1999-12-20 21:42:34  pierre
+    + dllversion global variable
+    * FPC_USE_CPREFIX code removed, not necessary anymore
+      as we use .edata direct writing by default now.
+
+  Revision 1.39  1999/12/08 10:40:00  pierre
     + allow use of unit var in exports of DLL for win32
     + allow use of unit var in exports of DLL for win32
       by using direct export writing by default instead of use of DEFFILE
       by using direct export writing by default instead of use of DEFFILE
       that does not allow assembler labels that do not
       that does not allow assembler labels that do not

+ 10 - 8
compiler/options.pas

@@ -486,6 +486,10 @@ begin
                                 description:=Copy(more,j+1,255);
                                 description:=Copy(more,j+1,255);
                                 break;
                                 break;
                               end;
                               end;
+                        'v' : begin
+                                dllversion:=Copy(more,j+1,255);
+                                break;
+                              end;
                         'w' : usewindowapi:=true;
                         'w' : usewindowapi:=true;
                        else
                        else
                          IllegalPara(opt);
                          IllegalPara(opt);
@@ -568,9 +572,6 @@ begin
                      begin
                      begin
                         { Specific info, which can be used in Makefiles }
                         { Specific info, which can be used in Makefiles }
                         case More[1] of
                         case More[1] of
-{$ifdef FPC_USE_CPREFIX}
-                          'C' : QuickInfo('use C prefix');
-{$endif FPC_USE_CPREFIX}
                           'S' : begin
                           'S' : begin
                                   case More[2] of
                                   case More[2] of
                                    'O' : QuickInfo(source_os.shortname);
                                    'O' : QuickInfo(source_os.shortname);
@@ -1132,10 +1133,6 @@ begin
   def_symbol('INCLUDEOK');
   def_symbol('INCLUDEOK');
   def_symbol('NEWMM');
   def_symbol('NEWMM');
   def_symbol('HASWIDECHAR');
   def_symbol('HASWIDECHAR');
-{$ifdef FPC_USE_CPREFIX}
-  { default on next round }
-  def_symbol('FPC_USE_CPREFIX');
-{$endif FPC_USE_CPREFIX}
 {$ifdef cardinalmulfix}
 {$ifdef cardinalmulfix}
 { for the compiler }
 { for the compiler }
   def_symbol('CARDINALMULFIX');
   def_symbol('CARDINALMULFIX');
@@ -1339,7 +1336,12 @@ end;
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.43  1999-12-18 14:55:21  florian
+  Revision 1.44  1999-12-20 21:42:36  pierre
+    + dllversion global variable
+    * FPC_USE_CPREFIX code removed, not necessary anymore
+      as we use .edata direct writing by default now.
+
+  Revision 1.43  1999/12/18 14:55:21  florian
     * very basic widestring support
     * very basic widestring support
 
 
   Revision 1.42  1999/12/11 18:53:31  jonas
   Revision 1.42  1999/12/11 18:53:31  jonas

+ 6 - 4
compiler/symsym.inc

@@ -1089,9 +1089,6 @@
            unitsymtable,
            unitsymtable,
            globalsymtable :
            globalsymtable :
              prefix:=
              prefix:=
-{$ifdef FPC_USE_CPREFIX}
-              target_os.Cprefix+
-{$endif FPC_USE_CPREFIX}
               'U_'+owner^.name^+'_';
               'U_'+owner^.name^+'_';
            else
            else
              Message(sym_e_invalid_call_tvarsymmangledname);
              Message(sym_e_invalid_call_tvarsymmangledname);
@@ -2125,7 +2122,12 @@
 
 
 {
 {
   $Log$
   $Log$
-  Revision 1.133  1999-12-14 09:58:42  florian
+  Revision 1.134  1999-12-20 21:42:37  pierre
+    + dllversion global variable
+    * FPC_USE_CPREFIX code removed, not necessary anymore
+      as we use .edata direct writing by default now.
+
+  Revision 1.133  1999/12/14 09:58:42  florian
     + compiler checks now if a goto leaves an exception block
     + compiler checks now if a goto leaves an exception block
 
 
   Revision 1.132  1999/12/01 12:42:33  peter
   Revision 1.132  1999/12/01 12:42:33  peter