mirror of
https://github.com/reactos/reactos.git
synced 2024-12-27 17:44:45 +00:00
don't let dlltool mess up c++ mangled exports for crtdll and msvcrt
svn path=/trunk/; revision=11166
This commit is contained in:
parent
c0f9c7505c
commit
737ea5b737
4 changed files with 23 additions and 9 deletions
|
@ -1,4 +1,4 @@
|
|||
# $Id: makefile,v 1.67 2004/09/16 10:25:12 gvg Exp $
|
||||
# $Id: makefile,v 1.68 2004/10/03 14:24:42 weiden Exp $
|
||||
|
||||
PATH_TO_TOP = ../..
|
||||
|
||||
|
@ -12,6 +12,9 @@ TARGET_PCH = precomp.h
|
|||
|
||||
TARGET_BASE = $(TARGET_BASE_LIB_CRTDLL)
|
||||
|
||||
# don't remove @nn from exported symbols - needed so dlltool doesn't mess up mangled c++ exports
|
||||
RM_AT_FROM_SYMBOLS = no
|
||||
|
||||
TARGET_LFLAGS = -nostartfiles -nostdlib
|
||||
|
||||
TARGET_CFLAGS = -D_MSVCRT_LIB_ -Werror -Wall
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# $Id: Makefile,v 1.47 2004/08/27 03:08:23 navaraf Exp $
|
||||
# $Id: Makefile,v 1.48 2004/10/03 14:24:43 weiden Exp $
|
||||
|
||||
PATH_TO_TOP = ../..
|
||||
|
||||
|
@ -12,6 +12,9 @@ TARGET_PCH = precomp.h
|
|||
|
||||
TARGET_BASE = $(TARGET_BASE_LIB_MSVCRT)
|
||||
|
||||
# don't remove @nn from exported symbols - needed so dlltool doesn't mess up mangled c++ exports
|
||||
RM_AT_FROM_SYMBOLS = no
|
||||
|
||||
TARGET_LFLAGS = -nostartfiles --enable-stdcall-fixup
|
||||
|
||||
TARGET_SDKLIBS = libwine.a string.a kernel32.a ntdll.a
|
||||
|
|
|
@ -9,6 +9,9 @@ TARGET_NAME = msvcrt20
|
|||
|
||||
TARGET_BASE = $(TARGET_BASE_LIB_MSVCRT20)
|
||||
|
||||
# don't remove @nn from exported symbols - needed so dlltool doesn't mess up mangled c++ exports
|
||||
RM_AT_FROM_SYMBOLS = no
|
||||
|
||||
TARGET_LFLAGS = -nostartfiles --enable-stdcall-fixup
|
||||
|
||||
TARGET_SDKLIBS = libwine.a string.a kernel32.a ntdll.a
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# $Id: helper.mk,v 1.82 2004/10/02 14:03:51 chorns Exp $
|
||||
# $Id: helper.mk,v 1.83 2004/10/03 14:24:43 weiden Exp $
|
||||
#
|
||||
# Helper makefile for ReactOS modules
|
||||
# Variables this makefile accepts:
|
||||
|
@ -357,6 +357,11 @@ endif
|
|||
# can be overidden with $(CXX) for linkage of c++ executables
|
||||
LD_CC = $(CC)
|
||||
|
||||
ifeq ($(RM_AT_FROM_SYMBOLS),no)
|
||||
MK_KILLAT :=
|
||||
else
|
||||
MK_KILLAT := --kill-at
|
||||
endif
|
||||
|
||||
ifeq ($(TARGET_TYPE),program)
|
||||
ifeq ($(TARGET_APPTYPE),windows)
|
||||
|
@ -671,7 +676,7 @@ $(MK_IMPLIBPATH)/$(MK_IMPLIB_FULLNAME): $(MK_OBJECTS) $(MK_DEFNAME)
|
|||
--dllname $(MK_FULLNAME) \
|
||||
--def $(MK_DEFNAME) \
|
||||
--output-lib $(MK_IMPLIBPATH)/$(MK_BASENAME).a \
|
||||
--kill-at
|
||||
$(MK_KILLAT)
|
||||
|
||||
else # MK_IMPLIBONLY
|
||||
|
||||
|
@ -720,7 +725,7 @@ ifeq ($(MK_EXETYPE),dll)
|
|||
- $(RM) junk.tmp
|
||||
$(DLLTOOL) --dllname $(MK_FULLNAME) \
|
||||
--base-file base.tmp \
|
||||
--output-exp temp.exp --kill-at $(MK_EXTRACMD)
|
||||
--output-exp temp.exp $(MK_KILLAT) $(MK_EXTRACMD)
|
||||
- $(RM) base.tmp
|
||||
endif
|
||||
$(LD_CC) $(TARGET_LFLAGS) \
|
||||
|
@ -762,7 +767,7 @@ ifeq ($(MK_EXETYPE),dll)
|
|||
- $(RM) junk.tmp
|
||||
$(DLLTOOL) --dllname $(MK_FULLNAME) \
|
||||
--base-file base.tmp \
|
||||
--output-exp temp.exp --kill-at $(MK_EXTRACMD)
|
||||
--output-exp temp.exp $(MK_KILLAT) $(MK_EXTRACMD)
|
||||
- $(RM) base.tmp
|
||||
endif
|
||||
$(LD_CC) $(TARGET_LFLAGS) \
|
||||
|
@ -798,7 +803,7 @@ $(MK_NOSTRIPNAME): $(MK_EXTRADEP) $(MK_FULLRES) $(MK_OBJECTS) $(MK_LIBS)
|
|||
- $(RM) junk.tmp
|
||||
$(DLLTOOL) --dllname $(MK_FULLNAME) \
|
||||
--base-file base.tmp \
|
||||
--output-exp temp.exp $(MK_EXTRACMD) --kill-at
|
||||
--output-exp temp.exp $(MK_EXTRACMD) $(MK_KILLAT)
|
||||
- $(RM) base.tmp
|
||||
$(LD_CC) $(TARGET_LFLAGS) \
|
||||
-Wl,--subsystem,native \
|
||||
|
@ -830,7 +835,7 @@ endif
|
|||
- $(RM) junk.tmp
|
||||
$(DLLTOOL) --dllname $(MK_FULLNAME) \
|
||||
--base-file base.tmp \
|
||||
--output-exp temp.exp $(MK_EXTRACMD) --kill-at
|
||||
--output-exp temp.exp $(MK_EXTRACMD) $(MK_KILLAT)
|
||||
- $(RM) base.tmp
|
||||
$(LD_CC) $(TARGET_LFLAGS) \
|
||||
-Wl,--subsystem,native \
|
||||
|
@ -881,7 +886,7 @@ $(MK_IMPLIBPATH)/$(MK_BASENAME).a: $(MK_DEFNAME)
|
|||
$(DLLTOOL) --dllname $(MK_FULLNAME) \
|
||||
--def $(MK_DEFNAME) \
|
||||
--output-lib $(MK_IMPLIBPATH)/$(MK_BASENAME).a \
|
||||
--kill-at
|
||||
$(MK_KILLAT)
|
||||
|
||||
implib: $(MK_IMPLIBPATH)/$(MK_BASENAME).a
|
||||
else
|
||||
|
|
Loading…
Reference in a new issue