]> git.sur5r.net Git - cc65/blobdiff - doc/ld65.sgml
Build files in the extra directory.
[cc65] / doc / ld65.sgml
index ca431ff6e613a1c15efd3f3e69aeb68b7bbee2cb..5e9a777efa947cfb5cc3c59447a89baa13982b76 100644 (file)
@@ -67,6 +67,7 @@ Short options:
   -m name               Create a map file
   -o name               Name the default output file
   -t sys                Set the target system
+  -u sym                Force an import of symbol `sym'
   -v                    Verbose mode
   -vm                   Verbose map file
 
@@ -77,6 +78,7 @@ Long options:
   --define sym=val      Define a symbol
   --dump-config name    Dump a builtin configuration
   --end-group           End a library group
+  --force-import sym    Force an import of symbol `sym'
   --help                Help (this text)
   --lib file            Link this library
   --lib-path path       Specify a library search path
@@ -174,6 +176,22 @@ Here is a description of all the command line options:
   supported.
 
 
+  <tag><tt>-u sym[:addrsize], --force-import sym[:addrsize]</tt></tag>
+
+  Force an import of a symbol. While object files are always linked to the
+  output file, regardless if there are any references, object modules from
+  libraries get only linked in if an import can be satisfied by this module.
+  The <tt/--fore-import/ option may be used to add a reference to a symbol and
+  as a result force linkage of the module that exports the identifier.
+
+  The name of the symbol may optionally be followed by a colon and an address
+  size specifier. If no address size is specified, the default address size
+  for the target machine is used.
+
+  Please note that the symbol name needs to have the internal representation,
+  meaning you have to prepend an underline for C identifiers.
+
+
   <label id="option-v">
   <tag><tt>-v, --verbose</tt></tag>
 
@@ -306,9 +324,8 @@ The library search path contains in this order:
 <item>A compiled in library path which is often <tt>/usr/lib/cc65/lib</tt> on
       Linux systems.
 <item>The value of the environment variable <tt/LD65_LIB/ if it is defined.
-<item>The value of the environment variable <tt/CC65_LIB/ if it is defined.
-      Please note that use of this environment variable is obsolete and may
-      get removed in future versions.
+<item>A subdirectory named <tt/lib/ of the directory defined in the environment
+      variable <tt/CC65_HOME/, if it is defined.
 <item>Any directory added with the <tt><ref id="option--lib-path"
       name="--lib-path"></tt> option on the command line.
 </enum>
@@ -320,12 +337,11 @@ The object file search path contains in this order:
 
 <enum>
 <item>The current directory.
-<item>A compiled in directory which is often <tt>/usr/lib/cc65/lib</tt> on
+<item>A compiled in directory which is often <tt>/usr/lib/cc65/obj</tt> on
       Linux systems.
 <item>The value of the environment variable <tt/LD65_OBJ/ if it is defined.
-<item>The value of the environment variable <tt/CC65_LIB/ if it is defined.
-      Please note that use of this environment variable is obsolete and may
-      get removed in future versions.
+<item>A subdirectory named <tt/obj/ of the directory defined in the environment
+      variable <tt/CC65_HOME/, if it is defined.
 <item>Any directory added with the <tt><ref id="option--obj-path"
       name="--obj-path"></tt> option on the command line.
 </enum>
@@ -337,9 +353,11 @@ The config file search path contains in this order:
 
 <enum>
 <item>The current directory.
-<item>A compiled in directory which is often <tt>/usr/lib/cc65/lib</tt> on
+<item>A compiled in directory which is often <tt>/usr/lib/cc65/cfg</tt> on
       Linux systems.
 <item>The value of the environment variable <tt/LD65_CFG/ if it is defined.
+<item>A subdirectory named <tt/cfg/ of the directory defined in the environment
+      variable <tt/CC65_HOME/, if it is defined.
 <item>Any directory added with the <tt><ref id="option--cfg-path"
       name="--cfg-path"></tt> option on the command line.
 </enum>