Commit Graph

475 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
florian
efe31d965c * made default arm-linux compiler little endian again
git-svn-id: trunk@10440 -
2008-03-04 10:19:53 +00:00
micha
83b7f81f81 + add no-fpu support to compiler/rtl for powerpc-linux (-Cfnone)
git-svn-id: trunk@10422 -
2008-03-02 12:59:02 +00:00
florian
e5a960d860 * set default reserved stack size on win32/win64 to 16MB
git-svn-id: trunk@10330 -
2008-02-15 19:06:23 +00:00
florian
c05d4912f4 + basic system unit for avr-embedded
* fixed several compiler stuff to be able to start system unit compilation on avr

git-svn-id: trunk@10318 -
2008-02-13 20:35:16 +00:00
peter
de918497ef * support -Xg under linux
git-svn-id: trunk@9811 -
2008-01-20 12:12:15 +00:00
Jonas Maebe
5fbc947ae8 + -Xg support for darwin with dwarf
git-svn-id: trunk@9798 -
2008-01-19 20:54:36 +00:00
Jonas Maebe
56c18c5521 * fix from r9332 for shared libraries
git-svn-id: trunk@9797 -
2008-01-19 20:44:43 +00:00
peter
793fd8fc09 * Add -Xg to help pages
* -Xg now produces a .dbg file with debuginfo
    that can be used by gdb. The main executable gets
    a debuglink section that references the .dbg file.

git-svn-id: trunk@9778 -
2008-01-17 01:20:37 +00:00
Legolas
9dc6b3992f * Some cleaning on nds linker; new extension for intermediate files
git-svn-id: trunk@9672 -
2008-01-07 19:31:32 +00:00
Legolas
27eb735d24 * Resized stack value for NDS
* Changes to prt0:
  + Added argv support 
  * New function calls

git-svn-id: trunk@9424 -
2007-12-10 17:06:14 +00:00
marco
1a34960b53 * asmscript stuff under if ldnoresponsfile. Fixes FreeBSD breakage
git-svn-id: trunk@9332 -
2007-11-25 18:08:08 +00:00
Jonas Maebe
0c06fddb8f * fixed compilation
git-svn-id: trunk@9328 -
2007-11-25 10:20:54 +00:00
sekelsenmat
8476d0af2c Adds symbian arm target.
git-svn-id: trunk@9327 -
2007-11-24 22:04:59 +00:00
Jonas Maebe
0ac6e82c1f * fixed handling of directories with spaces for LdSupportsNoResponseFile-
targets (a.o. darwin) in case no ppas.sh is generated (need to generate
    a temporary script in that case as well to use the IFS trick)
  * fixed exit code checking of ld when using IFS trick (have to check it
    before restoring IFS, otherwise we check the "error result" of this
    restoration, which will always be 0)

git-svn-id: trunk@9325 -
2007-11-24 18:06:01 +00:00
Jonas Maebe
d8d393e802 - no longer pass "-read_only_relocs suppress" to the darwin linker when
compiling shared libraries as we no longer generate relocations in
    read-only sections

git-svn-id: trunk@9323 -
2007-11-24 16:43:47 +00:00
Jonas Maebe
157fc2a3e9 * use -x instead of -s for stripping executables on darwin (-s worked fine on 10.0,
was broken on 10.1, fixed in 10.2 and worked fine till 10.4, and has been
    deprecated/removed in 10.5; conversely, -x has worked all the time, although it
    results in slightly bigger binaries on platforms that also support -s)

git-svn-id: trunk@9204 -
2007-11-11 19:43:41 +00:00
Jonas Maebe
032352d98b + darwin/x86_64 support
git-svn-id: trunk@9180 -
2007-11-10 18:33:09 +00:00
florian
8075f99ce9 * define for armel fixed
git-svn-id: trunk@9164 -
2007-11-08 21:03:46 +00:00
florian
8a2ab85bc2 + armel support with FPC_ARMEL define
+ armel linker script

git-svn-id: trunk@9156 -
2007-11-07 20:45:27 +00:00
yury
13d948c07b * Fixed: import Address Table should contain the same data as Import Lookup Table.
* Perform import by name with index as hint, if both import name and import index are specified.
* Fixed import by ordinal when external linker is used.
* Fixed some warnings and notes.

git-svn-id: trunk@9083 -
2007-11-02 23:07:15 +00:00
florian
d9e0f078e1 * continued to play around with package support
git-svn-id: trunk@9075 -
2007-11-02 22:26:43 +00:00
florian
01fd678211 + basic parsing of package files
+ basic implementation of creation of packages

git-svn-id: trunk@9054 -
2007-11-01 23:20:28 +00:00
Károly Balogh
8562910185 + quick hack to have linker support for amiga/m68k (it produces some kind of binary at least)
git-svn-id: trunk@9024 -
2007-11-01 00:22:47 +00:00
florian
90af7ebf72 * use only windows exceptions for stack checking on win32/win64, resolves #9166
git-svn-id: trunk@9020 -
2007-10-31 23:19:48 +00:00
florian
7f4c387841 o new BeOS patch by Olivier Coursiere:
* correctly define the stack size for BeOS,
  + implement a minimum nl_langinfo function to correctly initialize WideString support
  + add fgl unit in the BeOS RTL makefile
  * SysOSAlloc now return nil when the system can not allocate the asked memory,
  * HAS_SYSOSFREE is no more defined with an empty implementation under BeOS. This was preventing FPC to reuse memory.
  + there is now a basic implementation of CheckPointer under BeOS.

