bug-make
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: "load" on Windows


From: Eli Zaretskii
Subject: Re: "load" on Windows
Date: Thu, 03 Oct 2013 23:41:42 +0300

> From: "Gisle Vanem" <address@hidden>
> Date: Thu, 3 Oct 2013 22:03:14 +0200
> 
> VERSION = 3.99.93
> ifeq ($(MAKE_VERSION),$(VERSION))
> -load ./mk_test.dll
> endif
> 
> The above was needed since I needed to use mingw-make version 3.82.90
> to build this new make.exe. Windows doesn't allow make.exe to be linked
> while make.exe is running.

I don't understand the problem you are describing.  First, when Make
is built, it produces gnumake.exe, not make.exe.  And second, if
make.exe that runs is on PATH, rather than in the current directory,
it's a different executable, and there should be no problem linking
it.

So I guess you need to describe in more detail exactly what you did to
build a new make.exe.

> test_dll: 
>   @echo 'Loaded modules: $(.LOADED)'  
>   @echo 'Make version: $(MAKE_VERSION)' 
>   @echo 'FEATURES: $(.FEATURES)' ; \
>   @echo 'Calling mk_test: $(mk_test "Hello world")'
> 
> The output is:
>   Loaded modules: mk_test.dll
>   Make version: 3.99.93
>   FEATURES: target-specific order-only second-expansion else-if shortest-stem 
>   undefine oneshell archives jobserver output-sync load
>   Calling mk_test:
> 
> See? "load" is there and mk_test.dll is loaded.
> 
> --------
> 
> My little mk_test.dll is simply trying to echo back some text, but my
> function is never called.  I checked with "pedump mk_test.dll" that the 
> symbols "mk_test_gmk_setup" and "plugin_is_GPL_compatible" are exported.

How did you build your DLL?  In particular, did you link it against
libgnumake-1.dll.a, the import library produced by the build process?



reply via email to

[Prev in Thread] Current Thread [Next in Thread]