defs.mk, rules.mk: Some fixes to mingw support

This commit is contained in:
Jan Lindemann 2007-07-13 13:26:43 +00:00 committed by Jan Lindemann
commit 12b543efd9
2 changed files with 18 additions and 7 deletions

View file

@ -59,11 +59,11 @@ ifeq ($(TARGET),mingw)
CROSS_TOOL_DIR = /opt/cross-tools
CROSS_TOOL_BIN_PREFIX = $(CROSS_TOOL_DIR)/bin/i386-mingw32-
CC = $(CROSS_TOOL_BIN_PREFIX)gcc
GPP = $(CROSS_TOOL_BIN_PREFIX)g++
LDFLAGS += -Wl,--out-implib
CPP = $(CROSS_TOOL_BIN_PREFIX)g++
LDFLAGS += -lws2_32
USE_GFILTER = false
endif
YTOOLS_DIR = $(MODDIR)
WINVERSION = $(shell echo $(VERSION) | sed -e "s/\./_/g")
LOCAL_VERSION = $(shell echo $(VERSION))
@ -187,9 +187,14 @@ INSTALLED_VERSION_FILE = $(PREFIX)/VERSION
INSTALLED_DOCS_DIST = $(addprefix $(INSTALL_DOCDIR_DIST)/,$(DOCS))
INSTALLED_DOCS_DEVEL = $(addprefix $(INSTALL_DOCDIR_DEVEL)/,$(DOCS))
SO_SUFFIX = so.$(shell echo $(VERSION) | cut -d- -f1)
LIB_A = $(LIBDIR)/lib$(LIBNAME).a
ifneq ($(TARGET),mingw)
SO_SUFFIX = so.$(shell echo $(VERSION) | cut -d- -f1)
LIB_SO = $(LIBDIR)/lib$(LIBNAME).$(SO_SUFFIX)
else
SO_SUFFIX = dll.$(shell echo $(VERSION) | cut -d- -f1)
LIB_SO = $(LIBDIR)/$(LIBNAME).dll
endif
VERSION_SCRIPT = $(LIBDIR)/version.ldscript
INSTALLED_LIB_SO = $(INSTALL_LIBDIR)/lib$(LIBNAME).$(SO_SUFFIX)
INSTALLED_SHOBJS += $(addprefix $(INSTALL_LIBDIR)/,$(SHOBJS))
@ -321,7 +326,7 @@ ifeq ($(USE_GFILTER),true)
CPP = g++
endif
else
CPP = g++
CPP ?= g++
endif
ifeq ($(USE_PROJECT_LIB),true)

View file

@ -61,9 +61,15 @@ endif
$(VERSION_SCRIPT):
$(MOD_SCRIPT_DIR)/make_version_script.sh $(BINARY_VERSION) > $@
ifneq ($(TARGET),mingw)
$(LIB_SO): $(VERSION_SCRIPT) $(LIB_A)
$(CC) -shared -Wl,--whole-archive,-soname=$(notdir $@) $(VERSION_SCRIPT) $(LIB_A) -Wl,--no-whole-archive \
$(filter-out -l$(LIBNAME),$(LDFLAGS)) -o $@
else
$(LIB_SO): $(VERSION_SCRIPT) $(LIB_A)
$(CC) -shared -Wl,--whole-archive,--out-implib,$(LIB_A)-mingw $(VERSION_SCRIPT) $(LIB_A) -Wl,--no-whole-archive \
$(filter-out -l$(LIBNAME),$(LDFLAGS)) -o $@
endif
$(TOPDIR)/include:
mkdir -p $@
@ -200,10 +206,10 @@ endif
# fi
.%.o.dep.mk: %.cpp $(BUILD_H)
gcc -M $(CPPFLAGS) $(DEPEND_CPPFLAGS) $< -o $@
$(CC) -M $(CPPFLAGS) $(DEPEND_CPPFLAGS) $< -o $@
.%.o.dep.mk: %.c $(BUILD_H)
gcc -M $(CPPFLAGS) $(DEPEND_CPPFLAGS) $< -o $@
$(CC) -M $(CPPFLAGS) $(DEPEND_CPPFLAGS) $< -o $@
checkroot:
@if [ "$(CHECK_ROOT)" = true -o "$(CHECK_ROOT)" = TRUE ] ; then \