mirror of
https://github.com/reactos/reactos.git
synced 2024-12-28 10:04:49 +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 = ../..
|
PATH_TO_TOP = ../..
|
||||||
|
|
||||||
|
@ -12,6 +12,9 @@ TARGET_PCH = precomp.h
|
||||||
|
|
||||||
TARGET_BASE = $(TARGET_BASE_LIB_CRTDLL)
|
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_LFLAGS = -nostartfiles -nostdlib
|
||||||
|
|
||||||
TARGET_CFLAGS = -D_MSVCRT_LIB_ -Werror -Wall
|
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 = ../..
|
PATH_TO_TOP = ../..
|
||||||
|
|
||||||
|
@ -12,6 +12,9 @@ TARGET_PCH = precomp.h
|
||||||
|
|
||||||
TARGET_BASE = $(TARGET_BASE_LIB_MSVCRT)
|
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_LFLAGS = -nostartfiles --enable-stdcall-fixup
|
||||||
|
|
||||||
TARGET_SDKLIBS = libwine.a string.a kernel32.a ntdll.a
|
TARGET_SDKLIBS = libwine.a string.a kernel32.a ntdll.a
|
||||||
|
|
|
@ -9,6 +9,9 @@ TARGET_NAME = msvcrt20
|
||||||
|
|
||||||
TARGET_BASE = $(TARGET_BASE_LIB_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_LFLAGS = -nostartfiles --enable-stdcall-fixup
|
||||||
|
|
||||||
TARGET_SDKLIBS = libwine.a string.a kernel32.a ntdll.a
|
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
|
# Helper makefile for ReactOS modules
|
||||||
# Variables this makefile accepts:
|
# Variables this makefile accepts:
|
||||||
|
@ -357,6 +357,11 @@ endif
|
||||||
# can be overidden with $(CXX) for linkage of c++ executables
|
# can be overidden with $(CXX) for linkage of c++ executables
|
||||||
LD_CC = $(CC)
|
LD_CC = $(CC)
|
||||||
|
|
||||||
|
ifeq ($(RM_AT_FROM_SYMBOLS),no)
|
||||||
|
MK_KILLAT :=
|
||||||
|
else
|
||||||
|
MK_KILLAT := --kill-at
|
||||||
|
endif
|
||||||
|
|
||||||
ifeq ($(TARGET_TYPE),program)
|
ifeq ($(TARGET_TYPE),program)
|
||||||
ifeq ($(TARGET_APPTYPE),windows)
|
ifeq ($(TARGET_APPTYPE),windows)
|
||||||
|
@ -671,7 +676,7 @@ $(MK_IMPLIBPATH)/$(MK_IMPLIB_FULLNAME): $(MK_OBJECTS) $(MK_DEFNAME)
|
||||||
--dllname $(MK_FULLNAME) \
|
--dllname $(MK_FULLNAME) \
|
||||||
--def $(MK_DEFNAME) \
|
--def $(MK_DEFNAME) \
|
||||||
--output-lib $(MK_IMPLIBPATH)/$(MK_BASENAME).a \
|
--output-lib $(MK_IMPLIBPATH)/$(MK_BASENAME).a \
|
||||||
--kill-at
|
$(MK_KILLAT)
|
||||||
|
|
||||||
else # MK_IMPLIBONLY
|
else # MK_IMPLIBONLY
|
||||||
|
|
||||||
|
@ -720,7 +725,7 @@ ifeq ($(MK_EXETYPE),dll)
|
||||||
- $(RM) junk.tmp
|
- $(RM) junk.tmp
|
||||||
$(DLLTOOL) --dllname $(MK_FULLNAME) \
|
$(DLLTOOL) --dllname $(MK_FULLNAME) \
|
||||||
--base-file base.tmp \
|
--base-file base.tmp \
|
||||||
--output-exp temp.exp --kill-at $(MK_EXTRACMD)
|
--output-exp temp.exp $(MK_KILLAT) $(MK_EXTRACMD)
|
||||||
- $(RM) base.tmp
|
- $(RM) base.tmp
|
||||||
endif
|
endif
|
||||||
$(LD_CC) $(TARGET_LFLAGS) \
|
$(LD_CC) $(TARGET_LFLAGS) \
|
||||||
|
@ -762,7 +767,7 @@ ifeq ($(MK_EXETYPE),dll)
|
||||||
- $(RM) junk.tmp
|
- $(RM) junk.tmp
|
||||||
$(DLLTOOL) --dllname $(MK_FULLNAME) \
|
$(DLLTOOL) --dllname $(MK_FULLNAME) \
|
||||||
--base-file base.tmp \
|
--base-file base.tmp \
|
||||||
--output-exp temp.exp --kill-at $(MK_EXTRACMD)
|
--output-exp temp.exp $(MK_KILLAT) $(MK_EXTRACMD)
|
||||||
- $(RM) base.tmp
|
- $(RM) base.tmp
|
||||||
endif
|
endif
|
||||||
$(LD_CC) $(TARGET_LFLAGS) \
|
$(LD_CC) $(TARGET_LFLAGS) \
|
||||||
|
@ -798,7 +803,7 @@ $(MK_NOSTRIPNAME): $(MK_EXTRADEP) $(MK_FULLRES) $(MK_OBJECTS) $(MK_LIBS)
|
||||||
- $(RM) junk.tmp
|
- $(RM) junk.tmp
|
||||||
$(DLLTOOL) --dllname $(MK_FULLNAME) \
|
$(DLLTOOL) --dllname $(MK_FULLNAME) \
|
||||||
--base-file base.tmp \
|
--base-file base.tmp \
|
||||||
--output-exp temp.exp $(MK_EXTRACMD) --kill-at
|
--output-exp temp.exp $(MK_EXTRACMD) $(MK_KILLAT)
|
||||||
- $(RM) base.tmp
|
- $(RM) base.tmp
|
||||||
$(LD_CC) $(TARGET_LFLAGS) \
|
$(LD_CC) $(TARGET_LFLAGS) \
|
||||||
-Wl,--subsystem,native \
|
-Wl,--subsystem,native \
|
||||||
|
@ -830,7 +835,7 @@ endif
|
||||||
- $(RM) junk.tmp
|
- $(RM) junk.tmp
|
||||||
$(DLLTOOL) --dllname $(MK_FULLNAME) \
|
$(DLLTOOL) --dllname $(MK_FULLNAME) \
|
||||||
--base-file base.tmp \
|
--base-file base.tmp \
|
||||||
--output-exp temp.exp $(MK_EXTRACMD) --kill-at
|
--output-exp temp.exp $(MK_EXTRACMD) $(MK_KILLAT)
|
||||||
- $(RM) base.tmp
|
- $(RM) base.tmp
|
||||||
$(LD_CC) $(TARGET_LFLAGS) \
|
$(LD_CC) $(TARGET_LFLAGS) \
|
||||||
-Wl,--subsystem,native \
|
-Wl,--subsystem,native \
|
||||||
|
@ -881,7 +886,7 @@ $(MK_IMPLIBPATH)/$(MK_BASENAME).a: $(MK_DEFNAME)
|
||||||
$(DLLTOOL) --dllname $(MK_FULLNAME) \
|
$(DLLTOOL) --dllname $(MK_FULLNAME) \
|
||||||
--def $(MK_DEFNAME) \
|
--def $(MK_DEFNAME) \
|
||||||
--output-lib $(MK_IMPLIBPATH)/$(MK_BASENAME).a \
|
--output-lib $(MK_IMPLIBPATH)/$(MK_BASENAME).a \
|
||||||
--kill-at
|
$(MK_KILLAT)
|
||||||
|
|
||||||
implib: $(MK_IMPLIBPATH)/$(MK_BASENAME).a
|
implib: $(MK_IMPLIBPATH)/$(MK_BASENAME).a
|
||||||
else
|
else
|
||||||
|
|
Loading…
Reference in a new issue