Browse Source

* added powerpc-morphos target

Károly Balogh 21 years ago
parent
commit
be67726f8f
3 changed files with 166 additions and 2 deletions
  1. 6 2
      compiler/systems.pas
  2. 109 0
      compiler/systems/i_morph.pas
  3. 51 0
      compiler/systems/t_morph.pas

+ 6 - 2
compiler/systems.pas

@@ -115,7 +115,8 @@ interface
              system_powerpc_netbsd,     { 29 }
              system_powerpc_openbsd,    { 30 }
              system_arm_linux,          { 31 }
-             system_i386_watcom         { 32 }
+             system_i386_watcom,        { 32 }
+             system_powerpc_MorphOS     { 33 }
        );
 
        tasm = (as_none
@@ -650,7 +651,10 @@ finalization
 end.
 {
   $Log$
-  Revision 1.82  2004-01-30 13:42:03  florian
+  Revision 1.83  2004-02-13 05:42:16  karoly
+   * added powerpc-morphos target
+
+  Revision 1.82  2004/01/30 13:42:03  florian
     * fixed more alignment issues
 
   Revision 1.81  2004/01/28 15:36:46  florian

+ 109 - 0
compiler/systems/i_morph.pas

@@ -0,0 +1,109 @@
+{
+    $Id$
+    Copyright (c) 2004 by Free Pascal Development Team
+
+    This unit implements support information structures for MorphOS
+
+    This program is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 2 of the License, or
+    (at your option) any later version.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program; if not, write to the Free Software
+    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ ****************************************************************************
+}
+{ This unit implements support information structures for the MorphOS. }
+unit i_morph;
+
+  interface
+
+    uses
+       systems;
+
+    const
+       system_powerpc_MorphOS_info : tsysteminfo =
+          (
+            system       : system_powerpc_MorphOS;
+            name         : 'MorphOS';
+            shortname    : 'morphos';
+            flags        : [];
+            cpu          : cpu_powerpc;
+            unit_env     : '';
+            extradefines : '';
+            sourceext    : '.pp';
+            pasext       : '.pas';
+            exeext       : '';
+            defext       : '.def';
+            scriptext    : '.sh';
+            smartext     : '.sl';
+            unitext      : '.ppu';
+            unitlibext   : '.ppl';
+            asmext       : '.s';
+            objext       : '.o';
+            resext       : '.res';
+            resobjext    : '.or';
+            sharedlibext : '.library';
+            staticlibext : '.a';
+            staticlibprefix : 'lib';
+            sharedlibprefix : '';
+            sharedClibext : '.library';
+            staticClibext : '.a';
+            staticClibprefix : 'lib';
+            sharedClibprefix : '';
+            Cprefix      : '';
+            newline      : #10;
+            dirsep       : '/';
+            files_case_relevent : true;
+            assem        : as_gas;
+            assemextern  : as_gas;
+            link         : nil;
+            linkextern   : nil;
+            ar           : ar_gnu_ar;
+            res          : res_none;
+            script       : script_amiga;
+            endian       : endian_big;
+            alignment    :
+              (
+                procalign       : 4;
+                loopalign       : 4;
+                jumpalign       : 0;
+                constalignmin   : 0;
+                constalignmax   : 4;
+                varalignmin     : 0;
+                varalignmax     : 4;
+                localalignmin   : 0;
+                localalignmax   : 4;
+                recordalignmin  : 0;
+                recordalignmax  : 4;
+                maxCrecordalign : 4
+              );
+            first_parm_offset : 8;
+            heapsize     : 256*1024;
+            stacksize    : 262144;
+            DllScanSupported:false;
+            use_function_relative_addresses : true
+          );
+
+  implementation
+
+initialization
+{$ifdef CPUPOWERPC}
+  {$ifdef MORPHOS}
+    set_source_info(system_powerpc_MorphOS_info);
+  {$endif MORPHOS}
+{$endif CPUPOWERPC}
+end.
+{
+  $Log$
+  Revision 1.1  2004-02-13 05:46:26  karoly
+   * added powerpc-morphos target
+
+
+}

+ 51 - 0
compiler/systems/t_morph.pas

@@ -0,0 +1,51 @@
+{
+    $Id$
+    Copyright (c) 2004 by Free Pascal Development Team
+
+    This unit implements support import,export,link routines
+    for the MorphOS (PowerPC) target
+
+    This program is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 2 of the License, or
+    (at your option) any later version.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program; if not, write to the Free Software
+    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+
+ ****************************************************************************
+}
+unit t_morph;
+
+{$i fpcdefs.inc}
+
+interface
+
+
+implementation
+
+    uses
+       link,
+       cutils,cclasses,
+       globtype,globals,systems,verbose,script,fmodule,i_morph;
+
+{*****************************************************************************
+                                     Initialize
+*****************************************************************************}
+
+initialization
+  RegisterTarget(system_powerpc_morphos_info);
+end.
+{
+  $Log$
+  Revision 1.1  2004-02-13 05:46:58  karoly
+   * added powerpc-morphos target
+
+
+}