mirror of
ssh://git.janware.com/srv/git/janware/proj/jw-pkg
synced 2026-01-23 06:30:38 +01:00
make: MinGW port
This commit is contained in:
parent
60f70015f3
commit
1c812446e6
5 changed files with 14 additions and 6 deletions
|
|
@ -42,6 +42,7 @@ else
|
||||||
include $(TOPDIR)/make/cfg_dist.mk
|
include $(TOPDIR)/make/cfg_dist.mk
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
#include $(MODDIR)/make/proj_conf.mk
|
||||||
|
|
||||||
OPTS_PID_FILE ?= $(PIDDIR)/$(PROJECT).pid
|
OPTS_PID_FILE ?= $(PIDDIR)/$(PROJECT).pid
|
||||||
|
|
||||||
|
|
@ -188,11 +189,12 @@ INSTALLED_VERSION_FILE = $(PREFIX)/VERSION
|
||||||
INSTALLED_DOCS_DIST = $(addprefix $(INSTALL_DOCDIR_DIST)/,$(DOCS))
|
INSTALLED_DOCS_DIST = $(addprefix $(INSTALL_DOCDIR_DIST)/,$(DOCS))
|
||||||
INSTALLED_DOCS_DEVEL = $(addprefix $(INSTALL_DOCDIR_DEVEL)/,$(DOCS))
|
INSTALLED_DOCS_DEVEL = $(addprefix $(INSTALL_DOCDIR_DEVEL)/,$(DOCS))
|
||||||
|
|
||||||
LIB_A = $(LIBDIR)/lib$(LIBNAME).a
|
|
||||||
ifneq ($(TARGET),mingw)
|
ifneq ($(TARGET),mingw)
|
||||||
|
LIB_A = $(LIBDIR)/lib$(LIBNAME).a
|
||||||
SO_SUFFIX = so.$(shell echo $(VERSION) | cut -d- -f1)
|
SO_SUFFIX = so.$(shell echo $(VERSION) | cut -d- -f1)
|
||||||
LIB_SO = $(LIBDIR)/lib$(LIBNAME).$(SO_SUFFIX)
|
LIB_SO = $(LIBDIR)/lib$(LIBNAME).$(SO_SUFFIX)
|
||||||
else
|
else
|
||||||
|
LIB_A = $(LIBDIR)/lib$(LIBNAME)-static.a
|
||||||
SO_SUFFIX = dll.$(shell echo $(VERSION) | cut -d- -f1)
|
SO_SUFFIX = dll.$(shell echo $(VERSION) | cut -d- -f1)
|
||||||
LIB_SO = $(LIBDIR)/$(LIBNAME).dll
|
LIB_SO = $(LIBDIR)/$(LIBNAME).dll
|
||||||
endif
|
endif
|
||||||
|
|
|
||||||
|
|
@ -24,7 +24,7 @@ BUILD_LOADABLE_OBJ_LIBS = $(addprefix $(LIBDIR)/, $(LOADABLE_OBJ_LIBS))
|
||||||
|
|
||||||
all: $(LOADABLE_OBJ_LIBS) $(BUILD_LOADABLE_OBJ_LIBS)
|
all: $(LOADABLE_OBJ_LIBS) $(BUILD_LOADABLE_OBJ_LIBS)
|
||||||
clean:
|
clean:
|
||||||
rm -f *.o *.cpp *.so *.done
|
rm -f *.o *.cpp *.so *.done *.dll
|
||||||
|
|
||||||
$(SO_PREFIX)%.so $(SO_PREFIX)%.dll: %.o
|
$(SO_PREFIX)%.so $(SO_PREFIX)%.dll: %.o
|
||||||
$(CPP) -shared $^ $(LDFLAGS) -o $@
|
$(CPP) -shared $^ $(LDFLAGS) -o $@
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,13 @@ IS_PLUGIN = true
|
||||||
PLUGIN_API ?= $(notdir $(shell cd ..; pwd))
|
PLUGIN_API ?= $(notdir $(shell cd ..; pwd))
|
||||||
PLUGIN_NAME ?= $(notdir $(shell pwd))
|
PLUGIN_NAME ?= $(notdir $(shell pwd))
|
||||||
PLUGIN_PREFIX ?= feedfs
|
PLUGIN_PREFIX ?= feedfs
|
||||||
PLUGIN ?= $(PLUGIN_PREFIX)_$(PLUGIN_API)_$(PLUGIN_NAME).so
|
ifneq ($(TARGET),mingw)
|
||||||
|
PLUGIN_SUFFIX ?= so
|
||||||
|
else
|
||||||
|
PLUGIN_SUFFIX ?= dll
|
||||||
|
endif
|
||||||
|
|
||||||
|
PLUGIN ?= $(PLUGIN_PREFIX)_$(PLUGIN_API)_$(PLUGIN_NAME).$(PLUGIN_SUFFIX)
|
||||||
|
|
||||||
PLUGIN_VERSION_LIB_BASENAME = $(PLUGIN_PREFIX)_$(PLUGIN_API)_version
|
PLUGIN_VERSION_LIB_BASENAME = $(PLUGIN_PREFIX)_$(PLUGIN_API)_version
|
||||||
PLUGIN_VERSION_LIB = $(LIBDIR)/lib$(PLUGIN_VERSION_LIB_BASENAME).a
|
PLUGIN_VERSION_LIB = $(LIBDIR)/lib$(PLUGIN_VERSION_LIB_BASENAME).a
|
||||||
|
|
@ -11,5 +17,5 @@ PLUGIN_VERSION_LIB = $(LIBDIR)/lib$(PLUGIN_VERSION_LIB_BASENAME).a
|
||||||
CFLAGS += -D PLUGIN_NAME_STR=\"$(PLUGIN_NAME)\"
|
CFLAGS += -D PLUGIN_NAME_STR=\"$(PLUGIN_NAME)\"
|
||||||
CPPFLAGS += -D PLUGIN_NAME_STR=\"$(PLUGIN_NAME)\"
|
CPPFLAGS += -D PLUGIN_NAME_STR=\"$(PLUGIN_NAME)\"
|
||||||
|
|
||||||
LDFLAGS += -Wl,--whole-archive -l$(PLUGIN_VERSION_LIB_BASENAME) -Wl,--no-whole-archive
|
PROJECT_LDFLAGS += -Wl,--whole-archive -l$(PLUGIN_VERSION_LIB_BASENAME) -Wl,--no-whole-archive
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@ include $(MODDIR)/make/defs.mk
|
||||||
all: $(PLUGIN_VERSION_LIB)
|
all: $(PLUGIN_VERSION_LIB)
|
||||||
clean: thisclean
|
clean: thisclean
|
||||||
version.o: version.cpp
|
version.o: version.cpp
|
||||||
g++ $(CPPFLAGS) -o $@ -c $<
|
$(CPP) $(CPPFLAGS) -o $@ -c $<
|
||||||
thisclean:
|
thisclean:
|
||||||
rm -f version.o
|
rm -f version.o
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -67,7 +67,7 @@ $(LIB_SO): $(VERSION_SCRIPT) $(LIB_A)
|
||||||
$(filter-out -l$(LIBNAME),$(LDFLAGS)) -o $@
|
$(filter-out -l$(LIBNAME),$(LDFLAGS)) -o $@
|
||||||
else
|
else
|
||||||
$(LIB_SO): $(VERSION_SCRIPT) $(LIB_A)
|
$(LIB_SO): $(VERSION_SCRIPT) $(LIB_A)
|
||||||
$(CC) -shared -Wl,--whole-archive,--out-implib,$(LIB_A)-mingw $(VERSION_SCRIPT) $(LIB_A) -Wl,--no-whole-archive \
|
$(CC) -shared -Wl,--whole-archive,--out-implib,$(shell echo $(LIB_A) | sed 's/-static//') $(VERSION_SCRIPT) $(LIB_A) -Wl,--no-whole-archive \
|
||||||
$(filter-out -l$(LIBNAME),$(LDFLAGS)) -o $@
|
$(filter-out -l$(LIBNAME),$(LDFLAGS)) -o $@
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue