mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-09-05 07:33:47 +02:00
* some m68k and amiga related stuff fixed
This commit is contained in:
parent
a1d5451ed7
commit
91733f9237
@ -1,24 +1,15 @@
|
||||
#
|
||||
# Don't edit, this file is generated by FPCMake Version 1.1 [2004/04/21]
|
||||
# Don't edit, this file is generated by FPCMake Version 1.1 [2004/04/12]
|
||||
#
|
||||
default: all
|
||||
MAKEFILETARGETS=linux go32v2 win32 os2 freebsd beos netbsd amiga atari sunos qnx netware openbsd wdosx palmos macos darwin emx watcom
|
||||
BSDs = freebsd netbsd openbsd darwin
|
||||
UNIXs = linux $(BSDs) sunos qnx
|
||||
FORCE:
|
||||
.PHONY: FORCE
|
||||
override PATH:=$(subst \,/,$(PATH))
|
||||
ifneq ($(findstring darwin,$(OSTYPE)),)
|
||||
inUnix=1 #darwin
|
||||
SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH)))
|
||||
else
|
||||
ifeq ($(findstring ;,$(PATH)),)
|
||||
inUnix=1
|
||||
SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH)))
|
||||
else
|
||||
SEARCHPATH:=$(subst ;, ,$(PATH))
|
||||
endif
|
||||
endif
|
||||
SEARCHPATH+=$(patsubst %/,%,$(subst \,/,$(dir $(MAKE))))
|
||||
PWD:=$(strip $(wildcard $(addsuffix /pwd.exe,$(SEARCHPATH))))
|
||||
ifeq ($(PWD),)
|
||||
@ -119,6 +110,7 @@ FPC_VERSION:=$(word 1,$(FPC_COMPILERINFO))
|
||||
endif
|
||||
export FPC FPC_VERSION FPC_COMPILERINFO
|
||||
unexport CHECKDEPEND ALLDEPENDENCIES
|
||||
BSDTARGETS=freebsd netbsd openbsd darwin
|
||||
ifndef CPU_TARGET
|
||||
ifdef CPU_TARGET_DEFAULT
|
||||
CPU_TARGET=$(CPU_TARGET_DEFAULT)
|
||||
@ -157,7 +149,7 @@ ifeq ($(findstring $(OS_TARGET),$(MAKEFILETARGETS)),)
|
||||
$(error The Makefile doesn't support target $(OS_TARGET), please run fpcmake first)
|
||||
endif
|
||||
endif
|
||||
ifneq ($(findstring $(OS_TARGET),$(BSDs)),)
|
||||
ifneq ($(findstring $(OS_TARGET),$(BSDTARGETS)),)
|
||||
BSDhier=1
|
||||
endif
|
||||
ifeq ($(OS_TARGET),linux)
|
||||
@ -229,6 +221,11 @@ override FPCOPT+=-Ur
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
ifeq ($(findstring 1.0.,$(FPC_VERSION)),)
|
||||
SYSTEMUNIT=system
|
||||
else
|
||||
SYSTEMUNIT=syslinux
|
||||
endif
|
||||
OBJPASDIR=$(RTL)/objpas
|
||||
GRAPHDIR=$(INC)/graph
|
||||
override TARGET_UNITS+=system exec strings dos crt objects printer objpas heaptrc lineinfo getopts graph sysutils math typinfo
|
||||
@ -245,12 +242,48 @@ ifdef REQUIRE_PACKAGESDIR
|
||||
override PACKAGESDIR+=$(REQUIRE_PACKAGESDIR)
|
||||
endif
|
||||
ifdef ZIPINSTALL
|
||||
ifneq ($(findstring $(OS_TARGET),$(UNIXs)),)
|
||||
UNIXHier=1
|
||||
ifeq ($(OS_TARGET),linux)
|
||||
UNIXINSTALLDIR=1
|
||||
endif
|
||||
ifeq ($(OS_TARGET),freebsd)
|
||||
UNIXINSTALLDIR=1
|
||||
endif
|
||||
ifeq ($(OS_TARGET),netbsd)
|
||||
UNIXINSTALLDIR=1
|
||||
endif
|
||||
ifeq ($(OS_TARGET),openbsd)
|
||||
UNIXINSTALLDIR=1
|
||||
endif
|
||||
ifeq ($(OS_TARGET),darwin)
|
||||
UNIXINSTALLDIR=1
|
||||
endif
|
||||
ifeq ($(OS_TARGET),sunos)
|
||||
UNIXINSTALLDIR=1
|
||||
endif
|
||||
ifeq ($(OS_TARGET),qnx)
|
||||
UNIXINSTALLDIR=1
|
||||
endif
|
||||
else
|
||||
ifneq ($(findstring $(OS_SOURCE),$(UNIXs)),)
|
||||
UNIXHier=1
|
||||
ifeq ($(OS_SOURCE),linux)
|
||||
UNIXINSTALLDIR=1
|
||||
endif
|
||||
ifeq ($(OS_SOURCE),freebsd)
|
||||
UNIXINSTALLDIR=1
|
||||
endif
|
||||
ifeq ($(OS_SOURCE),netbsd)
|
||||
UNIXINSTALLDIR=1
|
||||
endif
|
||||
ifeq ($(OS_SOURCE),openbsd)
|
||||
UNIXINSTALLDIR=1
|
||||
endif
|
||||
ifeq ($(OS_SOURCE),darwin)
|
||||
UNIXINSTALLDIR=1
|
||||
endif
|
||||
ifeq ($(OS_TARGET),sunos)
|
||||
UNIXINSTALLDIR=1
|
||||
endif
|
||||
ifeq ($(OS_TARGET),qnx)
|
||||
UNIXINSTALLDIR=1
|
||||
endif
|
||||
endif
|
||||
ifndef INSTALL_PREFIX
|
||||
@ -259,7 +292,7 @@ INSTALL_PREFIX=$(PREFIX)
|
||||
endif
|
||||
endif
|
||||
ifndef INSTALL_PREFIX
|
||||
ifdef UNIXHier
|
||||
ifdef UNIXINSTALLDIR
|
||||
INSTALL_PREFIX=/usr/local
|
||||
else
|
||||
ifdef INSTALL_FPCPACKAGE
|
||||
@ -278,7 +311,7 @@ DIST_DESTDIR:=$(BASEDIR)
|
||||
endif
|
||||
export DIST_DESTDIR
|
||||
ifndef INSTALL_BASEDIR
|
||||
ifdef UNIXHier
|
||||
ifdef UNIXINSTALLDIR
|
||||
ifdef INSTALL_FPCPACKAGE
|
||||
INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/fpc/$(FPC_VERSION)
|
||||
else
|
||||
@ -289,7 +322,7 @@ INSTALL_BASEDIR:=$(INSTALL_PREFIX)
|
||||
endif
|
||||
endif
|
||||
ifndef INSTALL_BINDIR
|
||||
ifdef UNIXHier
|
||||
ifdef UNIXINSTALLDIR
|
||||
ifdef CROSSCOMPILE
|
||||
INSTALL_BINDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin
|
||||
else
|
||||
@ -319,14 +352,14 @@ endif
|
||||
endif
|
||||
endif
|
||||
ifndef INSTALL_LIBDIR
|
||||
ifdef UNIXHier
|
||||
ifdef UNIXINSTALLDIR
|
||||
INSTALL_LIBDIR:=$(INSTALL_PREFIX)/lib
|
||||
else
|
||||
INSTALL_LIBDIR:=$(INSTALL_UNITDIR)
|
||||
endif
|
||||
endif
|
||||
ifndef INSTALL_SOURCEDIR
|
||||
ifdef UNIXHier
|
||||
ifdef UNIXINSTALLDIR
|
||||
ifdef BSDhier
|
||||
SRCPREFIXDIR=share/src
|
||||
else
|
||||
@ -358,7 +391,7 @@ endif
|
||||
endif
|
||||
endif
|
||||
ifndef INSTALL_DOCDIR
|
||||
ifdef UNIXHier
|
||||
ifdef UNIXINSTALLDIR
|
||||
ifdef BSDhier
|
||||
DOCPREFIXDIR=share/doc
|
||||
else
|
||||
@ -382,7 +415,7 @@ endif
|
||||
endif
|
||||
endif
|
||||
ifndef INSTALL_EXAMPLEDIR
|
||||
ifdef UNIXHier
|
||||
ifdef UNIXINSTALLDIR
|
||||
ifdef INSTALL_FPCPACKAGE
|
||||
ifdef BSDhier
|
||||
INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
|
||||
@ -1198,9 +1231,6 @@ override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
|
||||
endif
|
||||
ifdef CLEANPPUFILES
|
||||
override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
|
||||
ifdef DEBUGSYMEXT
|
||||
override CLEANPPULINKFILES+=$(subst $(PPUEXT),$(DEBUGSYMEXT),$(CLEANPPUFILES))
|
||||
endif
|
||||
override CLEANPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILES))
|
||||
override CLEANPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILES)))
|
||||
endif
|
||||
@ -1222,9 +1252,11 @@ ifdef CLEAN_FILES
|
||||
endif
|
||||
ifdef LIB_NAME
|
||||
-$(DEL) $(LIB_NAME) $(LIB_FULLNAME)
|
||||
endif
|
||||
ifdef DEBUGSYMEXT
|
||||
-$(DEL) *$(DEBUGSYMEXT)
|
||||
endif
|
||||
-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
|
||||
-$(DEL) *$(ASMEXT) *_ppas$(BATCHEXT)
|
||||
fpc_distclean: clean
|
||||
ifdef COMPILER_UNITTARGETDIR
|
||||
TARGETDIRCLEAN=fpc_clean
|
||||
@ -1240,9 +1272,6 @@ endif
|
||||
ifdef AOUTEXT
|
||||
-$(DEL) *$(AOUTEXT)
|
||||
endif
|
||||
ifdef DEBUGSYMEXT
|
||||
-$(DEL) *$(DEBUGSYMEXT)
|
||||
endif
|
||||
.PHONY: fpc_baseinfo
|
||||
override INFORULES+=fpc_baseinfo
|
||||
fpc_baseinfo:
|
||||
@ -1375,8 +1404,8 @@ SYSCPUDEPS=$(addprefix $(PROCINC)/,$(CPUINCNAMES))
|
||||
SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS)
|
||||
prt0$(OEXT) : prt0$(LOADEREXT)
|
||||
-$(AS) prt0$(LOADEREXT) -o prt0$(OEXT)
|
||||
system$(PPUEXT) : sysamiga.pas $(SYSLINUXDEPS) $(SYSDEPS)
|
||||
$(COMPILER) -ui386 -dm68k -Us -Sg sysamiga.pas $(REDIR)
|
||||
$(SYSTEMUNIT)$(PPUEXT) : $(SYSTEMUNIT).pas $(SYSLINUXDEPS) $(SYSDEPS)
|
||||
$(COMPILER) -ui386 -dm68k -Us -Sg $(SYSTEMUNIT).pas $(REDIR)
|
||||
strings$(PPUEXT) : ../template/strings.pp system$(PPUEXT)
|
||||
$(COMPILER) ../template/strings.pp $(REDIR)
|
||||
exec$(PPUEXT) : exec.pp exec.inc system$(PPUEXT)
|
||||
|
@ -51,6 +51,13 @@ endif
|
||||
endif
|
||||
endif
|
||||
|
||||
ifeq ($(findstring 1.0.,$(FPC_VERSION)),)
|
||||
SYSTEMUNIT=system
|
||||
else
|
||||
SYSTEMUNIT=syslinux
|
||||
endif
|
||||
|
||||
|
||||
# Paths
|
||||
OBJPASDIR=$(RTL)/objpas
|
||||
GRAPHDIR=$(INC)/graph
|
||||
@ -86,8 +93,8 @@ prt0$(OEXT) : prt0$(LOADEREXT)
|
||||
# Base Units (System, strings, os-dependent-base-unit)
|
||||
#
|
||||
|
||||
system$(PPUEXT) : sysamiga.pas $(SYSLINUXDEPS) $(SYSDEPS)
|
||||
$(COMPILER) -ui386 -dm68k -Us -Sg sysamiga.pas $(REDIR)
|
||||
$(SYSTEMUNIT)$(PPUEXT) : $(SYSTEMUNIT).pas $(SYSLINUXDEPS) $(SYSDEPS)
|
||||
$(COMPILER) -ui386 -dm68k -Us -Sg $(SYSTEMUNIT).pas $(REDIR)
|
||||
|
||||
strings$(PPUEXT) : ../template/strings.pp system$(PPUEXT)
|
||||
$(COMPILER) ../template/strings.pp $(REDIR)
|
||||
|
@ -89,7 +89,80 @@ const
|
||||
(0,0,0,0,0,0,0,0);
|
||||
|
||||
|
||||
{$I exec.inc}
|
||||
TYPE
|
||||
{ from exec.inc}
|
||||
BPTR = Longint;
|
||||
ULONG = Longint;
|
||||
|
||||
|
||||
pNode = ^tNode;
|
||||
tNode = packed Record
|
||||
ln_Succ, { * Pointer to next (successor) * }
|
||||
ln_Pred : pNode; { * Pointer to previous (predecessor) * }
|
||||
ln_Type : Byte;
|
||||
ln_Pri : Shortint; { * Priority, for sorting * }
|
||||
ln_Name : PChar; { * ID string, null terminated * }
|
||||
End; { * Note: Integer aligned * }
|
||||
|
||||
pMinNode = ^tMinNode;
|
||||
tMinNode = packed Record
|
||||
mln_Succ,
|
||||
mln_Pred : pMinNode;
|
||||
End;
|
||||
|
||||
pList = ^tList;
|
||||
tList = packed record
|
||||
lh_Head : pNode;
|
||||
lh_Tail : pNode;
|
||||
lh_TailPred : pNode;
|
||||
lh_Type : Byte;
|
||||
l_pad : Byte;
|
||||
end;
|
||||
|
||||
{ minimum list -- no type checking possible }
|
||||
|
||||
pMinList = ^tMinList;
|
||||
tMinList = packed record
|
||||
mlh_Head : pMinNode;
|
||||
mlh_Tail : pMinNode;
|
||||
mlh_TailPred : pMinNode;
|
||||
end;
|
||||
|
||||
pMsgPort = ^tMsgPort;
|
||||
tMsgPort = packed record
|
||||
mp_Node : tNode;
|
||||
mp_Flags : Byte;
|
||||
mp_SigBit : Byte; { signal bit number }
|
||||
mp_SigTask : Pointer; { task to be signalled (TaskPtr) }
|
||||
mp_MsgList : tList; { message linked list }
|
||||
end;
|
||||
|
||||
pTask = ^tTask;
|
||||
tTask = packed record
|
||||
tc_Node : tNode;
|
||||
tc_Flags : Byte;
|
||||
tc_State : Byte;
|
||||
tc_IDNestCnt : Shortint; { intr disabled nesting }
|
||||
tc_TDNestCnt : Shortint; { task disabled nesting }
|
||||
tc_SigAlloc : ULONG; { sigs allocated }
|
||||
tc_SigWait : ULONG; { sigs we are waiting for }
|
||||
tc_SigRecvd : ULONG; { sigs we have received }
|
||||
tc_SigExcept : ULONG; { sigs we will take excepts for }
|
||||
tc_TrapAlloc : Word; { traps allocated }
|
||||
tc_TrapAble : Word; { traps enabled }
|
||||
tc_ExceptData : Pointer; { points to except data }
|
||||
tc_ExceptCode : Pointer; { points to except code }
|
||||
tc_TrapData : Pointer; { points to trap data }
|
||||
tc_TrapCode : Pointer; { points to trap code }
|
||||
tc_SPReg : Pointer; { stack pointer }
|
||||
tc_SPLower : Pointer; { stack lower bound }
|
||||
tc_SPUpper : Pointer; { stack upper bound + 2 }
|
||||
tc_Switch : Pointer; { task losing CPU }
|
||||
tc_Launch : Pointer; { task getting CPU }
|
||||
tc_MemEntry : tList; { allocated memory }
|
||||
tc_UserData : Pointer; { per task data }
|
||||
end;
|
||||
{ end exec.inc}
|
||||
|
||||
TYPE
|
||||
TDateStamp = packed record
|
||||
@ -1833,7 +1906,10 @@ end.
|
||||
|
||||
{
|
||||
$Log$
|
||||
Revision 1.10 2004-01-20 23:05:31 hajny
|
||||
Revision 1.11 2004-05-05 21:26:34 florian
|
||||
* some m68k and amiga related stuff fixed
|
||||
|
||||
Revision 1.10 2004/01/20 23:05:31 hajny
|
||||
* ExecuteProcess fixes, ProcessID and ThreadID added
|
||||
|
||||
Revision 1.9 2003/10/25 23:42:35 hajny
|
||||
@ -1855,4 +1931,4 @@ end.
|
||||
Revision 1.4 2002/09/07 16:01:16 peter
|
||||
* old logs removed and tabs fixed
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -62,7 +62,7 @@
|
||||
Type
|
||||
{$Ifdef HAS_INTERNAL_INTTYPES}
|
||||
{ The compiler has all integer types defined internally. Here
|
||||
we define only aliases }
|
||||
we define only aliases }
|
||||
DWord = LongWord;
|
||||
Cardinal = LongWord;
|
||||
Integer = SmallInt;
|
||||
@ -111,8 +111,6 @@ Type
|
||||
{$ifdef CPUM68K}
|
||||
ValReal = Real;
|
||||
|
||||
{ Comp type does not exist on fpu }
|
||||
Comp = int64;
|
||||
{$define SUPPORT_SINGLE}
|
||||
{$IFDEF Unix}
|
||||
{ Linux FPU emulator will be used }
|
||||
@ -123,6 +121,9 @@ Type
|
||||
{ then support double type. }
|
||||
{$define SUPPORT_DOUBLE}
|
||||
{$ENDIF}
|
||||
{ Comp type does not exist on fpu }
|
||||
Comp = int64;
|
||||
PComp = ^Comp;
|
||||
{$endif CPUM68K}
|
||||
|
||||
{$ifdef CPUPOWERPC}
|
||||
@ -239,7 +240,7 @@ Type
|
||||
PInt64 = ^Int64;
|
||||
PPtrInt = ^PtrInt;
|
||||
PSizeInt = ^SizeInt;
|
||||
|
||||
|
||||
PPointer = ^Pointer;
|
||||
PPPointer = ^PPointer;
|
||||
|
||||
@ -729,7 +730,10 @@ const
|
||||
|
||||
{
|
||||
$Log$
|
||||
Revision 1.91 2004-05-01 23:55:18 peter
|
||||
Revision 1.92 2004-05-05 21:26:34 florian
|
||||
* some m68k and amiga related stuff fixed
|
||||
|
||||
Revision 1.91 2004/05/01 23:55:18 peter
|
||||
* replace strlenint with sizeint
|
||||
|
||||
Revision 1.90 2004/05/01 20:52:50 peter
|
||||
|
@ -18,20 +18,25 @@
|
||||
**********************************************************************}
|
||||
|
||||
Type
|
||||
// CARL, CHANGE THESE TO THE NEEDED VALUES ! (MVC)
|
||||
jmp_buf = packed record
|
||||
ebx,esi,edi : Longint;
|
||||
bp,sp,pc : Pointer;
|
||||
end;
|
||||
fp : longint; { frame pointer }
|
||||
sp : longint; { stack pointer }
|
||||
pc : longint; { program counter }
|
||||
aregs : array[0..3] of dword; { address registers (a2,a3,a4,a5) }
|
||||
end;
|
||||
PJmp_buf = ^jmp_buf;
|
||||
|
||||
Function Setjmp (Var S : Jmp_buf) : longint;
|
||||
Procedure longjmp (Var S : Jmp_buf; value : longint);
|
||||
|
||||
{
|
||||
$Log$
|
||||
Revision 1.4 2002-10-20 11:53:14 carl
|
||||
Revision 1.5 2004-05-05 21:26:34 florian
|
||||
* some m68k and amiga related stuff fixed
|
||||
|
||||
Revision 1.4 2002/10/20 11:53:14 carl
|
||||
* make the jmp_buf record packed, just in case
|
||||
|
||||
Revision 1.3 2002/09/07 16:01:20 peter
|
||||
* old logs removed and tabs fixed
|
||||
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user