Commit Graph

200 Commits

Author SHA1 Message Date
paul
7a74d2c2f8 compiler: reduce amount of hints and notes
git-svn-id: trunk@19293 -
2011-09-30 08:56:05 +00:00
pierre
bcb2bb9e5b Add removal of braces for parameters in linker script
git-svn-id: trunk@17902 -
2011-07-01 14:28:18 +00:00
pierre
f328836cad + Add checks for internal linker script
git-svn-id: trunk@17882 -
2011-06-30 13:16:04 +00:00
pierre
239944f8d0 + Use DLL name in assembler labels used to import DLL functions/variables
in Windows, Emx and OS2 targets.
    This fixes test failures: test/library/tlib1b.pp and lib2b.pp

    link unit TLinker.AddImportSymbol: Added symmangledname parameter.
    ogbase unit TImportSymbol.Create: Add AMangledName parameter.
    fmodule unit TModule.AddExternalImport: Add symmangledname parameter.
    fppu unit: Also put mangled name string for imported symbol.
    ppu unit: Increase PPUVersion
    utils/ppudump.pp: Adapt to PPU change above.
    systems/T_OS units: Use ImportSymbol.MangledName property to create
    import libraries or .idata sections.

git-svn-id: trunk@17804 -
2011-06-23 11:38:57 +00:00
pierre
1a9f4ba314 * Improve ogbase linker script support, add warnings for unknown entries
git-svn-id: trunk@17784 -
2011-06-21 16:49:50 +00:00
florian
81bd7867b3 * it makes no sense to search the windows dirs for dlls when cross compiling
git-svn-id: trunk@17687 -
2011-06-07 19:24:53 +00:00
florian
0c62133d38 * patch by Mattias Gaertner to allow to override how the compiler reads source/ppu files, resolves #18740
git-svn-id: trunk@17255 -
2011-04-05 20:10:09 +00:00
armin
7eace122dc internal linker support for creating novell netware loadable modules
git-svn-id: trunk@17192 -
2011-03-27 14:47:25 +00:00
florian
26fbfaf5a7 + introduce the usage of asizeint/asizeuint for cpus with sizeof("alu")<>sizeof(pointer)
git-svn-id: trunk@17011 -
2011-02-26 20:10:03 +00:00
Jonas Maebe
1f6ec379de * moved field definitions before method/property definitions (see mantis
#13971)

git-svn-id: trunk@13330 -
2009-06-27 11:27:31 +00:00
Jonas Maebe
78c12ba82b * only store debug link file name in .gnu_debuglink section
(mantis #13324)

git-svn-id: trunk@12884 -
2009-03-14 14:03:38 +00:00
Jonas Maebe
8adde04a0b * don't warn that a unit won't be smartlinked in case no .a file is
available when smart linking happens using the plain object files
    (mantis #12316)

git-svn-id: trunk@11874 -
2008-10-10 14:11:00 +00:00
yury
5e11e697b4 * Use unsigned integers for sizes and positions to break 2GB limit in tdynamicarray, object writer, internal linker, coff and PE headers.
git-svn-id: trunk@11480 -
2008-07-28 20:29:25 +00:00
yury
491f0fa1d8 * Replaced all user defined warnings by TODO comments to reduce compiler noise.
git-svn-id: trunk@11443 -
2008-07-23 11:00:03 +00:00
peter
de918497ef * support -Xg under linux
git-svn-id: trunk@9811 -
2008-01-20 12:12:15 +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
florian
d9e0f078e1 * continued to play around with package support
git-svn-id: trunk@9075 -
2007-11-02 22:26:43 +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
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
yury
55394d9e72 * Added FlushOutput after "Linking..." message by internal linker. Now this message is visible in Lazarus during linking.
git-svn-id: trunk@7518 -
2007-05-29 17:04:53 +00:00
yury
821c91c230 * fix Mantis #8760: do not put actually empty sections in executable by internal linker.
* .bss section no longer required by internal linker.

git-svn-id: trunk@7316 -
2007-05-12 13:32:52 +00:00
peter
9f3de7e809 * -Xg generates a separate file with the debug info sections
git-svn-id: trunk@6628 -
2007-02-24 15:06:31 +00:00
Jonas Maebe
90ea73a90b * more file handling from shortstring to tcmdstr
git-svn-id: trunk@6595 -
2007-02-21 21:54:54 +00:00
tom_at_work
106fe68ce6 * renamed TStringList to TCmdStrList, in general use TCmdStr instead of shortstrings to fix bug #6351
git-svn-id: trunk@6215 -
2007-01-26 22:29:39 +00:00
Jonas Maebe
adbe0ab1d2 * support linker options (-k) which are > 255 chars combined
git-svn-id: trunk@5924 -
2007-01-12 17:12:29 +00:00
Jonas Maebe
4ba88ce33e * fix searching of (g)ar for the arfinishcmd
git-svn-id: trunk@5367 -
2006-11-13 22:39:00 +00:00
Jonas Maebe
81fd4e865e * pass 2kb of parameters to ar at a time (instead of 200 bytes)
git-svn-id: trunk@5328 -
2006-11-11 10:24:46 +00:00
Jonas Maebe
636cb3beef * some ansistring fixes for calling ar, but not yet complete
(cmdlines > 255 chars are still cut off)

git-svn-id: trunk@5325 -
2006-11-10 23:52:01 +00:00
florian
959a1379cf * fixed building of smart linked units
git-svn-id: trunk@5227 -
2006-11-04 18:12:33 +00:00
micha
ad7d549965 + implement pascal inline asm start/halt code for linux/i386
git-svn-id: trunk@5181 -
2006-11-02 16:58:41 +00:00
Jonas Maebe
0909d46626 * fixed linker exit code detection in case of useshell
git-svn-id: trunk@5138 -
2006-11-01 00:19:20 +00:00
peter
7a2e0da7bd * extra parameter for file searching functions
that indicate if the cache shall be used or not
  * fixed compile of non-x86 targets

git-svn-id: trunk@5115 -
2006-10-31 10:56:58 +00:00
peter
9f5d69ce31 * make win32 compile
git-svn-id: trunk@5103 -
2006-10-30 23:46:28 +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
bf1c390027 * refactor import library generation
* support variable imports in internal linker

git-svn-id: trunk@4544 -
2006-09-03 19:22:31 +00:00
Jonas Maebe
e52ff8bbcf * used gar instead of ar on solaris
git-svn-id: trunk@4393 -
2006-08-08 17:11:46 +00:00
peter
80bd513997 * add some info for -vx
git-svn-id: trunk@4389 -
2006-08-07 20:01:01 +00:00
Károly Balogh
cf3b4ec3a3 + fixed scripts to have proper deletedir commands
git-svn-id: trunk@4073 -
2006-07-02 10:40:10 +00:00
yury
03f892719d * added import by ordinal number in internal linker.
git-svn-id: trunk@4037 -
2006-07-01 15:53:18 +00:00
peter
f5c1839ff0 * support static library (.a) linking
* move win linker script to t_win
  * rename some win32 to win in t_win

git-svn-id: trunk@3991 -
2006-06-28 20:26:53 +00:00
marco
2a5332e3bd * Link ordering working FreeBSD implementation
git-svn-id: trunk@3894 -
2006-06-19 14:17:45 +00:00
marco
179451dcfd * Initial linkordering subsystem. Not active (need t_* mods which I want in a different revision to ease merging)
git-svn-id: trunk@3788 -
2006-06-04 12:44:48 +00:00
peter
a57708e63d * DLL support
git-svn-id: trunk@3623 -
2006-05-21 21:07:49 +00:00
Tomas Hajny
a62c1faa2d + output is flushed before launching external utilities
git-svn-id: trunk@3539 -
2006-05-15 00:28:55 +00:00
peter
d69ad5d84d * cleanup external/nolink options
git-svn-id: trunk@3375 -
2006-04-29 21:49:37 +00:00
peter
ce58e15393 * fix coff section names to fix resourcestrings with
the external linker
  * create import libraries for dll imports, this uses
    the new objdata framework to generate the binary
    object files directly without needing an assembler pass
  * store import_dll and import_name in ppu
  * external linker uses import libraries
  * internal linker uses import info from symtables,
    no dlls are needed anymore

git-svn-id: trunk@3255 -
2006-04-17 20:48:22 +00:00
Jonas Maebe
adea84b807 * made ar'ing of smartlinked libraries a lot faster
git-svn-id: trunk@3234 -
2006-04-16 18:42:15 +00:00
peter
7f4b051f99 * support subsystem
* fixed stab
  * always keep .rsrc section

git-svn-id: trunk@3089 -
2006-03-30 11:24:17 +00:00
peter
37c81492ad Merged revisions 2827,2831,2837,2932-2980 via svnmerge from
svn+ssh://peter@www.freepascal.org/FPC/svn/fpc/branches/linker/compiler

r2827 (peter)
  * smartlinking of resourcestrings


r2831 (peter)
  * process_ea 64bit fixes


r2837 (peter)
  * linker script

git-svn-id: trunk@2981 -
2006-03-19 22:12:52 +00:00