Commit Graph

1151 Commits

Author SHA1 Message Date
Pierre Muller
57e84ef714 Update all Makefile's by running update fpcmake 2024-11-20 20:20:49 +01:00
svenbarth
d1c29e6cb9 * in the default exception handler add the captured exception to the exception object stack as well
+ added test (needs to work with any exception handling mechanism; currently tested with SetJmp/LongJmp, SEH 32-bit and SEH 64-bit based exception handling)

git-svn-id: trunk@49486 -
(cherry picked from commit 2b3edb2c53)
2024-01-19 11:54:38 +01:00
florian
92fe577846 * fix error on win64 and concerns about pulling math into the windows unit by a local arctan2 copy
(cherry picked from commit 7bd5613954)
2023-06-19 11:08:50 +02:00
marcoonthegit
66bfb69e96 * Tpoint.Angle initial version using arctan2
(cherry picked from commit 5fb88cef00)
2023-06-18 16:12:27 +02:00
Pierre Muller
4789afb4b0 Regenerated Makefile's after cherry-pick adding soft fpu related units 2022-02-01 14:02:07 -07:00
svenbarth
10838d8c19 + add all softfpu units for various targets
git-svn-id: trunk@47187 -
(cherry picked from commit 707034b271)
2022-02-01 13:55:16 -07:00
florian
4995677b0f --- Zusammenführung
-- Zusammenführen von r45995 in ».«:
U    rtl/linux/i386/sighnd.inc
U    rtl/linux/x86_64/sighnd.inc
A    tests/webtbs/tw37468.pp
-- Aufzeichnung der Informationen für Zusammenführung von r45995 in ».«:
 U   .
-- Zusammenführen von r46207 in ».«:
U    rtl/linux/i386/sighndh.inc
-- Aufzeichnung der Informationen für Zusammenführung von r46207 in ».«:
 G   .
-- Zusammenführen von r46208 in ».«:
G    rtl/linux/i386/sighnd.inc
-- Aufzeichnung der Informationen für Zusammenführung von r46208 in ».«:
 G   .
-- Zusammenführen von r46210 in ».«:
U    rtl/aix/sighnd.inc
U    rtl/beos/i386/sighnd.inc
U    rtl/go32v2/dpmiexcp.pp
U    rtl/haiku/i386/sighnd.inc
U    rtl/haiku/x86_64/sighnd.inc
U    rtl/i8086/math.inc
U    rtl/inc/genmath.inc
U    rtl/linux/m68k/sighnd.inc
U    rtl/linux/powerpc/sighnd.inc
U    rtl/linux/powerpc64/sighnd.inc
U    rtl/linux/sparc/sighnd.inc
U    rtl/linux/sparc64/sighnd.inc
G    rtl/linux/x86_64/sighnd.inc
U    rtl/netbsd/arm/sighnd.inc
U    rtl/netbsd/m68k/sighnd.inc
U    rtl/netbsd/powerpc/sighnd.inc
U    rtl/netbsd/x86_64/sighnd.inc
U    rtl/openbsd/i386/sighnd.inc
U    rtl/openbsd/x86_64/sighnd.inc
U    rtl/os2/system.pas
U    rtl/solaris/i386/sighnd.inc
U    rtl/solaris/sparc/sighnd.inc
U    rtl/solaris/x86_64/sighnd.inc
U    rtl/win32/system.pp
U    rtl/win64/system.pp
U    tests/webtbs/tw37468.pp
U    rtl/wince/system.pp
-- Aufzeichnung der Informationen für Zusammenführung von r46210 in ».«:
 G   .
-- Zusammenführen von r46992 in ».«:
G    rtl/linux/x86_64/sighnd.inc
A    tests/webtbs/tw37468b.pp
-- Aufzeichnung der Informationen für Zusammenführung von r46992 in ».«:
 G   .
-- Zusammenführen von r47114 in ».«:
G    rtl/linux/x86_64/sighnd.inc
G    rtl/linux/i386/sighnd.inc
A    tests/webtbs/tw37926.pp
-- Aufzeichnung der Informationen für Zusammenführung von r47114 in ».«:
 G   .
