Commit Graph

193 Commits

Author SHA1 Message Date
svenbarth
90db273224 + added target NativeNT to supported OSes in fpmkunit
* modified fpmake files in packages to allow a "make all" for NativeNT in packages to work (nearly all packages need to be disabled; the main cause for this are the still missing DOS and Objects units for the target)

git-svn-id: trunk@21319 -
2012-05-18 07:17:02 +00:00
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
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
829062cd79 * fixed bootstrap rule for aix (why are all unix OSes hardcoded here?)
git-svn-id: trunk@20850 -
2012-04-11 18:07:16 +00:00
Jonas Maebe
44bd889b9b * regenerated Makefiles with AIX support
git-svn-id: trunk@20812 -
2012-04-11 18:03:57 +00:00
Jonas Maebe
b0e4263fee + aix support in fpcmake and fpmake
git-svn-id: trunk@20787 -
2012-04-11 17:59:59 +00:00
joost
d6033c7890 * Always notice when an external command is executed
* Do not change the current dir in ResolveFileNames when this is already done

git-svn-id: trunk@20762 -
2012-04-08 19:44:46 +00:00
joost
1e62127f20 * Give a proper error message when an external command is not found
* Always try to run an external command when the destination file does not 
   exist
 * Give only a warning if the destination file is older then the source
   file but the external command could not be found, give give a warning.

git-svn-id: trunk@20735 -
2012-04-06 22:25:14 +00:00
joost
7a07a6c544 * The sourcefilenames have to be resolved to be able to determine if a
package has to be compiled. But when not all sources are found, try
   to resolve them again after the beforecompile events are triggered. It
   could be that some sourcefiles are generated in those events.

git-svn-id: trunk@20724 -
2012-04-06 20:28:21 +00:00
pierre
2c4d8cc9d9 Add x86_64-openbsd target in Makefiles
git-svn-id: trunk@20723 -
2012-04-06 16:49:08 +00:00
joost
8cb037fb59 * Always show a message when a package is about to be installed, not only in
verbose mode. This way it is always clear which package is being installed 
   in case of an error.

git-svn-id: trunk@20670 -
2012-03-30 14:41:09 +00:00
joost
265f54b26b * Added ability to specify installation-destination path of
TPackage.InstallFiles
 * Added bininstalldir, prefix and unitinstalldir macro''s

git-svn-id: trunk@20669 -
2012-03-30 14:29:50 +00:00
joost
06378882e3 * Install the TPackage.InstallFiles only once
git-svn-id: trunk@20615 -
2012-03-24 16:44:55 +00:00
pierre
60bebca1ea * Avoid double newlines on Dos like systems in ExecuteFPC
* Add warning if FileAge returns -1 (which indicates failure)

git-svn-id: trunk@20419 -
2012-02-23 23:19:09 +00:00
pierre
85c84bf128 * Fix include file directory and return false for FileNewer if FileAge return -1
git-svn-id: trunk@20410 -
2012-02-23 13:53:23 +00:00
marco
e1ac091b68 * Remove Haiku TProcess exception , Mantis #21180
git-svn-id: trunk@20408 -
2012-02-23 11:50:23 +00:00
joost
e6582e502a * Fixed checking of changed files which got broken in r20352
git-svn-id: trunk@20392 -
2012-02-21 17:31:51 +00:00
pierre
7d53c2af45 + Regenerate Makefile with mips-linux target
git-svn-id: trunk@20379 -
2012-02-19 19:03:28 +00:00
pierre
18432ea848 + Add mips and mipsel cpus, enabled for linux only
git-svn-id: trunk@20378 -
2012-02-19 19:02:53 +00:00
joost
3c02dc25f2 * Do not change the current directory, that does not work well with multiple threads
git-svn-id: trunk@20352 -
2012-02-14 20:31:00 +00:00
pierre
7314c1e76d add missing hash package
git-svn-id: trunk@20321 -
2012-02-12 10:44:25 +00:00
pierre
de7d4e094d Disable Threads for netbsd
git-svn-id: trunk@20320 -
2012-02-12 10:43:21 +00:00
joost
668dbde745 * Set exitcode=1 when a package failed to compile and threads are used
* Show the error-message as last message when threads are used

git-svn-id: trunk@20316 -
2012-02-11 21:50:49 +00:00
joost
36169c1249 * Restored changes in r20159 which were overwritten in r20166
git-svn-id: trunk@20234 -
2012-02-03 16:52:45 +00:00
joost
57ad885aa4 * Also clean the bin-output directory on distclean
git-svn-id: trunk@20233 -
2012-02-03 16:46:46 +00:00
joost
ac1a2abf88 * Do not use deprecated stat.mode but stat.st_mode
git-svn-id: trunk@20232 -
2012-02-03 16:39:02 +00:00
joost
bfbe1d5324 * Copy file-rights (executable bit) from files on unices
git-svn-id: trunk@20218 -
2012-02-02 20:39:51 +00:00
joost
5694514ebc * Automatically install the import-library files on OSes that uses those.
git-svn-id: trunk@20166 -
2012-01-24 21:32:30 +00:00
joost
293f815e8a * Use defines from the system unit to improve cross-platform behavior
git-svn-id: trunk@20165 -
2012-01-24 11:55:58 +00:00
pierre
525034f5f6 * Disable use of fcl-process package for haiku
* correct error in include directories for fcl-process isrc->src
 * Reorder include command line option order to put dummy as last choice

