git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 02/14] msvc: git-daemon.exe: Fix linker "unresolved externals" error
@ 2010-12-04 18:55 Ramsay Jones
  2010-12-04 21:15 ` Erik Faye-Lund
  0 siblings, 1 reply; 4+ messages in thread
From: Ramsay Jones @ 2010-12-04 18:55 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: Johannes Sixt, GIT Mailing-list


The msvc linker complains about external symbols referenced by
the new poll() emulation code. In particular, it complains about
the DispatchMessage(), PeekMessage(), TranslateMessage() and
MsgWaitForMultipleObjects() functions.

In order to satisfy the external references, we link against the
user32.lib library.

Signed-off-by: Ramsay Jones <ramsay@ramsay1.demon.co.uk>
---
 Makefile |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/Makefile b/Makefile
index 1d42413..bda9fa6 100644
--- a/Makefile
+++ b/Makefile
@@ -1087,7 +1087,7 @@ ifeq ($(uname_S),Windows)
 	COMPAT_OBJS = compat/msvc.o compat/fnmatch/fnmatch.o compat/winansi.o compat/win32/pthread.o compat/win32/syslog.o compat/win32/sys/poll.o
 	COMPAT_CFLAGS = -D__USE_MINGW_ACCESS -DNOGDI -DHAVE_STRING_H -DHAVE_ALLOCA_H -Icompat -Icompat/fnmatch -Icompat/regex -Icompat/fnmatch -Icompat/win32 -DSTRIP_EXTENSION=\".exe\"
 	BASIC_LDFLAGS = -IGNORE:4217 -IGNORE:4049 -NOLOGO -SUBSYSTEM:CONSOLE -NODEFAULTLIB:MSVCRT.lib
-	EXTLIBS = advapi32.lib shell32.lib wininet.lib ws2_32.lib
+	EXTLIBS = user32.lib advapi32.lib shell32.lib wininet.lib ws2_32.lib
 	PTHREAD_LIBS =
 	lib =
 ifndef DEBUG
-- 
1.7.3

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH 02/14] msvc: git-daemon.exe: Fix linker "unresolved externals" error
  2010-12-04 18:55 [PATCH 02/14] msvc: git-daemon.exe: Fix linker "unresolved externals" error Ramsay Jones
@ 2010-12-04 21:15 ` Erik Faye-Lund
  2010-12-08  0:11   ` Ramsay Jones
  0 siblings, 1 reply; 4+ messages in thread
From: Erik Faye-Lund @ 2010-12-04 21:15 UTC (permalink / raw)
  To: Ramsay Jones; +Cc: Junio C Hamano, Johannes Sixt, GIT Mailing-list

On Sat, Dec 4, 2010 at 7:55 PM, Ramsay Jones <ramsay@ramsay1.demon.co.uk> wrote:
>
> The msvc linker complains about external symbols referenced by
> the new poll() emulation code. In particular, it complains about
> the DispatchMessage(), PeekMessage(), TranslateMessage() and
> MsgWaitForMultipleObjects() functions.
>
> In order to satisfy the external references, we link against the
> user32.lib library.
>
> Signed-off-by: Ramsay Jones <ramsay@ramsay1.demon.co.uk>
> ---
>  Makefile |    2 +-
>  1 files changed, 1 insertions(+), 1 deletions(-)
>
> diff --git a/Makefile b/Makefile
> index 1d42413..bda9fa6 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -1087,7 +1087,7 @@ ifeq ($(uname_S),Windows)
>        COMPAT_OBJS = compat/msvc.o compat/fnmatch/fnmatch.o compat/winansi.o compat/win32/pthread.o compat/win32/syslog.o compat/win32/sys/poll.o
>        COMPAT_CFLAGS = -D__USE_MINGW_ACCESS -DNOGDI -DHAVE_STRING_H -DHAVE_ALLOCA_H -Icompat -Icompat/fnmatch -Icompat/regex -Icompat/fnmatch -Icompat/win32 -DSTRIP_EXTENSION=\".exe\"
>        BASIC_LDFLAGS = -IGNORE:4217 -IGNORE:4049 -NOLOGO -SUBSYSTEM:CONSOLE -NODEFAULTLIB:MSVCRT.lib
> -       EXTLIBS = advapi32.lib shell32.lib wininet.lib ws2_32.lib
> +       EXTLIBS = user32.lib advapi32.lib shell32.lib wininet.lib ws2_32.lib
>        PTHREAD_LIBS =
>        lib =
>  ifndef DEBUG

Looks sane. But it's a bit odd - it currently builds fine without this
patch from the IDE, but not from the makefile. Is the linker-libs
different between these?

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH 02/14] msvc: git-daemon.exe: Fix linker "unresolved externals" error
  2010-12-04 21:15 ` Erik Faye-Lund
@ 2010-12-08  0:11   ` Ramsay Jones
  2010-12-08 12:41     ` Erik Faye-Lund
  0 siblings, 1 reply; 4+ messages in thread
From: Ramsay Jones @ 2010-12-08  0:11 UTC (permalink / raw)
  To: kusmabite; +Cc: Junio C Hamano, Johannes Sixt, GIT Mailing-list