-- Zusammenführen von r47117 in ».«:
G    rtl/linux/i386/sighnd.inc
G    rtl/linux/x86_64/sighnd.inc
G    rtl/linux/m68k/sighnd.inc
-- Aufzeichnung der Informationen für Zusammenführung von r47117 in ».«:
 G   .

git-svn-id: branches/fixes_3_2@47906 -
2020-12-30 14:07:17 +00:00
marco
9728612601 # revisions: 44952,44996,45855,46343,46753,46839
git-svn-id: branches/fixes_3_2@47573 -
2020-11-25 07:26:17 +00:00
pierre
0830edbde5 Regenerate all Makefile's after ios introduction and macos->macosclassic changes inside utils/fpcm/fpcmake.ini
git-svn-id: branches/fixes_3_2@46923 -
2020-09-23 09:47:20 +00:00
Jonas Maebe
b6eafa3039 * regenerated Makefiles
git-svn-id: branches/fixes_3_2@46868 -
2020-09-15 19:54:06 +00:00
marco
522350a85d * fixes to 3.2.1
git-svn-id: branches/fixes_3_2@45662 -
2020-06-20 16:47:24 +00:00
pierre
12c54a62e7 Update all Makefile's to enable x86_64-haiku target
git-svn-id: branches/fixes_3_2@42135 -
2019-05-28 22:07:11 +00:00
yury
2d48bc8b9c * Regenerated makefiles.
git-svn-id: branches/fixes_3_2@40541 -
2018-12-13 18:18:24 +00:00
marco
d143ab60e1 * regenned makefile without date/rev components for easier merging.
git-svn-id: trunk@39630 -
2018-08-18 15:06:25 +00:00
nickysn
65d8836952 * updated dependencies of unit ports (objpas and x86 is no longer required on
certain platforms) and regenerated makefiles

git-svn-id: trunk@39373 -
2018-07-04 00:33:12 +00:00
pierre
d6be56e225 Regenerated Makefile's after addition of ppas and ppaslink script removal in rev 38745
git-svn-id: trunk@38750 -
2018-04-12 15:23:03 +00:00
michael
16ba47be46 * Patch from Ondrej Pokorny to convert unit names to CamelCase (bug ID 33481)
git-svn-id: trunk@38616 -
2018-03-23 22:06:36 +00:00
florian
4d63945b8d + handle also STATUS_FLOAT_MULTIPLE_FAULTS, resolves #32822
git-svn-id: trunk@38269 -
2018-02-17 16:16:16 +00:00
florian
b421ed0db1 * fixed TranslateMxcsr
+ correctly handle sse exceptions on i386, resolves #32671
+ test

git-svn-id: trunk@38268 -
2018-02-17 15:40:49 +00:00
pierre
595938637e Add explicit FPC_SYSTEM_OPT variable that is only used for compilation of system units, thus allowing to explicitly pass -Sf option
git-svn-id: trunk@37890 -
2018-01-02 16:50:58 +00:00
florian
5bedaf11f4 * fpcmake.inc and Makefiles renerated after last commit
git-svn-id: trunk@37834 -
2017-12-27 15:08:18 +00:00
pierre
d18627f0af * Update all fpcsrc Makefile's using latest fpcmake version 2017-09-21 rev 37286
git-svn-id: trunk@37462 -
2017-10-16 00:27:27 +00:00
Károly Balogh
04dee0fc04 regenerated Makefiles for m68k-macos target
git-svn-id: trunk@37034 -
2017-08-22 11:16:42 +00:00
nickysn
748428b637 + support the KOI8-R and KOI8-U Cyrillic encodings
git-svn-id: trunk@36445 -
2017-06-07 13:51:53 +00:00
nickysn
fce5fbd726 + added cp3021 (Bulgarian MIK) code page support
git-svn-id: trunk@36444 -
2017-06-07 13:19:20 +00:00
nickysn
396eebbfb5 + added support for iso8859-[3,4,6,7,8,9,10,11,13,14,15,16]
* charmap .txt files in rtl/ucmaps for iso8859-[1,2,5] also updated

