X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=docs%2Fusers_guide%2Fphases.xml;h=abe96b368162a228a9be7a577eb9e6d8c4a342a9;hb=f61baf76c9fa20aa972938384887bcb52151e76f;hp=2026a34f598b43ef4be14cbc6d7976e03362880e;hpb=035890658d56bc5233f73b311a1bd08c41752d33;p=ghc-hetmet.git diff --git a/docs/users_guide/phases.xml b/docs/users_guide/phases.xml index 2026a34..abe96b3 100644 --- a/docs/users_guide/phases.xml +++ b/docs/users_guide/phases.xml @@ -543,31 +543,6 @@ $ cat foo.hspp - - Options affecting the C compiler (if applicable) - - include-file options - C compiler options - GCC options - - If you are compiling with lots of foreign calls, you may - need to tell the C compiler about some - #include files. The Right Way to do this is to - add an INCLUDE pragma to the top of your source file - (): - -{-# INCLUDE <X/Xlib.h> #-} - - Sometimes this isn't convenient. In those cases there's an - equivalent command-line option: - -% ghc -c '-#include <X/Xlib.h>' Xstuff.lhs - - - - - - Options affecting code generation @@ -989,6 +964,29 @@ $ cat foo.hspp + + + + + + Link the program with the "eventlog" version of the + runtime system. A program linked in this way can generate + a runtime trace of events (such as thread start/stop) to a + binary file + program.eventlog, + which can then be interpreted later by various tools. See + for more information. + + + can be used + with . It is implied + by . + + + + + + @@ -1052,6 +1050,46 @@ $ cat foo.hspp />). + + + + + + + + + DLLs on Windows are typically linked to by linking to a corresponding + .lib or .dll.a - the so-called import library. + GHC will typically generate such a file for every DLL you create by compiling in + -shared mode. However, sometimes you don't want to pay the + disk-space cost of creating this import library, which can be substantial - it + might require as much space as the code itself, as Haskell DLLs tend to export + lots of symbols. + + As long as you are happy to only be able to link to the DLL using + GetProcAddress and friends, you can supply the + flag to disable the creation of the import + library entirely. + + + + + + + + + + + On Darwin/MacOS X, dynamic libraries are stamped at build time with an + "install name", which is the ultimate install path of the library file. + Any libraries or executables that subsequently link against it will pick + up that path as their runtime search location for it. By default, ghc sets + the install name to the location where the library is built. This option + allows you to override it with the specified file path. (It passes + -install_name to Apple's linker.) Ignored on other + platforms. + + @@ -1059,7 +1097,6 @@ $ cat foo.hspp