summaryrefslogtreecommitdiff
path: root/sysinfo/os/pe.mk
diff options
context:
space:
mode:
authormidipix <writeonce@midipix.org>2017-10-25 01:33:27 -0400
committermidipix <writeonce@midipix.org>2017-10-25 01:35:24 -0400
commit18aea8d909d830b62c8f6e31eae947a0f4b9f8d2 (patch)
tree38efdb34bcf5fc7cfa78c31c64238705b0f2070c /sysinfo/os/pe.mk
parent0cea661ed2a3fb1cb521b171e62aed84d4a0ff35 (diff)
downloadbcparser-18aea8d909d830b62c8f6e31eae947a0f4b9f8d2.tar.bz2
bcparser-18aea8d909d830b62c8f6e31eae947a0f4b9f8d2.tar.xz
build system: PE targets: added mdso-based import library generation support.
Diffstat (limited to 'sysinfo/os/pe.mk')
-rw-r--r--sysinfo/os/pe.mk27
1 files changed, 24 insertions, 3 deletions
diff --git a/sysinfo/os/pe.mk b/sysinfo/os/pe.mk
index bbb74b2..1b02484 100644
--- a/sysinfo/os/pe.mk
+++ b/sysinfo/os/pe.mk
@@ -19,9 +19,6 @@ implib-solink: shared-lib $(IMPLIB_SOLINK)
$(IMPLIB_DEF): shared-lib
-$(IMPLIB_VER): $(IMPLIB_DEF)
- $(DLLTOOL) -l $(IMPLIB_VER) -d $(IMPLIB_DEF) -D $(DSO_VER)
-
install-implib: install-implib-ver \
package-install-implib-soname \
package-install-implib-solink
@@ -38,6 +35,20 @@ clean-implib:
rm -f $(IMPLIB_SOLINK)
+ifeq ($(OS_IMPLIB_TOOL),mdso)
+
+$(IMPLIB_VER): $(IMPLIB_DEF)
+ $(MDSO) -m $(HOST_BITS) -i $(IMPLIB_VER) -n $(DSO_VER) $(IMPLIB_DEF)
+
+else ifeq ($(OS_IMPLIB_TOOL),dlltool)
+
+$(IMPLIB_VER): $(IMPLIB_DEF)
+ $(DLLTOOL) -l $(IMPLIB_VER) -d $(IMPLIB_DEF) -D $(DSO_VER)
+
+endif
+
+
+
ifeq ($(AVOID_VERSION),yes)
package-implib-soname:
@@ -53,9 +64,19 @@ package-install-implib-soname: install-implib-soname
package-install-implib-solink: install-implib-solink
+ifeq ($(OS_IMPLIB_TOOL),mdso)
+
+$(IMPLIB_SONAME): $(IMPLIB_DEF)
+ $(MDSO) -m $(HOST_BITS) -i $(IMPLIB_SONAME) -n $(DSO_SONAME) $(IMPLIB_DEF)
+
+else ifeq ($(OS_IMPLIB_TOOL),dlltool)
+
$(IMPLIB_SONAME): $(IMPLIB_DEF)
$(DLLTOOL) -l $(IMPLIB_SONAME) -d $(IMPLIB_DEF) -D $(DSO_SONAME)
+endif
+
+
$(IMPLIB_SOLINK): $(IMPLIB_SONAME)
rm -f $(IMPLIB_SOLINK).tmp
ln -s $(IMP_SONAME) $(IMPLIB_SOLINK).tmp