git-svn-id: trunk@36425 -
2017-06-05 16:36:24 +00:00
nickysn
35be7348fb + added code pages 737, 775, 857, 860, 861, 862, 863, 864, 865 and 869
git-svn-id: trunk@36423 -
2017-06-05 14:25:15 +00:00
nickysn
ef25c33d69 + added cp855 to the implicit unit list in the rtl makefiles
git-svn-id: trunk@36421 -
2017-06-05 12:19:01 +00:00
pierre
17b2671213 Regenerate all Makefile's after changes related to FPCDIR checks
git-svn-id: trunk@35833 -
2017-04-18 14:15:47 +00:00
florian
673c0b3df3 * build unit update
git-svn-id: trunk@35217 -
2016-12-30 15:25:23 +00:00
Tomas Hajny
e5ceb04725 * patch by Dmitry Boyarintsev (bug #31023) implementing SysSetCtrlBreakHandler for Win32 and Win64
git-svn-id: trunk@35050 -
2016-12-03 23:35:20 +00:00
pierre
6c6cf07c87 Remove heaptrc unit from buildrtl uses clause, heaptrc is handled separately to allow use of -gc option in RTL compilation
git-svn-id: trunk@34265 -
2016-08-10 09:49:55 +00:00
pierre
ed6dbc5330 Regenerate after: Allow compilation of win32 RTL with -gc option, by adding explicit heaptrc dependency to all units
git-svn-id: trunk@34264 -
2016-08-10 09:48:46 +00:00
pierre
0be6018ffc Allow compilation of win32 RTL with -gc option, by adding explicit heaptrc dependency to all units
git-svn-id: trunk@34263 -
2016-08-10 09:48:19 +00:00
nickysn
5306ee552b * regenerated makefiles with latest fpcmake
git-svn-id: trunk@34008 -
2016-06-18 01:00:45 +00:00
nickysn
a58dd988a4 * regenerate makefiles after the fpcmake update
git-svn-id: trunk@34002 -
2016-06-17 22:05:59 +00:00
svenbarth
638339812e i386-win32 also has indirect entry information, so enable this in the compiler and disable the corresponding define in system.pp
git-svn-id: trunk@33985 -
2016-06-14 12:25:21 +00:00
svenbarth
3f45860cf9 Use constref instead of const when passing TEntryInformation along
git-svn-id: trunk@33951 -
2016-06-11 20:45:47 +00:00
svenbarth
535621faaa Rename FPC_HAS_INDIRECT_MAIN_INFORMATION to FPC_HAS_INDIRECT_ENTRY_INFORMATION which is more logical considering the record's name
git-svn-id: trunk@33950 -
2016-06-11 20:38:22 +00:00
svenbarth
788393c298 Change WideString initialization to work correctly with indirect main information as well
rtl/inc/systemh.inc & rtl/java/jsystemh_types.inc:
  - TEntryInformation: remove WideInitTables
rtl/win/sysosh.inc:
  + TEntyrInformationOS: add WideInitTables
rtl/win/syswin.inc:
  * adjust WStrInitTablesTable, so that it is now a pointer and can be used both with direct and indirect main entry
  * InitWin32Widestrings: WStrInitTablesTable is now a pointer
rtl/win32/sysinit.inc:
  * WideInitTables has moved to the OS specific part of the entry information
rtl/win32/system.pp:
  * OsSetupEntryinformation: setup WStrInitTablesTable

git-svn-id: trunk@33571 -
2016-04-29 13:13:14 +00:00
svenbarth
af53fcb48c Adjust SysInstance so that it is correctly handled with the indirect entry information on Win32
win/sysosh.inc, TEntryInformationOS:
  + new field SysInstance that will hold the address to the main program's SysInstance variable
win32/system.pp:
  * rename SysInstance to FPCSysInstance and make it a PLongInt
  * OsSetupEntryInformation: setup FPCSysInstance
  * adjust initialization of SysInstance to use FPCSysInstance instead
win32/sysinit.inc:
  * SysInstance is no longer an external
  * initialize the OS.SysInstance field of EntryInformation
win64/system.pp:
  * add a FPCSysInstance that's a pointer to SysInstance
win/winres.inc:
  * SysInstance is now a pointer and has the same name on both Win32 and Win64

git-svn-id: trunk@33107 -
2016-02-19 16:22:20 +00:00
svenbarth
6afda909d4 Rework TlsKey handling on Windows so that it works as intended with indirect main information
rtl/inc/system.inc:
  * SetupEntryInformation: call new, optional function OSSetupEntryInformation to handle platform specific entry information initialization
rtl/win/sysosh.inc, TEntryInformationOS:
  + new field TlsKeyAddr which will hold the address to the main binary's TlsKey variable
win32/sysinit.inc:
  + provide the variable holding the TlsKey and pass that on to the entry information record
win32/system.pp:
  + new OS specific entry information initialization (currently only the TlsKey)
win/systhrd.inc:
  * declare TlsKey as a pointer to a DWord value instead of a DWord; on non-indirect entry platforms this is initialized with the address of new variable TlsKeyVar, on indirect entry platforms it will be initialized by the entry information initialization
  * adjust usages of TlsKey from DWord to PDWord
win/systlsdir.inc:
  * TlsKey is now a PDWord and (in sysinit) points to TlsKeyVar
win/syswin.inc:
  * adjust TlsKey usage
inc/heaptrc.pp:
  * TlsKey is now a PDWord, thus adjust the import and the usage

git-svn-id: trunk@33091 -
2016-02-12 17:03:52 +00:00
svenbarth
e3060130a4 Adjustments so that the resource string related tables are provided inside the system unit (both for indirect and direct entry targets).
rtl/inc/system.inc:
  + new variables that hold pointers to the tables
  + new procedure SetupEntryInformation() that should be used in the entry points of indirect entry targets to setup cross target fields
  + for direct entry targets the two resource string tables are imported here and supplied as initialization to the table pointers
objpas/objpas.pp:
  * adjust table declarations so that the pointers provided from the System unit are used
  * adjust usages of the tables as they are now pointers
win32/system.pp:
  * Exe_Entry: use SetupEntryInformation()
win/syswin.inc:
  * Dll_Entry: use SetupEntryInformation()

git-svn-id: trunk@33028 -
2016-01-29 17:19:33 +00:00
svenbarth
7b67ead440 Pass further main program data through the indirect entry information.
rtl/inc/systemh.inc:
  + TEntryInformation: add Pointer fields ResourceStringTables, ResStrInitTables, WideInitTables (for targets with separate WideString type) and ResLocation (not used on Windows, but since most other targets don't have Windows' resource system it's not part of OS)
rtl/java/jsystemh_types.inc:
  + TEntryInformation: adjust for consistency reasons
rtl/win32/sysinit.inc:
  * SysInitEntryInformation: initialize with pointers to the correct tables

git-svn-id: trunk@33027 -
2016-01-29 16:51:27 +00:00
svenbarth
0491bca72a inc/system.inc:
+ add (uninitialized) global variable EntryInformation for systems that use indirect main information
win32/system.pp:
  - remove initialized EntryInformation and instead rely on the one passed by the sysinit* units

git-svn-id: trunk@33026 -
2016-01-29 16:24:53 +00:00
svenbarth
7e1e947b71 asm_exit is only needed on Win32 (Note: the removal of asm_exit from TEntryInformation in the previous commit should have been in this one -.- )
rtl/win32/sysosh.inc:
  + add TEntryInformationOS for Win32 which contains asm_exit
rtl/win32/system.pp:
  * EntryInformation: adjust initialization
  * system_exit: call the correct function variable
rtl/win32/sysinit.inc:
  * SysInitEntryInformation: adjust initialization
  * SetupEntryInformation: adjust commented setup of the function variable
rtl/java/jsystemh_types.inc:
  * adjust TEntryInformation for consistency reasons

git-svn-id: trunk@33025 -
2016-01-29 15:36:58 +00:00
svenbarth
b525cecad8 - get rid of the calling convention modifier for PascalMain as it's generated using the default calling convention anyway (without any parameters this luckily doesn't matter that much ;) )
(Note: adjusted merge info as in my packages branch there is a less complete commit for this)

git-svn-id: trunk@33023 -
2016-01-29 14:51:15 +00:00
sergei
97eccd73b7 - Win32 RTL: removed assembler startup files, which are unused since version 2.0.x
git-svn-id: trunk@32684 -
2015-12-20 01:41:28 +00:00
pierre
60070169bb Regenerated Makefile's for rtl/linux and rtl/win32, aarch64-linux target was missing
git-svn-id: trunk@32601 -
2015-12-06 11:35:28 +00:00
florian
7f13f845ac * fix Makefile after r32336
git-svn-id: trunk@32339 -
2015-11-15 20:01:45 +00:00