Commit Graph

405 Commits

Author SHA1 Message Date
Jonas Maebe
aee5380ae0 * merged trunk up to r20882
o support for the new codepage-aware ansistrings in the jvm branch
   o empty ansistrings are now always represented by a nil pointer rather than
     by an empty string, because an empty string also has a code page which
     can confuse code (although this will make ansistrings harder to use
     in Java code)
   o more string helpers code shared between the general and jvm rtl
   o support for indexbyte/word in the jvm rtl (warning: first parameter
     is an open array rather than an untyped parameter there, so
     indexchar(pcharvar^,10,0) will be equivalent to
     indexchar[pcharvar^],10,0) there, which is different from what is
     intended; changing it to an untyped parameter wouldn't help though)
   o default() support is not yet complete
   o calling fpcres is currently broken due to limitations in
     sysutils.executeprocess() regarding handling unix quoting and
     the compiler using the same command lines for scripts and directly
     calling external programs
   o compiling the Java compiler currently requires adding ALLOW_WARNINGS=1
     to the make command line

git-svn-id: branches/jvmbackend@20887 -
2012-04-15 15:54:10 +00:00
Jonas Maebe
44bd889b9b * regenerated Makefiles with AIX support
git-svn-id: trunk@20812 -
2012-04-11 18:03:57 +00:00
pierre
2c4d8cc9d9 Add x86_64-openbsd target in Makefiles
git-svn-id: trunk@20723 -
2012-04-06 16:49:08 +00:00
pierre
e6cf348904 Update Makefile for mips-linux support
git-svn-id: trunk@20448 -
2012-02-29 11:22:05 +00:00
marco
8c9a603597 * belongs to last commit, x86_64 part
git-svn-id: trunk@20173 -
2012-01-25 13:47:22 +00:00
marco
ed6a399ae2 * cleanup ELF ABI tag a bit. Set abitag version to 9.0 for now.
git-svn-id: trunk@20172 -
2012-01-25 13:46:58 +00:00
florian
9426cac1b0 * rebuilt Makefiles
git-svn-id: trunk@19748 -
2011-12-04 15:34:01 +00:00
paul
3e29f0b179 rtl: make cwstring.pp dependent of dynlibs, load iconvctl dynamically
git-svn-id: trunk@19538 -
2011-10-25 01:25:23 +00:00
pierre
33604a6a49 * Shared library dllrpt0.as init code for i386 and x86_64 CPUs
git-svn-id: trunk@19276 -
2011-09-28 23:07:39 +00:00
pierre
23a8fb1754 Suppress console messages about sign extension in ioctl system call
git-svn-id: trunk@19241 -
2011-09-26 10:24:00 +00:00
marco
f538655cbf * enable character for FreeBSD.
git-svn-id: trunk@19223 -
2011-09-25 12:38:22 +00:00
pierre
b9009d8c02 * Fix PIC code for BSD x86_64 syscall and x86_64 freebsd startup assembler files
git-svn-id: trunk@19181 -
2011-09-22 21:16:42 +00:00
marco
07fabab526 * fpgetsid, Mantis #20329
git-svn-id: trunk@19178 -
2011-09-22 13:21:38 +00:00
pierre
32f7104ffe * Fix failure of webtbs/tw17560:
the C structure sem (also TSemaphore record) used in cthreads unit
    inside cIntSemaphoreInit function via
    a GetMem(sizeof(TSempahore). sem was a simple cint
    value which lead to memoryt overwriting past end of
    allocated memory in sem_XXX calls.

git-svn-id: trunk@19176 -
2011-09-22 11:37:27 +00:00
Jonas Maebe
28c20cfc5e * the default string type for the JVM target is no longer automatically
unicodestring = java.lang.String. The reason this was the default in
    the past is that this was the first string type that was implemented,
    and without it being the default most code involving string operations
    would fail. Now the default strings types are the same as for other
    targets
  + new {$modeswitch unicodestrings} directive, that when activated
    *together* with {$h+},
   1) changes char into an alias for widechar
   2) changes string into an alias for unicodestring
   3) changes the preferred string evaluation type (in case of uncertainty)
      to unicodestring
    {$modeswitch unicodestrings} with {$h-} does not change anything at all
    regarding the string type (it still changes the char type)
  + new uuchar unit that redefines char as widechar, and which is automatically
    included by the compiler if {$modeswitch unicodestrings} is enabled

