Commit Graph

1166 Commits

Author SHA1 Message Date
Pierre Muller
603614e28e Adapt USE_STATX code to FPC_DOTTEDUNITS 2023-08-02 14:18:26 +02:00
Michael VAN CANNEYT
ccfa38c68e * Dotted RTL compiles 2023-07-27 19:04:03 +02:00
Michael VAN CANNEYT
78374bf772 * Synchronize API for AnsiString/Unicode string, keep string where possible. 2023-07-24 15:38:09 +02:00
Michaël Van Canneyt
4c529287c6 * string -> shortstring 2023-07-22 08:26:22 +00:00
Pierre Muller
512faa7141 Restore usage of fpexecve function inside ExecuteProcess
as set by commit 305d34a8f6
2023-07-19 18:03:02 +02:00
Michaël Van Canneyt
bf3ced76b2 * Remove use of internal conversion routines 2023-07-15 18:22:36 +02:00
Michael VAN CANNEYT
6084bb6d09 * Some forgotten string -> shortstring instances 2023-07-14 20:13:43 +02:00
Michael VAN CANNEYT
96c83e7f39 * move $H here 2023-07-14 17:26:11 +02:00
Michael VAN CANNEYT
b9a1a90d6e * String -> ansistring 2023-07-14 17:26:11 +02:00
Michael VAN CANNEYT
74fdf0692c * string -> shortstring 2023-07-14 17:26:11 +02:00
Michael VAN CANNEYT
6ffa3d4a89 * Char -> AnsiChar 2023-07-14 17:26:09 +02:00
Pierre Muller
a342b74f66 Set iconv_is_in_libc macro for DragonFly OS 2023-05-26 09:39:39 +02:00
marcoonthegit
452ec93f06 * implement waitformultiple for win32 only.
* Change interface to allow for COM waiting + a basic windows implementation. (only for desktop apps? Use msgwait* for the rest?)
2023-05-20 14:37:26 +02:00
Pierre Muller
01ad5f2c28 Set macro iconv_is_in_libc for FreeBSD OS 2023-05-05 14:27:58 +02:00
Pierre Muller
be1cc68a99 Change libc statx function to weakexternal
Test if statx is nil before call
2023-03-12 16:28:58 +01:00
Jinyang He
92e60d2107 add loongarch64 linux rtl support 2023-02-05 19:18:48 +00:00
Jonas Maebe
305d34a8f6 Darwin: fix make cycle
unix.fpexecv takes a rawbytestring as first parameter, so inside the child
it was converting the pchar back to an ansistring and also converting it
to the OS file system code page. Since Darwin uses vfork/execv in
SysUtils.Executeprocess, this could result in (exception)stack corruption
and for some reason only since d1b2fe16 it actually caused issues.

Use execve instead, which takes a pchar as first argument and doesn't
do any further conversions
2023-01-22 22:34:25 +01:00
Michaël Van Canneyt
770c21c0dd * Fix compile error for i386-linux 2023-01-21 20:21:29 +01:00
Michael Van Canneyt
d1b2fe1659 * Date/Time info for files (Delphi compatibility) 2023-01-21 13:45:04 +01:00
marcoonthegit
f341baeaa7 * fixed ambiguity between pipe(2) with two params and pipe(3) with one that broke -dFPC_USE_LIBC 2022-08-22 13:22:57 +02:00
Jonas Maebe
8c251db2c1 Darwin: fix compilation on macOS/AArch64 after 1f328cf3
No function suffixes there since there's no backward compatibility issue.
2022-07-10 22:28:30 +02:00
Jonas Maebe
1f328cf362 Darwin: use recent versions of stat(fs) records when available
When the RTL is built for Mac OS X 10.6 or newer, use the new versions
and the corresponding alternate system library functions.

