Commit Graph

604 Commits

Author SHA1 Message Date
Jonas Maebe
834026bfb5 * synchronised with trunk up to r21067
git-svn-id: branches/jvmbackend@21068 -
2012-04-26 21:24:20 +00:00
pierre
1b3fd997fc + Regenerate all Makefiles's after adding x86_64 netbsd target
git-svn-id: trunk@21031 -
2012-04-24 23:15:18 +00:00
Tomas Hajny
27403b542b + FileNameCasePreserving added - see #18066 in Mantis
git-svn-id: trunk@20896 -
2012-04-15 21:21:53 +00:00
Tomas Hajny
d442d14e0c + FileNameCasePreserving added - see #18066 in Mantis
git-svn-id: trunk@20894 -
2012-04-15 20:56:13 +00:00
Tomas Hajny
225cc1c1e0 * fix FileExists/DirectoryExists wrongly accepting non-existing entries with wrong path due to path normalization using ExpandFileName (correctly) accepting also non-existing paths
git-svn-id: trunk@20890 -
2012-04-15 19:46:33 +00:00
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
pierre
ac80391c74 * Try to fix go32v2 problems related to DJGPP 2.04 CVS code using __environ as alias of _environ
git-svn-id: trunk@20113 -
2012-01-19 17:12:03 +00:00
marco
5ce5f4f2a9 * Init use_proxy to false, Mantis #21097
git-svn-id: trunk@20099 -
2012-01-17 07:57:39 +00:00
florian
9426cac1b0 * rebuilt Makefiles
git-svn-id: trunk@19748 -
2011-12-04 15:34:01 +00:00
paul
1ccf16358c rtl: init widestring and unitcodestring managers before initialization of Standard IO files (stdin,stdout,stderr)
git-svn-id: trunk@19542 -
2011-10-25 02:29:29 +00:00
florian
d7f7a9bb76 * patch by Alexander Shishkin to clean up $ifopt usage by $push/$pop, resolves #20346
git-svn-id: trunk@19256 -
2011-09-27 20:22:40 +00:00
Jonas Maebe
644fffbdcb * add definition of SYSTEMUNIT variable in Makefile.fpc's that didn't have
it yet

git-svn-id: branches/jvmbackend@18948 -
2011-09-02 16:06:10 +00:00
pierre
f0aa48b083 * Remove use of direct U_UNIT_NAME or TC_UNIT_NAME
symbols in assembler sources.
  Added to corresponding system variables or typed constants a
  public name 'operatingsystem_XXX' alias and used that alias in assembler
  source.

git-svn-id: trunk@18943 -
2011-09-02 12:51:48 +00:00
Tomas Hajny
7f7a4518f7 * FileExists fixed - wildcards not accepted any longer
git-svn-id: trunk@18846 -
2011-08-25 21:34:44 +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
pierre
04a2d0bc94 * Handle -1 return if GetFileAttr call inside DirectoryExists
git-svn-id: trunk@18220 -
2011-08-16 15:01:20 +00:00
Tomas Hajny
6992049034 * fix for a silly typo in the previous revision
git-svn-id: trunk@18189 -
2011-08-13 18:18:15 +00:00
Tomas Hajny
867ad94115 * fix for DirectoryExists - proper handling of root directory
git-svn-id: trunk@18186 -
2011-08-13 00:06:14 +00:00
pierre
9d763ec052 * Avoid warnings about pointer to signed integers typecasts
+ Accept on trailing directory seperator for DirectoryExists
    and handle 'X:' directory separately by calling
    GetDir(drive,dir) to find the current directory of the drive
    considered.

git-svn-id: trunk@18176 -
2011-08-12 08:35:55 +00:00
pierre
9b79c280be Add stdconvs unit for go32v2 target
git-svn-id: trunk@18167 -
2011-08-11 12:05:16 +00:00
pierre
59720fa55a * Fix error in last commit for quoted args.
end_of_args needs to be reset for even if
    curent_arg is empty.

git-svn-id: trunk@18160 -
2011-08-10 15:34:08 +00:00
pierre
1dfa5c2e74 + Implement !proxy support for long command line
this allows passing command lines longer than 126 chars to
    Free Pascal or go32v2 programs.

    By default only command lines longer than 126 chars are
    passed using !proxy method,
    it is however possible to disable this conversion completely by
    set Use_go32v2_proxy boolean variable to false (true by fdefault).
    In that case, command lines longer than 126 will be truncated, but
    a warning is echoed to stderr.
    For testing purposes, it is possible to set the boolean variable
    force_go32v2_proxy to true to force systematic use of this
    conversion.

    This is set by default if the RTL is compiled with
    SYSTEM_DEBUG_STARTUP conditional set.

    To allow use by sysutils unit, a new procedure:
    exec_ansistring(path : string;comline : ansistring);

    has been added to the interface, which is now called instead
    of Dos.Exec from Sysutils.ExecuteProcess

