X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=ghc%2Flib%2Fmisc%2Fcbits%2FMakefile;h=53ba251a839ccd9320ceae57a66b8b3a86bc793e;hb=ef33ed94129ee17b577add392e04619ec1f53800;hp=be6601f20046494b173df98b97ba36bae09e6431;hpb=198ab6464e41d449a96d3b2b914ccf1d91e5df17;p=ghc-hetmet.git diff --git a/ghc/lib/misc/cbits/Makefile b/ghc/lib/misc/cbits/Makefile index be6601f..53ba251 100644 --- a/ghc/lib/misc/cbits/Makefile +++ b/ghc/lib/misc/cbits/Makefile @@ -3,9 +3,14 @@ # TOP=../../.. include $(TOP)/mk/boilerplate.mk + +ifeq "$(filter dll,$(WAYS))" "dll" +override WAYS=dll +else override WAYS= +endif -CC:=$(HC) +CC:=$(GHC) C_SRCS=$(wildcard *.c) @@ -14,11 +19,32 @@ ifneq "$(HAVE_READLINE)" "YES" C_SRCS := $(filter-out ghcReadline.c,$(C_SRCS)) endif +ifeq "$(EnableWin32DLLs)" "YES" + C_SRCS := $(filter-out selectFrom.c,$(C_SRCS)) +endif + +ifneq "$(way)" "dll" +SRC_CC_OPTS += -static +endif + SRC_MKDEPENDC_OPTS += -I$(GHC_INCLUDE_DIR) -SRC_CC_OPTS += -I$(GHC_INCLUDE_DIR) +SRC_CC_OPTS += -I$(GHC_INCLUDE_DIR) -I$(GHC_LIB_DIR)/std/cbits -LIBRARY=libHSmisc_cbits.a +LIBRARY=libHSmisc_cbits$(_way).a LIBOBJS=$(C_OBJS) INSTALL_LIBS += $(LIBRARY) +DLL_NAME = HSmisc_cbits.dll +SRC_BLD_DLL_OPTS += --export-all --output-def=HSmisc_cbits.def DllVersionInfo.o +SRC_BLD_DLL_OPTS += -lwinmm -lwsock32 -lHSrts_imp -lHScbits_imp -lgmp -L. -L../../../rts/gmp -L../../../rts -L../../std/cbits + +ifeq "$(way)" "dll" +all :: DllVersionInfo.o +endif + +ifeq "$(EnableWin32DLLs)" "YES" +INSTALL_PROGS += $(DLL_NAME) +INSTALL_LIBS += $(patsubst %.a, %_imp.a, $(LIBRARY)) +endif + include $(TOP)/mk/target.mk