Also extracted the Darwin stat record definition to reduce the
ifdef hell.
2022-07-06 22:25:05 +02:00
marcoonthegit
99e3789fa3 * commit ACM's fpc.diff, resolves mantis #37220 and FreeBSD 12/13 syscall port 2022-06-18 13:58:00 +02:00
marcoonthegit
e5ac0b2689 * anonymous method overloads for synchronize/queue. 2022-06-01 13:54:06 +02:00
Jonas Maebe
d5b368988f LLVM: add Read/WritePort* implementations
Fixes Unix graph compilation on x86 with LLVM
2021-12-16 21:17:42 +01:00
Michaël Van Canneyt
e97e27b8d5 * Raise exception for fileseek positions that do not fit in longing. Issue #39407 2021-10-17 17:58:11 +02:00
Nikolay Nikolov
f21273612a + also fill DayOfWeek in the Unix implementation of SysUtils.GetLocalTime 2021-10-13 02:39:04 +03:00
svenbarth
d0b1402e10 * fix for Mantis #37252: apply patch by Bi0T1N to implement TThread.NameThreadForDebugging for Mac OS X 10.6 and newer (older versions don't provide the required functions)
git-svn-id: trunk@49323 -
2021-05-02 12:46:39 +00:00
florian
c1f85ac3a1 + initial implementation of path dependent IsFileNameCaseSensitive/IsFileNameCasePreserving functions for darwin
git-svn-id: trunk@49164 -
2021-04-10 13:29:59 +00:00
Jonas Maebe
0eb9dd3879 * Darwin support for printing line info for backtraces when using Dwarf,
based on patches by Colin Western, mantis #38483)
   o requires that the program/library is compiled with -Xg (or that
     dsymutil is run on it after compiling), and that the .dSYM bundle
     is in the same directory as the program/library
   o always use the "dl" unit in exeinfo for Darwin, as that's needed for
     dynamic library support, and this does not cause an extra dependency
     since on Darwin we always use libc
   o cleaned up the exeinfo unit for Darwin, and sped it up by using mmap
     instead of small reads
   o fixed unit dependencies for exeinfo, lineinfo and lnfodwarf in Darwin
     RTL Makefile
  * use the process address info from the original exe even when reading
    the debug information from an external file
  - removed outdated ifdef'd darwin code from dl.pp (no longer needed now
    that processaddress gets set correctly in exeinfo for that platform)

git-svn-id: trunk@49140 -
2021-04-08 19:50:34 +00:00
michael
2a96ad2715 * Check buffer overflow when reading
git-svn-id: trunk@49012 -
2021-03-19 14:25:21 +00:00
michael
3575369989 * Fix leap second reading
git-svn-id: trunk@49006 -
2021-03-19 09:22:13 +00:00
ondrej
2a61397d37 unix: fix timezone info for timers after the last transition
git-svn-id: trunk@49005 -
2021-03-19 08:11:10 +00:00
ondrej
881235b489 unix: fix RefreshTZInfo UTC parameter
git-svn-id: trunk@49001 -
2021-03-18 19:21:51 +00:00
florian
b7fe338bbe * mips and xtensa compilation fixed
git-svn-id: trunk@48928 -
2021-03-09 21:07:51 +00:00
florian
bb97c5ab69 + RiscV: set threadvarblocksize
* sanity check if threadvarblocksize is really set

git-svn-id: trunk@48925 -
2021-03-08 22:07:07 +00:00
florian
3e453f92fc * statx based Sysutils.FileGetDate with handle fixed
+ test

git-svn-id: trunk@48520 -
2021-02-07 17:59:28 +00:00
florian
b08717fef6 * make statx based Sysutils.FileAge working with relative pathes
+ test

git-svn-id: trunk@48519 -
2021-02-07 17:41:27 +00:00
florian
b4a1c27c58 * renamed new syscall wrapper in linux to be consist with the others
git-svn-id: trunk@48479 -
2021-01-31 22:25:18 +00:00
florian
90ba89a128 * linux: FileGetDate makes use of statx if needed
git-svn-id: trunk@48476 -
2021-01-31 18:38:50 +00:00
florian
ef04e3983f * sysutils on linux uses only the new syscalls if the system has no suitable clong type
git-svn-id: trunk@48475 -
2021-01-31 18:20:01 +00:00
florian
c3656c6b1c * fallback to fputime if fputimensat fails as not being available
git-svn-id: trunk@48474 -
2021-01-31 18:09:57 +00:00
florian
d402e0b940 * Y2K38 problem for linux in sysutils.findfirst/findnext should be solved
git-svn-id: trunk@48473 -
2021-01-31 18:02:55 +00:00
florian
b8ab06aae7 + futimens syscall
* make use of futimens syscall in sysutils unit
  + tests

git-svn-id: trunk@48472 -
2021-01-31 17:12:39 +00:00
florian
e6f575d43c + make use of the fputimensat syscall on linux to enable always times beyond 32 bit
git-svn-id: trunk@48471 -
2021-01-31 16:43:53 +00:00
florian
f39f8d0f1a * linux: make use of statx in Sysutils.FileAge if available
git-svn-id: trunk@48457 -
2021-01-30 18:47:27 +00:00
svenbarth
efe6b32638 + add declaration of FpSchedGetAffinity when the Linux target is compiled with FPC_USE_LIBC
git-svn-id: trunk@48121 -
2021-01-09 15:58:18 +00:00
ondrej
f982317ebd * cwstring: open iconv with the transliterate flag if iconvctl is not available
git-svn-id: trunk@47635 -
2020-11-29 17:09:19 +00:00
ondrej
6854f171d1 * revert r47631: cwstring: open iconv with the transliterate flag instead of setting it later with iconvctl because it may be unavailable
git-svn-id: trunk@47633 -
2020-11-29 14:59:18 +00:00
ondrej
91229dcee9 * cwstring: open iconv with the transliterate flag instead of setting it later with iconvctl because it may be unavailable
git-svn-id: trunk@47631 -
2020-11-29 12:08:55 +00:00