Commit Graph

106 Commits

Author SHA1 Message Date
michael
174de3eab1 Merged revisions 9693-10480 via svnmerge from
svn+ssh://svn.freepascal.org/FPC/svn/fpc/branches/resources

........
  r9694 | michael | 2008-01-09 21:31:18 +0100 (Wed, 09 Jan 2008) | 1 line
  
  * Initial check-in
........
  r9695 | michael | 2008-01-09 21:35:58 +0100 (Wed, 09 Jan 2008) | 1 line
  
  * New version from Giulio Bernardi
........
  r9697 | michael | 2008-01-09 21:41:54 +0100 (Wed, 09 Jan 2008) | 1 line
  
  * Patch from Giulio Bernardi with resource support
........
  r9698 | michael | 2008-01-09 21:46:33 +0100 (Wed, 09 Jan 2008) | 1 line
  
  * Patch from Giulio Bernardi to add more resource testing
........
  r9699 | michael | 2008-01-09 21:57:26 +0100 (Wed, 09 Jan 2008) | 1 line
  
  * New tool from Giulio Bernardi
........
  r9700 | michael | 2008-01-09 21:58:23 +0100 (Wed, 09 Jan 2008) | 1 line
  
  * New tool from Giulio Bernardi
........
  r9701 | michael | 2008-01-09 22:01:54 +0100 (Wed, 09 Jan 2008) | 1 line
  
  * Added fcl-res
........
  r9702 | michael | 2008-01-09 22:01:58 +0100 (Wed, 09 Jan 2008) | 1 line
  
  * Added fcl-res
........
  r9703 | michael | 2008-01-10 08:54:26 +0100 (Thu, 10 Jan 2008) | 1 line
  
  * Fixed double code
........
  r9704 | jonas | 2008-01-10 10:59:20 +0100 (Thu, 10 Jan 2008) | 2 lines
  
    - removed duplicate code
........
  r9705 | jonas | 2008-01-10 11:25:21 +0100 (Thu, 10 Jan 2008) | 2 lines
  
    + added missing fcl-res dependencies
........
  r9706 | jonas | 2008-01-10 11:58:30 +0100 (Thu, 10 Jan 2008) | 2 lines
  
    + dependencies for fpintres and fpextres
........
  r9707 | yury | 2008-01-10 12:47:51 +0100 (Thu, 10 Jan 2008) | 3 lines
  
  * Fixed compilation of resource, which is included in a unit located in different folder than main source.
  * .res files must be copied to units output folder, otherwise .res files will not be found when only compiled units path is available and compiler does not know anything about sources folder.
  * Improved resource related error messages.
........
  r9708 | michael | 2008-01-10 12:52:13 +0100 (Thu, 10 Jan 2008) | 1 line
  
  * Removed double source after end.
........
  r9709 | michael | 2008-01-10 12:52:48 +0100 (Thu, 10 Jan 2008) | 1 line
  
  * No longer needed
........
  r9710 | tom_at_work | 2008-01-10 22:09:08 +0100 (Thu, 10 Jan 2008) | 1 line
  
  * properly align FPC_RESLOCATION so that linking does not fail on some architectures (e.g. ppc64)
........
  r9711 | tom_at_work | 2008-01-10 23:53:12 +0100 (Thu, 10 Jan 2008) | 1 line
  
  * fix splitting of 64 bit load/stores from/to unaligned memory locations into multiple load/stores, which in some cases generated wrong code
........
  r9712 | michael | 2008-01-11 11:00:08 +0100 (Fri, 11 Jan 2008) | 1 line
  
  * Fixed bug in BSS section on 64-bit platforms
........
  r9720 | giulio | 2008-01-12 10:02:04 +0100 (Sat, 12 Jan 2008) | 1 line
  
  Updated fcl-res documentation: occurrences of reslib changed to fcl-res.
........
  r9740 | giulio | 2008-01-13 19:36:44 +0100 (Sun, 13 Jan 2008) | 3 lines
  
   - Don't try to compile resources on systems with a non windows-like resource support.
   - Don't add the .or file to the list of object files if resource compiling failed.
........
  r10201 | giulio | 2008-02-04 11:35:44 +0100 (Mon, 04 Feb 2008) | 5 lines
  
  * resource compiling supported on OS/2 via wrc
  * CompileResourceFiles and CollectResourceFiles don't do target-specific checks anymore
  * refactored a bit
........
  r10389 | giulio | 2008-02-25 21:32:52 +0100 (Mon, 25 Feb 2008) | 2 lines
  
  Deleted test file which was committed by mistake
........
  r10472 | giulio | 2008-03-10 12:22:18 +0100 (Mon, 10 Mar 2008) | 2 lines
  
  changed define FPC_HAS_RESOURCES to FPC_HAS_WINLIKERESOURCES
........

