forked from lix-project/lix
Fix library handling on Cygwin
1. Shared lib extension is .dll 2. Shared libs are installed to $(prefix)/bin 3. Linker does not support -z flag
This commit is contained in:
parent
936f68668c
commit
4872677ffa
|
@ -2,9 +2,13 @@ libs-list :=
|
||||||
|
|
||||||
ifeq ($(OS), Darwin)
|
ifeq ($(OS), Darwin)
|
||||||
SO_EXT = dylib
|
SO_EXT = dylib
|
||||||
|
else
|
||||||
|
ifeq (CYGWIN,$(findstring CYGWIN,$(OS)))
|
||||||
|
SO_EXT = dll
|
||||||
else
|
else
|
||||||
SO_EXT = so
|
SO_EXT = so
|
||||||
endif
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
# Build a library with symbolic name $(1). The library is defined by
|
# Build a library with symbolic name $(1). The library is defined by
|
||||||
# various variables prefixed by ‘$(1)_’:
|
# various variables prefixed by ‘$(1)_’:
|
||||||
|
@ -50,7 +54,11 @@ define build-library
|
||||||
$(1)_OBJS := $$(addsuffix .o, $$(basename $$(_srcs)))
|
$(1)_OBJS := $$(addsuffix .o, $$(basename $$(_srcs)))
|
||||||
_libs := $$(foreach lib, $$($(1)_LIBS), $$($$(lib)_PATH))
|
_libs := $$(foreach lib, $$($(1)_LIBS), $$($$(lib)_PATH))
|
||||||
|
|
||||||
|
ifeq (CYGWIN,$(findstring CYGWIN,$(OS)))
|
||||||
|
$(1)_INSTALL_DIR ?= $$(bindir)
|
||||||
|
else
|
||||||
$(1)_INSTALL_DIR ?= $$(libdir)
|
$(1)_INSTALL_DIR ?= $$(libdir)
|
||||||
|
endif
|
||||||
|
|
||||||
$(1)_LDFLAGS_USE :=
|
$(1)_LDFLAGS_USE :=
|
||||||
$(1)_LDFLAGS_USE_INSTALLED :=
|
$(1)_LDFLAGS_USE_INSTALLED :=
|
||||||
|
@ -65,9 +73,11 @@ define build-library
|
||||||
endif
|
endif
|
||||||
else
|
else
|
||||||
ifneq ($(OS), Darwin)
|
ifneq ($(OS), Darwin)
|
||||||
|
ifneq (CYGWIN,$(findstring CYGWIN,$(OS)))
|
||||||
$(1)_LDFLAGS += -Wl,-z,defs
|
$(1)_LDFLAGS += -Wl,-z,defs
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
ifneq ($(OS), Darwin)
|
ifneq ($(OS), Darwin)
|
||||||
$(1)_LDFLAGS += -Wl,-soname=$$($(1)_NAME).$(SO_EXT)
|
$(1)_LDFLAGS += -Wl,-soname=$$($(1)_NAME).$(SO_EXT)
|
||||||
|
|
Loading…
Reference in a new issue