git-svn-id: trunk@20164 -
2012-01-24 11:14:43 +00:00
Tomas Hajny
c8ff351634 * EMX and Watcom use .exe extension too
git-svn-id: trunk@20159 -
2012-01-23 21:36:43 +00:00
joost
4bb05b21ed * Converted fpmkunit and the packages it depends on to fpmake building.
Hash, paszlib, fcl-process and fpmkunit itself are build using
   fpmkunit_bootstrap. The fpmkunit-Makefile.fpc still contains dependencies
   on hash,paszlib and fcl-process because the packages depending on fpmkunit
   needs those. For fpmkunit itself those dependencies are ignored by directly
   setting the unit-search path to the rtl-unit search path.

git-svn-id: trunk@20115 -
2012-01-19 20:02:41 +00:00
joost
1499ba9caf * Pass the target-CPU to fpc.
git-svn-id: trunk@20066 -
2012-01-13 18:36:06 +00:00
joost
1177fadc1c * Install binaries into %installdir%\bin\%fpctarget% on non-unices, instead on %installdir%\bin
git-svn-id: trunk@20061 -
2012-01-12 20:57:40 +00:00
joost
dce5279c15 * Executables also have the .exe extension on WinCE
git-svn-id: trunk@20049 -
2012-01-11 13:27:34 +00:00
joost
3895a0de0d * Do not show a useless dash in the help message of custom fpmake options
git-svn-id: trunk@20028 -
2012-01-09 18:09:15 +00:00
joost
a64ec6c1ce * Fixed construction of command-line arguments for TCommands
* Added function AddProgramExtension, to ease adding '.exe' suffix.
 * Replaced function Substitute by TDictionary.Substitute to force the
   selection of the right global or package-specific dictionary
 * Add proper prefix to source and destination files of TCommands

git-svn-id: trunk@20027 -
2012-01-09 15:43:11 +00:00
joost
a0cc3b7611 * Use right path when deleting temporary buildunit-files while compiling multiple packages
git-svn-id: trunk@19992 -
2012-01-07 00:00:06 +00:00
joost
334df8c989 * Expand ~/ in prefix
git-svn-id: trunk@19960 -
2012-01-04 10:11:16 +00:00
joost
f995da2746 * Removed debug-code accidentally introduced in r19952 that fails to compile on some targets
git-svn-id: trunk@19958 -
2012-01-03 14:42:28 +00:00
joost
628b35d100 * Enabled multhi-threaded compilation of packages. With '-T n' the packages
are all compiled in n worker threads.

git-svn-id: trunk@19952 -
2012-01-02 15:21:01 +00:00
joost
14d24130d1 * EnterDir and LeaveDir cannot be used in threads, so a threadvar is used
to store the current directory of each thread.

git-svn-id: trunk@19902 -
2011-12-28 21:38:35 +00:00
joost
47863d1167 * The dictionary has been splitted into two dictionaries, one global and
one specific to a package. This because the old dictionary contained 
   global variables and variables that were depending on the package being
   handled. That leads to problems when handling multiple packages at the same
   time in multiple threads.

git-svn-id: trunk@19896 -
2011-12-27 20:37:01 +00:00
joost
ad5d37fa25 * Made logging thread-safe. Handle the indenting of the log separate for each
thread.
 * Log deleting files

git-svn-id: trunk@19886 -
2011-12-23 21:38:35 +00:00
Jonas Maebe
0d5b2b84a8 + Android/JVM target, including a translation of the Android r14 SDK
(= Android 4.0) java headers: java.*, javax.*, org.*, junit.*, android.*).
    The RTL can also be used to target earlier versions of the Android
    platform, but you manually have to take care of not using APIs that
    weren't available yet. Adding separate units for separate platform
    versions would only partly solve the problem, because some of the
    classes used inside the system unit have also changed across
    versions.

    Use -Tandroid while compiling to select the Android OS as target
    platform.

git-svn-id: branches/jvmbackend@19830 -
2011-12-12 02:34:34 +00:00
Jonas Maebe
1950fb1fa8 + jvm/java support
git-svn-id: branches/jvmbackend@19822 -
2011-12-11 17:25:24 +00:00
florian
9426cac1b0 * rebuilt Makefiles
git-svn-id: trunk@19748 -
2011-12-04 15:34:01 +00:00
Jonas Maebe
c8154860bb * open fpmake ini files with fmShareDenyNone to prevent spurious
locking errors on Linux in some cases (it seems some locks linger
    for a while even after the process that created them has finished,
    unless the makefiles are allowed to start processing a new directory
    before the fpmake invocation in a previous directory has
    finished)

git-svn-id: trunk@19614 -
2011-11-08 23:15:48 +00:00
Tomas Hajny
5a5d6668a0 * fpunits.conf -> fpunits.cfg
git-svn-id: trunk@19485 -
2011-10-13 21:04:24 +00:00