git-svn-id: branches/jvmbackend@18781 -
2011-08-20 08:35:47 +00:00
pierre
1c2a5f9819 + Update all Makefile's modified by
change in utils/fpcm/fpcmake.ini in prevous commit.

  Adapt also other files to that change:

  * compiler/globals.pas: Replace $FPCTARGET by os_string if
  tf_use_8_3 flag is set for target_info also.

  * tests/Makefile.fpc: Modify TEST_TARGETSUFFIX in the same way
  as TARGETSUFFIX was modified in previous commit.

  * tests/utils/dotest.pp:
    + New variable UseOSOnly, set to true if only target OS name
    should be used for subdirectories.

git-svn-id: trunk@18228 -
2011-08-16 20:10:19 +00:00
marco
39d7bb511d * Regenned all makefiles before 2.6.x branching.
git-svn-id: trunk@18073 -
2011-08-03 13:41:52 +00:00
marco
964597ad6a * pathname functions
git-svn-id: trunk@17692 -
2011-06-08 10:44:56 +00:00
marco
02c0b7db9e * some more KERN_PROC constants.
git-svn-id: trunk@17681 -
2011-06-07 12:22:01 +00:00
marco
3a12f018f4 * Updated statfs to FreeBSD5+ level. Used a statfs union to provide some backwards compat.
git-svn-id: trunk@17147 -
2011-03-19 21:43:36 +00:00
marco
ee31bd0b62 * added getfsstat
git-svn-id: trunk@17038 -
2011-02-27 20:15:39 +00:00
marco
56ca6b2db3 * small fix from Jasper Lievens.
git-svn-id: trunk@16702 -
2011-01-04 08:31:39 +00:00
florian
747b93b7ec + cpu unit for x86-64 containing a CAS128 implementation
git-svn-id: trunk@16284 -
2010-11-01 08:20:31 +00:00
Jonas Maebe
8b0301409a + i386/iphonesim target for the new iPhoneSimulator in Xcode 3.2.4 and
later: the same as i386/darwin, except
      a) uses the non-fragile Objective-C ABI/runtime
      b) does not require stubs for direct calls/jumps (not required for
         i386/darwin under 10.6 and later either, but still generated
         there for backwards compatibility)
      c) only the same packages are enabled as for ARM/Darwin
      d) MacOSAll is compiled specifically for the iPhoneSimulator SDK
    This target also defines the symbol "darwin" apart from the target
    name "iphonesim" for source code compatibility reasons.

git-svn-id: trunk@16065 -
2010-09-29 21:56:47 +00:00
pierre
0550e2ae64 * Allow compilation with DEBUG=1
git-svn-id: trunk@15895 -
2010-08-24 15:06:50 +00:00
florian
786c4e206f * enables compilation of iso7185 unit on all targets
git-svn-id: trunk@15730 -
2010-08-06 17:45:42 +00:00
daniel
1009a84e25 + Add modify_ldt to linux unit
+ Add sched_yield to linux unit
  - Remove clone for m68k from linux unit (unimplemented assembler section)
  + Add fpsigtimedwait to baseunix unit

git-svn-id: trunk@15602 -
2010-07-18 21:53:26 +00:00
marco
6a12cb6e68 * continue exchanging untyped "Pointer" handle types to pointer to empty records.
see discussion mantis 16607. 

git-svn-id: trunk@15405 -
2010-06-10 20:28:39 +00:00
marco
5fac78e334 * start exchanging untyped "Pointer" handle types to pointer to empty records.
see discussion mantis 16607

git-svn-id: trunk@15404 -
2010-06-10 20:22:22 +00:00
marco
c477df5046 * TCriticalSection.Tryenter support (Mantis 15928) + short test/demo
tested on FreeBSD (general Unix) and Windows. Note that Haiku seems 
    to have a native threadmgr rather than the Unix one. Will notify 
    maintainer (Olivier)

