From f282a8be3da78f235b047988157d2bd3f8e079f3 Mon Sep 17 00:00:00 2001
From: sof <unknown>
Date: Thu, 3 Jun 1999 07:12:10 +0000
Subject: [PATCH] [project @ 1999-06-03 07:12:10 by sof] DLL install support

---
 mk/opts.mk   |  4 ++--
 mk/target.mk | 24 ++++++++++++++++++------
 2 files changed, 20 insertions(+), 8 deletions(-)

diff --git a/mk/opts.mk b/mk/opts.mk
index 4df93335e1b9..e7e147820854 100644
--- a/mk/opts.mk
+++ b/mk/opts.mk
@@ -5,7 +5,7 @@
 #	This file defines Make variables for the
 #	option flags for each utility program
 #
-# 	$Id: opts.mk,v 1.10 1999/05/04 08:38:53 sof Exp $
+# 	$Id: opts.mk,v 1.11 1999/06/03 07:12:10 sof Exp $
 #
 #################################################################################
 
@@ -69,7 +69,7 @@ SRC_TEXI2HTML_OPTS +=-menu -verbose -glossary
 #
 # Default fptools options for dllwrap.
 #
-SRC_BLD_DLL_OPTS += -mno-cygwin --target=i386-mingw32 --export-all
+SRC_BLD_DLL_OPTS += -mno-cygwin --target=i386-mingw32
 
 #################################################################################
 #
diff --git a/mk/target.mk b/mk/target.mk
index 30f719aebff9..ecc22132d943 100644
--- a/mk/target.mk
+++ b/mk/target.mk
@@ -356,8 +356,12 @@ endif
 
 all :: $(DLL_NAME)
 
+ifeq "$(DLL_IMPLIB_NAME)" ""
+DLL_IMPLIB_NAME = $(patsubst %.a, %_imp.a, $(LIBRARY))
+endif
+
 $(DLL_NAME) :: $(LIBRARY)
-	$(BLD_DLL) --output-lib $(patsubst %.a, %_imp.a, $(LIBRARY)) --output-def $(patsubst %.dll,%.def,$(DLL_NAME)) -o $(DLL_NAME) $(LIBRARY) $(BLD_DLL_OPTS) 
+	$(BLD_DLL) --output-lib $(DLL_IMPLIB_NAME) -o $(DLL_NAME) $(LIBRARY) $(BLD_DLL_OPTS) 
 	touch dLL_ifs.hi
 endif
 
@@ -516,8 +520,14 @@ ifneq "$(INSTALL_PROGS)" ""
 install:: $(INSTALL_PROGS)
 	@$(INSTALL_DIR) $(bindir)
 	@for i in $(INSTALL_PROGS); do \
-		echo $(INSTALL_PROGRAM) $(INSTALL_BIN_OPTS) $$i$(exeext) $(bindir); \
-		$(INSTALL_PROGRAM) $(INSTALL_BIN_OPTS) $$i$(exeext) $(bindir);      \
+		case $$i in \
+		  *.dll) \
+		    echo $(INSTALL_DATA) $(INSTALL_BIN_OPTS) $$i $(bindir); \
+		    $(INSTALL_PROGRAM) $(INSTALL_BIN_OPTS) $$i $(bindir) ;; \
+		  *) \
+		    echo $(INSTALL_PROGRAM) $(INSTALL_BIN_OPTS) $$i$(exeext) $(bindir); \
+		    $(INSTALL_PROGRAM) $(INSTALL_BIN_OPTS) $$i$(exeext) $(bindir) ;;  \
+		esac; \
 	done
 endif
 
@@ -544,7 +554,7 @@ ifneq "$(BIN_DIST)" "1"
 	done
 else
 	for i in $(INSTALL_SCRIPTS); do \
-		$(INSTALL_PROGRAM) $(INSTALL_OPTS) $$i $(bindir); \
+		$(INSTALL_PROGRAM) $(INSTALL_OPTS) $$i $(bindir)/$$i; \
 	done
 endif
 else
@@ -567,13 +577,13 @@ ifneq "$(BIN_DIST)" "1"
 	   echo '$$'"libexecdir='$(libexecdir)';"                    >> $$i.tmp ; \
 	   echo '$$'"datadir='$(datadir)';"                          >> $$i.tmp ; \
 	   cat  $$i                                                >> $$i.tmp ; \
-	   echo $(INSTALL_PROGRAM) $(INSTALL_OPTS) $$i $(libdir) ;    \
+	   echo $(INSTALL_PROGRAM) $(INSTALL_OPTS) $$i $(libdir)/$$i ;    \
 	   $(INSTALL_PROGRAM) $(INSTALL_OPTS) $$i.tmp $(libdir)/$$i ; \
 	   $(RM) $$i.tmp; \
 	done
 else
 	for i in $(INSTALL_LIB_SCRIPTS); do \
-		$(INSTALL_PROGRAM) $(INSTALL_OPTS) $$i $(libdir); \
+		$(INSTALL_PROGRAM) $(INSTALL_OPTS) $$i $(libdir)/$$i ; \
 	done
 endif
 else
@@ -620,6 +630,8 @@ install:: $(INSTALL_LIBS)
 		  *.a) \
 		    $(INSTALL_DATA) $(INSTALL_OPTS) $$i $(libdir); \
 		    $(RANLIB) $(libdir)/`basename $$i` ;; \
+		  *.dll) \
+		    $(INSTALL_DATA) -s $(INSTALL_OPTS) $$i $(libdir) ;; \
 		  *) \
 		    $(INSTALL_DATA) $(INSTALL_OPTS) $$i $(libdir); \
 		esac; \
-- 
GitLab