doc/make.texi (Loaded Object Example): Add a note about building

shared objects on MS-Windows.
This commit is contained in:
Eli Zaretskii 2013-05-06 20:16:40 +03:00
parent c8bf04e141
commit a668c520b2
2 changed files with 19 additions and 0 deletions

View file

@ -1,3 +1,8 @@
2013-05-06 Eli Zaretskii <eliz@gnu.org>
* doc/make.texi (Loaded Object Example): Add a note about building
shared objects on MS-Windows.
2013-05-05 Paul Smith <psmith@gnu.org>
* makeint.h (OUTPUT_SYNC_LINE, OUTPUT_SYNC_RECURSE): Rename

View file

@ -11221,6 +11221,20 @@ mk_temp.so: mk_temp.c
@end group
@end example
On MS-Windows, due to peculiarities of how shared objects are
produced, the compiler needs to scan the @dfn{import library} produced
when building @code{make}, typically called
@file{libgnumake-@var{version}.dll.a}, where @var{version} is the
version of the load object API. So the recipe to produce a shared
object will look on Windows like this (assuming the API version is 1):
@example
@group
mk_temp.dll: mk_temp.c
$(CC) -shared -o $@ $< -lgnumake-1
@end group
@end example
Now when you run @code{make} you'll see something like:
@example