Erik Faye-Lund wrote:
> On Sat, Dec 4, 2010 at 7:55 PM, Ramsay Jones <ramsay@ramsay1.demon.co.uk> wrote:
>> The msvc linker complains about external symbols referenced by
>> the new poll() emulation code. In particular, it complains about
>> the DispatchMessage(), PeekMessage(), TranslateMessage() and
>> MsgWaitForMultipleObjects() functions.
>>
>> In order to satisfy the external references, we link against the
>> user32.lib library.
>>
>> Signed-off-by: Ramsay Jones <ramsay@ramsay1.demon.co.uk>
>> ---
>>  Makefile |    2 +-
>>  1 files changed, 1 insertions(+), 1 deletions(-)
>>
>> diff --git a/Makefile b/Makefile
>> index 1d42413..bda9fa6 100644
>> --- a/Makefile
>> +++ b/Makefile
>> @@ -1087,7 +1087,7 @@ ifeq ($(uname_S),Windows)
>>        COMPAT_OBJS = compat/msvc.o compat/fnmatch/fnmatch.o compat/winansi.o compat/win32/pthread.o compat/win32/syslog.o compat/win32/sys/poll.o
>>        COMPAT_CFLAGS = -D__USE_MINGW_ACCESS -DNOGDI -DHAVE_STRING_H -DHAVE_ALLOCA_H -Icompat -Icompat/fnmatch -Icompat/regex -Icompat/fnmatch -Icompat/win32 -DSTRIP_EXTENSION=\".exe\"
>>        BASIC_LDFLAGS = -IGNORE:4217 -IGNORE:4049 -NOLOGO -SUBSYSTEM:CONSOLE -NODEFAULTLIB:MSVCRT.lib
>> -       EXTLIBS = advapi32.lib shell32.lib wininet.lib ws2_32.lib
>> +       EXTLIBS = user32.lib advapi32.lib shell32.lib wininet.lib ws2_32.lib
>>        PTHREAD_LIBS =
>>        lib =
>>  ifndef DEBUG
> 
> Looks sane. But it's a bit odd - it currently builds fine without this
> patch from the IDE, but not from the makefile. Is the linker-libs
> different between these?

Er... dunno! ;-) I don't use the IDE (except to read the msdn docs), I'm
*much* more productive in vim (yeah, I'm a luddite!).

So, how did you create your project file? What does it say?
ie. you tell me! :-P

ATB,
Ramsay Jones

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH 02/14] msvc: git-daemon.exe: Fix linker "unresolved externals" error
  2010-12-08  0:11   ` Ramsay Jones
@ 2010-12-08 12:41     ` Erik Faye-Lund
  0 siblings, 0 replies; 4+ messages in thread
From: Erik Faye-Lund @ 2010-12-08 12:41 UTC (permalink / raw)
  To: Ramsay Jones; +Cc: Junio C Hamano, Johannes Sixt, GIT Mailing-list

On Wed, Dec 8, 2010 at 1:11 AM, Ramsay Jones <ramsay@ramsay1.demon.co.uk> wrote:
> Erik Faye-Lund wrote:
>> On Sat, Dec 4, 2010 at 7:55 PM, Ramsay Jones <ramsay@ramsay1.demon.co.uk> wrote:
>>> The msvc linker complains about external symbols referenced by
>>> the new poll() emulation code. In particular, it complains about
>>> the DispatchMessage(), PeekMessage(), TranslateMessage() and
>>> MsgWaitForMultipleObjects() functions.
>>>
>>> In order to satisfy the external references, we link against the
>>> user32.lib library.
>>>
>>> Signed-off-by: Ramsay Jones <ramsay@ramsay1.demon.co.uk>
>>> ---
>>>  Makefile |    2 +-
>>>  1 files changed, 1 insertions(+), 1 deletions(-)
>>>
>>> diff --git a/Makefile b/Makefile
>>> index 1d42413..bda9fa6 100644
>>> --- a/Makefile
>>> +++ b/Makefile
>>> @@ -1087,7 +1087,7 @@ ifeq ($(uname_S),Windows)
>>>        COMPAT_OBJS = compat/msvc.o compat/fnmatch/fnmatch.o compat/winansi.o compat/win32/pthread.o compat/win32/syslog.o compat/win32/sys/poll.o
>>>        COMPAT_CFLAGS = -D__USE_MINGW_ACCESS -DNOGDI -DHAVE_STRING_H -DHAVE_ALLOCA_H -Icompat -Icompat/fnmatch -Icompat/regex -Icompat/fnmatch -Icompat/win32 -DSTRIP_EXTENSION=\".exe\"
>>>        BASIC_LDFLAGS = -IGNORE:4217 -IGNORE:4049 -NOLOGO -SUBSYSTEM:CONSOLE -NODEFAULTLIB:MSVCRT.lib
>>> -       EXTLIBS = advapi32.lib shell32.lib wininet.lib ws2_32.lib
>>> +       EXTLIBS = user32.lib advapi32.lib shell32.lib wininet.lib ws2_32.lib
>>>        PTHREAD_LIBS =
>>>        lib =
>>>  ifndef DEBUG
>>
>> Looks sane. But it's a bit odd - it currently builds fine without this
>> patch from the IDE, but not from the makefile. Is the linker-libs
>> different between these?
>
> Er... dunno! ;-) I don't use the IDE (except to read the msdn docs), I'm
> *much* more productive in vim (yeah, I'm a luddite!).
>
> So, how did you create your project file? What does it say?
> ie. you tell me! :-P
>

probably by contrib/buildsystems/generate, but I don't quite remember ;)

Anyway, if the result of contrib/buildsystems/generate builds
differently than "make MSVC=1", then I consider this an issue with
contrib/buildsystems/generate, not the MSVC-port.

I can try to reproduce it at some point, but I'm really tight on time right now.

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2010-12-08 12:41 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-12-04 18:55 [PATCH 02/14] msvc: git-daemon.exe: Fix linker "unresolved externals" error Ramsay Jones
2010-12-04 21:15 ` Erik Faye-Lund
2010-12-08  0:11   ` Ramsay Jones
2010-12-08 12:41     ` Erik Faye-Lund

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).