git-svn-id: trunk@15026 -
2010-03-21 11:34:05 +00:00
marco
5d87461507 * moves the alias "TTime = time_t" from ptypes.inc to unixtype.pp.
This means it is not aliased in the body of the system unit (which causes
  trouble with the delphi type of the same name), but baseunix/unix/unixtype
  will containue to export the type.

git-svn-id: trunk@14584 -
2010-01-09 16:05:42 +00:00
marco
5121f470a2 * moved ugetrlimit to the implementation (as linux specific call it shouldn't be exported)
* syscall implementation for FreeBSD of get/setrlimit

git-svn-id: trunk@13875 -
2009-10-16 18:47:43 +00:00
Jonas Maebe
e246cac3ac * regenerated using latest fpcmake
git-svn-id: trunk@13487 -
2009-08-02 18:40:14 +00:00
Jonas Maebe
f6d452c2c0 * remove the RTL's installed signal handlers at the end of the system
unit's initialization code in case we're in a library
  + implemented InquireSignal(), AbandonSignalHandler(), HookSignal() and
    UnhookSignal() in the sysutils unit
  * for Kylix compatibility, these routines support operating on
    SIGINT and SIGQUIT as well, although they are not hooked by default
    by FPC. The run time errors/exception codes for these signals are
    resp. 217 and 233 (same as in Kylix; I changed ENoWideStringSupport
    to 234).
  * changed the BSD syscall version of fpsigaction to use pointer
    rather than "var" arguments (compatible with other targets, and
    required to be able to pass nil arguments inside the system unit)
  -> together fixes mantis #12704

git-svn-id: trunk@13077 -
2009-05-02 09:40:44 +00:00
Jonas Maebe
be5709fcfd + pthread_cond_broadcast() definition
git-svn-id: trunk@12856 -
2009-03-04 20:10:05 +00:00
marco
3265ce1aa1 * small makefile fix introduced with 64-bit port?
git-svn-id: trunk@12797 -
2009-02-25 22:24:08 +00:00
Jonas Maebe
1a1fc1357d * honour the specified stack size when creating new threads on unix
platforms + test (mantis #12942)

git-svn-id: trunk@12527 -
2009-01-08 18:37:24 +00:00
micha
d6b3d5dd38 * enable poll syscall in freebsd
git-svn-id: trunk@12156 -
2008-11-17 22:20:37 +00:00
marco
e0821f6682 * pipe cleanup from Ales, also fixes TProcess for AMD64.
git-svn-id: trunk@12006 -
2008-11-01 11:43:43 +00:00
Almindor
bf9358efd4 * revert previous AssignPipe change, will need different approach
git-svn-id: trunk@12002 -
2008-10-31 13:28:00 +00:00
Almindor
600da72d75 * fix AssignPipe for FreeBSD
git-svn-id: trunk@11996 -
2008-10-30 12:42:13 +00:00
marco
e5db5e4aa8 * regened makefiles to propagate makefile versions
git-svn-id: trunk@11947 -
2008-10-22 17:32:15 +00:00
marco
2300b7a484 * csu leftovers
git-svn-id: trunk@11802 -
2008-09-18 14:29:36 +00:00
marco
ec00f1d495 * initial version
git-svn-id: trunk@11799 -
2008-09-17 21:03:44 +00:00
florian
efe81977e1 + dummy intassignpipe for non-i386
git-svn-id: trunk@11791 -
2008-09-16 08:36:28 +00:00
marco
3f5511661a * lots of little longint() to TSysParam() fixes. Ancient code, brr.
git-svn-id: trunk@11790 -
2008-09-15 20:01:17 +00:00
marco
55bf13596e * correction for omfsnamelen, which hopefully fixes ostat
git-svn-id: trunk@11784 -
2008-09-14 20:42:46 +00:00
florian
e32f13dffb * intAssignPipe is i386 only code
git-svn-id: trunk@11767 -
2008-09-13 15:37:06 +00:00
florian
7f32e48fe1 + non working dummies, makes make happy though
git-svn-id: trunk@11765 -
2008-09-13 14:54:08 +00:00
florian
a696344539 * fixed typo
git-svn-id: trunk@11758 -
2008-09-13 09:18:27 +00:00