git-svn-id: trunk@8994 -
2007-10-29 19:00:32 +00:00
florian
3a630340be * fixed m68k compilation and put it in fullcycle
git-svn-id: trunk@8953 -
2007-10-27 11:24:50 +00:00
Jonas Maebe
920a626c17 * mark darwin as case sensitive, because the dircache isn't always used
anymore (the dircache masks the effects of case-sensitive file
    systems on targets marked as case-aware)

git-svn-id: trunk@8946 -
2007-10-26 13:01:01 +00:00
Jonas Maebe
1121002c7c * generate PIC by default for darwin/ppc64
git-svn-id: trunk@8873 -
2007-10-21 10:36:05 +00:00
Jonas Maebe
ff3b455a59 * make PIC generation default on Darwin (ppc and i386; ppc64 will be
done in next commit to ease merging)

git-svn-id: trunk@8872 -
2007-10-21 10:34:01 +00:00
Jonas Maebe
3155b650a1 * pass "-syslibroot sysrootpath" to the darwin linker if -XRsysrootpath
is used (mantis #9953)

git-svn-id: trunk@8833 -
2007-10-17 19:25:06 +00:00
florian
f7b0abffec o BeOS patch by Olivier Coursiere:
* reenable creating shared object using the libc based rtl. I have also added gc-sections support.

git-svn-id: trunk@8806 -
2007-10-14 18:37:00 +00:00
micha
89b5825029 * only use ld -T in case of cross-link (-XR), because not all platforms have complete link script yet
git-svn-id: trunk@8718 -
2007-10-01 21:10:51 +00:00
peter
9f0ca44c94 * new tf_smartlink_library flag
* use create_smartlink[_sections|_library] to check what to 
    do for smartlinking

git-svn-id: trunk@8715 -
2007-10-01 16:55:08 +00:00
micha
c3e587355d * fix default dynamic linker location for 64 bit targets in linux
git-svn-id: trunk@8707 -
2007-09-30 21:20:04 +00:00
Tomas Hajny
cd82fd376f * workaround for yet another #%$#@#^ EMX LD.EXE bug (link.res path must not be quoted)
git-svn-id: trunk@8706 -
2007-09-30 21:11:10 +00:00
florian
655ac519d4 * fixed compilation for x86-64
git-svn-id: trunk@8698 -
2007-09-30 15:30:00 +00:00
micha
0625040eba + add -XR switch for target root file system with libs (also used for C lib type detection)
git-svn-id: trunk@8695 -
2007-09-30 15:00:54 +00:00
peter
b5fb7120b8 * fixed length calculation of leb128 constants
git-svn-id: trunk@8666 -
2007-09-27 22:40:38 +00:00
Jonas Maebe
3266f4e483 + Compiler support for pic on darwin/i386. The i386 rtl still needs
to be made pic-safe (mainly accesses to the global default8087cw)
  * At the same time also made the non-pic code abi-compliant (access
    external data via indirect symbol pointers etc)

    Darwin/i386 also puts the got into a virtual register (like
    Darwin/ppc), a.o. because the register allocator fails to colour
    a routine in aasmcpu.pas if we take away ebx from it.

git-svn-id: trunk@8657 -
2007-09-26 21:42:27 +00:00
tom_at_work
c6d42528a2 * linker script: keep got and toc sections together; allows use of -Cg (PIC) in large programs (e.g. compiler) on powerpc64/linux
git-svn-id: trunk@8591 -
2007-09-21 00:05:51 +00:00
Jonas Maebe
9888e674cc * upped recordalignmax for darwin/ppc and darwin/ppc64 a bit
git-svn-id: trunk@8413 -
2007-09-08 22:52:12 +00:00
Jonas Maebe
881f884f4c * also pass -arch parameter when creating bundles
git-svn-id: trunk@8223 -
2007-08-05 11:05:20 +00:00
Jonas Maebe
4cdd590091 * use app_type instead of RelocSection for creating bundles, as
RelocSection is automatically set for all shared libraries

git-svn-id: trunk@8219 -
2007-08-04 09:13:34 +00:00
Jonas Maebe
84ddacd017 + support for creating a bundle instead of a library on Darwin (-Wb)
git-svn-id: trunk@8217 -
2007-08-03 12:42:49 +00:00
Jonas Maebe
661c2eba37 * clean up of previous fix
git-svn-id: trunk@8177 -
2007-07-28 10:48:12 +00:00
marco
727b68c9b0 * small fix for OS X related typo.
git-svn-id: trunk@8175 -
2007-07-28 10:09:23 +00:00
Jonas Maebe
9c69c9dcf8 * fixed handling of paths/files with spaces in their name in link.res
on platforms where the `cat link.res` trick is used. Those must
    /not/ be quoted, because otherwise the shell assumes those quotes
    are part of the filename, and will escape the quotes themselves.

    Instead, write everything out without quotes, but set IFS to
    <newline> before doing the cat, so that only a new line is seen
    as a separator between items. The shell will then insert the
    necessary quotes to escape the spaces. One disadvantage: this
    means that other options, such as e.g. "-arch ppc" under Darwin,
    must now be written split over two lines to avoid the shell
    passing such parameters (which consist of two separate strings)
    as one single parameter (with an escaped space) to ld.

git-svn-id: trunk@8166 -
2007-07-25 16:25:14 +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