git-svn-id: trunk@18159 -
2011-08-10 14:27:24 +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
pierre
cdcabe3ee4 * Prevent propagation of ' !proxy' environment variable to programs launched by Dos.exec by renaming it to '_!proxy' after handling in startup code
git-svn-id: trunk@17936 -
2011-07-05 06:54:24 +00:00
pierre
4a7a054f13 * Avoid using stack memory for argv elements to avoid corruption of help in setup_arguments
git-svn-id: trunk@17684 -
2011-06-07 16:13:28 +00:00
michael
a201f07420 * Added share mode argument to FileCreate call
git-svn-id: trunk@17548 -
2011-05-23 21:11:07 +00:00
pierre
9276fa437f * Fix tw1041 test failure
git-svn-id: trunk@16571 -
2010-12-16 13:25:20 +00:00
pierre
64bb6794f7 + Add cmem to the list of units
git-svn-id: trunk@16412 -
2010-11-23 23:05:29 +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
florian
786c4e206f * enables compilation of iso7185 unit on all targets
git-svn-id: trunk@15730 -
2010-08-06 17:45:42 +00:00
marco
be98b13554 * fix for 11263, changed fileread and fd_zero to out using $modeswitch.
git-svn-id: trunk@14965 -
2010-03-01 22:35:14 +00:00
marco
8e9a7e14ad * Revised yesterday solution to a more general one. Executeprocess gets
another parameter, a set type with flags, default = []

git-svn-id: trunk@14572 -
2010-01-07 20:49:28 +00:00
michael
01ed4a6745 * Implemented OnBeep to install custom beep handler
git-svn-id: trunk@14254 -
2009-11-22 17:33:56 +00:00
marco
17062d667c * ansistring versions of mk/rm/chdir in objpas, Mantis 15010. The os-dependant routines of *nix/os2/win/dos have been converted
git-svn-id: trunk@14211 -
2009-11-18 18:04:51 +00:00
Jonas Maebe
e246cac3ac * regenerated using latest fpcmake
git-svn-id: trunk@13487 -
2009-08-02 18:40:14 +00:00
Jonas Maebe
78c29a33ba * changed the parameters of gotoxy() and the return values of wherex/wherey
from byte into tcrtcoord=1..255, since all crt unit coordinates are
    1-based (not for Window() procedure, see comments in crth.inc;
    mantis #13788)

git-svn-id: trunk@13191 -
2009-05-24 11:48:49 +00:00
marco
e5db5e4aa8 * regened makefiles to propagate makefile versions
git-svn-id: trunk@11947 -
2008-10-22 17:32:15 +00:00
florian
f97c2968f9 * fixed widestring/unicodemanager initialisiation
git-svn-id: trunk@11743 -
2008-09-10 21:02:50 +00:00
Jonas Maebe
1251ec996b - removed $(SYSTEMUNIT)$(PPUEXT) from the macpas unit dependencies
(that variable is not defined for all targets and is not necessary
     anymore either)
  * fixed building of win32/win64 (different because of the buildrtl unit)

git-svn-id: trunk@11419 -
2008-07-20 13:05:03 +00:00
Jonas Maebe
f22c6870d5 * use math.SetExceptionMask() to disable floating point exceptions
in the macpas initialisation code (mantis #11516)

git-svn-id: trunk@11415 -
2008-07-20 09:07:50 +00:00
giulio
5998ab33f2 Fix handling of ctrl-c/ctrl-break on go32v2:
* the default handler now silently quits if CtrlBreakHandler returns false or
   it hasn't been installed, instead of generating an unknown RTE 0.
Compiler: signal handlers are declared cdecl on go32v2 too.
This fixes bug #11494.

git-svn-id: trunk@11272 -
2008-06-24 17:02:17 +00:00
giulio
80b0231616 Fixed DiskFree/DiskSize:
Int21/7303 is not related to lfn, since it's supported by win9x even when in DOS mode, while it's not supported by WinNTs.
The behaviour (inspired by djgpp) is then to try different methods:
 * if the drive is a cdrom unit, try to ask to MSCDEX (this is required for pure DOS)
 * else, try int21/7303 (it will work for non-cdrom drives under win9x when in DOS mode, and in Win9x dos box and FreeDOS)
 * else, last choice is old int21/36 (it will work in MSDOS and WinNTs, though in the latter case sizes are wrong for free space or disk size > 2GB, but it's the best we can do)

This solves bug #11477

git-svn-id: trunk@11246 -
2008-06-19 14:59:41 +00:00
Jonas Maebe
9d8bee1887 * regenerated with changes in r11233
git-svn-id: trunk@11234 -
2008-06-15 15:52:25 +00:00
Tomas Hajny
68a4c0347a * patch from Giulio for FindFirst return value with no files and SetFAttr with VolumeID - web bug #11247
git-svn-id: trunk@11231 -
2008-06-15 15:14:07 +00:00
giulio
14d4f02fa0 * fixed fpc_zipinstall for go32v2 and the like
* makefiles regenerated

git-svn-id: trunk@11180 -
2008-06-03 14:01:09 +00:00
giulio
d076a3ab44 Fixed stack corruption in c_setjmp when register calling convention is used.
This caused the DOS ide to crash when trying to debug.

git-svn-id: trunk@11169 -
2008-06-02 07:30:32 +00:00