From: Ben.Lippmeier@anu.edu.au Date: Tue, 10 Nov 2009 05:12:57 +0000 (+0000) Subject: Add autoconf code to locate dlltool on Windows X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=commitdiff_plain;h=e60ef3d0da7e37e7b18088b42925e60b1b47a29e Add autoconf code to locate dlltool on Windows --- diff --git a/configure.ac b/configure.ac index 0af10c1..22801c9 100644 --- a/configure.ac +++ b/configure.ac @@ -428,6 +428,21 @@ FP_ARG_WITH_PATH_GNU_PROG([LD], [ld]) LdCmd="$LD" AC_SUBST([LdCmd]) +dnl ** Check for dlltool on Windows +dnl -------------------------------------------------------------- +case $HostOS_CPP in +cygwin32|mingw32) + AC_PATH_PROG(DlltoolCmd,dlltool) + if test -z "$DlltoolCmd"; then + echo "Can't find dlltool in your path, can't make DLLs." + exit 1 + fi + ;; +*) + AC_SUBST(DlltoolCmd,"") + ;; +esac + dnl ** Which nm to use? dnl -------------------------------------------------------------- FP_ARG_WITH_PATH_GNU_PROG([NM], [nm]) diff --git a/mk/config.mk.in b/mk/config.mk.in index 36dd2d3..4431dd8 100644 --- a/mk/config.mk.in +++ b/mk/config.mk.in @@ -550,6 +550,7 @@ SRC_HSC2HS_OPTS += $(foreach d,$(GMP_INCLUDE_DIRS),-I$(d)) # Mingwex Library # HaveLibMingwEx = @HaveLibMingwEx@ +DLLTOOL = @DlltoolCmd@ #----------------------------------------------------------------------------- # Flex (currently unused, could be moved to glafp-utils) diff --git a/rts/ghc.mk b/rts/ghc.mk index 220103d..a4c31d8 100644 --- a/rts/ghc.mk +++ b/rts/ghc.mk @@ -118,7 +118,7 @@ ifneq "$$(findstring dyn, $1)" "" $$(rts_$1_LIB) : $$(rts_$1_OBJS) rts/libs.depend "$$(RM)" $$(RM_OPTS) $$@ ifeq "$(HOSTPLATFORM)" "i386-unknown-mingw32" - dlltool -d rts/win32/libHSbase.def -l rts/dist/build/win32/libHSbase.so.a + "$$(DLLTOOL)" -d rts/win32/libHSbase.def -l rts/dist/build/win32/libHSbase.so.a "$$(rts_dist_HC)" -shared -dynamic -dynload deploy \ -no-auto-link-packages `cat rts/libs.depend` $$(rts_$1_OBJS) rts/dist/build/win32/libHSbase.so.a -o $$@ else