git-svn-id: trunk@10481 -
2008-03-12 21:33:48 +00:00
Jonas Maebe
86f90d8ac1 + support for setting the name of "main" (-XM command line parameter) in
the code using {$pascalmainname x} + storing it in the ppu file
    (and give a warning if it's overridden multiple times + test)

git-svn-id: trunk@10406 -
2008-03-01 13:05:01 +00:00
Jonas Maebe
70d94fecc1 * enable {$push}/{$pop} in all syntax modes instead of ony in macpas
(mantis #10351)

git-svn-id: trunk@9723 -
2008-01-12 16:47:46 +00:00
Jonas Maebe
21abdd2f4e + support for specifying the minimal precision for floating point
constants. The default is currently 32 bits/single, which corresponds
    to the old behaviour (constants which cannot be exactly represented
    in the default/chosen precision will also still be automatically
    upgraded to higher precision). Supported constructs:
   * Command line switch -CF<x>
   * Compiler directive {$MINFPCONSTPREC <x>}
  whereby in both cases <x> can be default, 32 or 64. 80 is not supported
  because there is no generic way to figure out whether the current target
  actually supports 80 bit precision floating point calculations while
  parsing the command line switches (pbestreal can still change in case of
  win64 or -Cfsse2)

git-svn-id: trunk@8349 -
2007-09-01 19:38:27 +00:00
Jonas Maebe
a3c9dc5ec6 + support for {$linkframework x} to link to framework x (Darwin only)
+ support for {$frameworkpath x} and -Ffx to add x to the directories to
    search for frameworks (Darwin only)

git-svn-id: trunk@8165 -
2007-07-25 15:42:30 +00:00
florian
5e60b52f28 * ignore pic directive/switch if the platform doesn't support pic, resolves #9281
git-svn-id: trunk@8157 -
2007-07-23 20:25:04 +00:00
peter
67e16340be * revert r8118
git-svn-id: trunk@8139 -
2007-07-22 19:59:00 +00:00
daniel
21293f5818 + Add common type integer promotion.
- {$intpromotion common_type} or -CIcommon_type switches to common type promotion.
    - {$intpromotion native_integer} or -CIcommon_type switches to current behaviour.
    - Default in tp mode is common_type, native_integer in other modes
    - Compiler can cycle with -CIcommon_type
    - Still needs checking on other architectures than i386

git-svn-id: trunk@8118 -
2007-07-21 19:16:24 +00:00
daniel
9adb202a92 * Rework the constexprint to allow operations from low(int64) to high(qword).
+ Some initial work on a formaldef which also carries the typinfo of a parameter.

git-svn-id: trunk@7639 -
2007-06-13 07:41:18 +00:00
peter
377aae4ba0 * only add .o extension if no extension is provided. fixes 8520
git-svn-id: trunk@7366 -
2007-05-16 20:11:09 +00:00
Jonas Maebe
226b0268e8 * savefpuexceptions directive renamed to safefpuexceptions
git-svn-id: trunk@7017 -
2007-03-28 18:05:40 +00:00
florian
fb1afe0ea4 + set FPU* define properly
git-svn-id: trunk@6785 -
2007-03-11 17:16:23 +00:00
Legolas
96e1c482bc * compiler part of first Nintendo DS port
git-svn-id: trunk@5592 -
2006-12-14 17:32:16 +00:00
florian
d47dc38f2c * ignore PIC directive on windows and warn about it
git-svn-id: trunk@5479 -
2006-11-25 22:58:52 +00:00
peter
55f9758c25 * only add resext if no extension was specified
* default resext for windows changed to .res

git-svn-id: trunk@5193 -
2006-11-03 08:51:23 +00:00
peter
242113b873 * fix * support for resources
git-svn-id: trunk@5149 -
2006-11-01 15:53:13 +00:00
peter
cb246eb781 * Remove dos,strings units, use SysUtils instead
* replace split* functions with Extract* functions
  * Add Directory caching

git-svn-id: trunk@5102 -
2006-10-30 23:29:35 +00:00
florian
85d63d9fa9 * settings refactored
git-svn-id: trunk@5094 -
2006-10-30 18:02:58 +00:00
peter
0bb22a2d17 * don't generate fwait by default anymore
* SAVEFPUEXCEPTIONS switch added to enable fwait inserts

git-svn-id: trunk@4733 -
2006-09-26 19:22:45 +00:00
florian
569c4871fc + first batch of varset support, as long as packset isn't changed, it doesn't change anything
git-svn-id: trunk@4710 -
2006-09-24 14:40:11 +00:00
peter
d0156354a6 * inline directive enabled by default for fpc,objfpc,delphi modes
* -Si and $inline directive control are now local switches and 
    have finer control on whether a function will really inlined or not

git-svn-id: trunk@4553 -
2006-09-04 19:54:21 +00:00
Jonas Maebe
441d5a3c12 * use constant called C_alignment instead of -1 to denote C-style
packrecords

git-svn-id: trunk@4477 -
2006-08-20 16:37:10 +00:00
Jonas Maebe
eccbc78e04 + support for bitpacked arrays:
+ use {$bitpacking on/+} to change the meaning of "packed"
      into "bitpacked" for arrays. This is the default for MacPas.
      You can also define individual arrays as "bitpacked", but
      this is not encouraged since this keyword is not known by
      other compilers and therefore makes your code unportable.
    + pack(unpackedarray,index,packedarray) to pack
      length(packedarray) elements starting at
      unpackedarray[index] into packedarray.
    + unpack(packedarray,unpackedarray,index) to unpack
      packedarray into unpackedarray, with the first
      element being stored at unpackedarray[index]
  * todo:
    * "open packed arrays" and rtti for packed arrays are not
      yet supported
    * gdb does not properly support bitpacked arrays

git-svn-id: trunk@4449 -
2006-08-19 12:54:12 +00:00
florian
57f097a710 * made dir_warn code more clear, no implementation yet
git-svn-id: trunk@4200 -
2006-07-14 21:45:21 +00:00
florian
dc2bef3875 + implemented directives $setpeflags, $maxstacksize, $minstacksize and $imagebase, fixes #6349 and #6714
git-svn-id: trunk@3935 -
2006-06-25 10:22:42 +00:00
peter
e53cd4735a * replace * in $R with main source instead of modulename
git-svn-id: trunk@3845 -
2006-06-11 12:45:45 +00:00
Jonas Maebe
05540cad44 * give an error for {$calling } (i.e., when a procedure directive is
missing)

git-svn-id: trunk@3193 -
2006-04-12 07:58:25 +00:00
peter
2888a21593 * list supported optimization options in -i
* support $OPTIMIZATION and $O+

git-svn-id: trunk@2904 -
2006-03-13 11:17:56 +00:00
peter
b6e35a200e * rewrite of optimizer options
git-svn-id: trunk@2901 -
2006-03-13 09:05:50 +00:00
Jonas Maebe
5f3e0b5398 * link_allways -> link_always
git-svn-id: trunk@2594 -
2006-02-15 14:36:30 +00:00
peter
232555904e * symtablestack cleanup and rewrite
git-svn-id: trunk@2448 -
2006-02-05 22:24:18 +00:00
florian
4662a12fd5 * compilation for arm target fixed
git-svn-id: trunk@2408 -
2006-02-02 17:26:18 +00:00
Károly Balogh
b718d9ff37 + added framework code for AmigaOS/PPC syscall support
git-svn-id: trunk@2239 -
2006-01-09 08:58:30 +00:00
Károly Balogh
238964e443 Various m68k fixes/additions:
- fixes in asmreader, basic stuff works again, the rest is untested
  - removed lot of unnecessary ungetcpuregister()s
  - various other fixes i forgot
  + basic amigaos syscalls support. still lacks explicit funcretloc

git-svn-id: trunk@1943 -
2005-12-13 20:42:15 +00:00
florian
1e4e857719 * apptype causes only a note on system not supporting apptype
git-svn-id: trunk@1827 -
2005-11-26 21:54:15 +00:00
florian
5c92126933 + $PIC module switch directive
git-svn-id: trunk@1740 -
2005-11-13 21:21:15 +00:00
florian
a6b00feb1e + warn directive is different fom warnings and warning
git-svn-id: trunk@1682 -
2005-11-06 20:09:28 +00:00
peter
252d90b691 * $CodeAlign directive added for fine tuning off alignment during code generation
git-svn-id: trunk@1489 -
2005-10-19 06:05:48 +00:00
peter
e23519c45b * support A1,A2,A4,A8 directives
git-svn-id: trunk@1488 -
2005-10-19 05:54:27 +00:00
florian
f916ea20b3 * patch from yury to warn about wrong warning of unsupported apptype
git-svn-id: trunk@1321 -
2005-10-08 08:17:35 +00:00
peter
ec4d287fd8 * aktoutputformat removed, add new paraXX vars for target
assembler and debuginfo and use these vars to override
    the defaults for the target after the parameters are read
  * remove not-maintained and tested gdb code

git-svn-id: trunk@1201 -
2005-09-25 21:17:37 +00:00
florian
6bc461dc61 * realmodulename must be used of course
git-svn-id: trunk@1181 -
2005-09-25 09:14:22 +00:00
florian
fa90e913df * don't lowercase resource file name in delphi mode
git-svn-id: trunk@1180 -
2005-09-25 08:48:13 +00:00
florian
d9f6a5a374 * support of apptype native for windows after a suggestion of Brian Bi
git-svn-id: trunk@977 -
2005-08-29 19:03:12 +00:00
michael
3392189fb0 + Implemented resources for ELF
git-svn-id: trunk@956 -
2005-08-28 09:35:35 +00:00
olle
438f229f52 * changed unknown align/enum warings into errors and also improved them
git-svn-id: trunk@582 -
2005-07-04 19:28:42 +00:00
florian
ec6d5ff211 + utf-8 support for string constants added
git-svn-id: trunk@428 -
2005-06-16 20:16:37 +00:00
florian
d01bde1a83 + $WARN directive implemented fixes bug #3939
git-svn-id: trunk@65 -
2005-05-22 11:57:24 +00:00
fpc
790a4fe2d3 * log and id tags removed
git-svn-id: trunk@42 -
2005-05-21 09:42:41 +00:00
fpc
50778076c3 initial import
git-svn-id: trunk@1 -
2005-05-16 18:37:41 +00:00