based on the actual target platform rather than always on the host
platform
* on Unix, use single rather than double quotes for quoting, so it also
properly handles $, ! and `, which keep their special meaning when
appearing in scripts inside double quotes
* since sysutils.executeprocess() can only deal with double-quoted
strings in parameters, re-quote parameters on Unix when they turn
out not to be for scripts but for direct execution (which is most
of the time, but unfortunately doing the reverse is not possible
because parameters used in scripts sometimes contain script-specific
code that must not be quoted, such as `cat link.res`)
-> always use cfileutl.RequotedExecuteProcess() rather than
sysutils.ExecuteProcess() in the compiler (added a bunch of dummy
ExecuteProcess string constants to common units to prevent accidental
usage)
git-svn-id: branches/jvmbackend@20901 -
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 -
FindFileInExeLocations()
* search for jasmin.jar using FindFileInExeLocations and properly
build the java command line, so jasmin can be called successfully
by the compiler
* properly create separate assembler files for each class, and
correctly specify the class name and superclass for each class
(units themselves are still hardcoded to descend from java.lang.Object)
git-svn-id: branches/jvmbackend@18318 -
+ Forced PathConv argument to ShortString. Made a note about implementing AnsiString-aware PathConv later.
+ Made code to use the unified PathConv import (named Unix2AmigaPath(), which explains its functionality better).
+ The above changes fixed various compiler crashes in TAsmScriptAmiga, caused by invoking PathConv with AnsiString arguments, while it only supports ShortString
git-svn-id: trunk@12485 -
* Suppressed 2 unreachable code warnings.
* Now x86 compiler compiles without warnings and notes! It will be great to keep such state in future...
git-svn-id: trunk@11455 -
done in it, to avoid caching very large current directories (such as
those of the testsuite) without reason. It would be better if that
decision were based on a fraction of the total number of entries in
each directory, but that information doesn not appear to be available
in a cross-platform way
git-svn-id: trunk@8938 -
* fixed some (harmless) ptrint warnings
- removed some commented code in agppcmpw
* added one missing field in a typed constant in cp1251
git-svn-id: trunk@8081 -
* adapted TDirectoryCache.FindNext for new case-aware code
* fixed bug in FileExistsNonCase (previous revision's fix was not
complete)
git-svn-id: trunk@7903 -
we can return it from FileExistsNonCase in case of {$define usedircache}
(which is the default). This is needed so we write the correct file
names in the debug info, which is required by gdb (mantis #9172)
git-svn-id: trunk@7879 -