"Sigbjorne Finne (Intl Vendor)" wrote: > Hi, > > if you compile the contents of lib/ with FOR_HUGS > set to YES, you shouldn't run into either of these, e.g., > > sof$ make FOR_HUGS=YES AddrBits.hs > ../src/ihc -fno-qualified-names --hugs -fno-imports\ > -fint-is-int -c AddrBits.idl -o AddrBits.hs > sof$ grep HDirect AddrBits.hs > sof$ > > That said, there are no Makefile rules for building > the dynamic libraries containing the Hugs primitives > other than in the Win32 case. If someone could > contribute these, I'd be more than happy to > integrate them ;) For what it's worth, here are the patches that I applied to a recent (couple of month old, out of CVS) version of H/Direct to get it to build on linux. I haven't tried these one the current release. --Jeff
*** fptools.orig/hdirect/lib/Makefile Fri Jul 23 03:55:05 1999 --- fptools/hdirect/lib/Makefile Mon Aug 2 10:35:10 1999 *************** *** 5,10 **** --- 5,11 ---- # FOR_HUGS = NO + dll = so all :: *************** *** 68,75 **** --- 69,81 ---- HS_SRCS += $(COMLIB_HS_SRCS) endif + ifeq "$(BUILD_COMLIBS)" "NO" + IDL_SRCS = $(filter-out AutoPrim.idl ComPrim.idl Connection.idl SafeArray.idl +TypeLib.idl WideString.idl, $(wildcard *.idl)) + else IDL_SRCS = $(wildcard *.idl) + endif #IDL_SRCS = $(filter-out TypeLib.idl, $(wildcard *.idl)) + IDL_DLLS = $(filter-out StdTypes.idl, $(IDL_SRCS)) # # Only support building of server-modules under mingw32 at the moment, *************** *** 125,131 **** INSTALL_DATAS = $(HS_IFACES) $(SRCS) ! OBJS += $(patsubst %.idl, %.o, $(IDL_SRCS)) LIBCOM_OBJS += $(filter-out PointerSrc.o AddrBits.o, $(OBJS)) PointerSrcCom.o LIBHD_OBJS = HDirect.o PointerSrc.o PointerPrim.o Pointer.o --- 131,137 ---- INSTALL_DATAS = $(HS_IFACES) $(SRCS) ! OBJS += $(patsubst %.idl, %.o, $(IDL_DLLS)) LIBCOM_OBJS += $(filter-out PointerSrc.o AddrBits.o, $(OBJS)) PointerSrcCom.o LIBHD_OBJS = HDirect.o PointerSrc.o PointerPrim.o Pointer.o *************** *** 141,147 **** endif ifeq "$(FOR_HUGS)" "YES" ! all :: $(patsubst %.idl, %.hs, $(IDL_SRCS)) all :: dlls --- 147,153 ---- endif ifeq "$(FOR_HUGS)" "YES" ! all :: $(patsubst %.idl, %.hhs, $(IDL_SRCS)) all :: dlls *************** *** 156,169 **** %.hi : %.lhs @: AddrBits.c : AddrBits.hs PointerPrim.c : PointerPrim.hs ! AddrBits.dll : AddrBits.dll_o ! AddrBits.dll : AddrBitsPrim.dll_o WideString.c : WideString.hs ! C_STUBS = $(patsubst %.idl, %.c, $(IDL_SRCS)) HS_SRCS:= --- 162,178 ---- %.hi : %.lhs @: + %.hhs : %.hs + mv $< $@ + AddrBits.c : AddrBits.hs PointerPrim.c : PointerPrim.hs ! AddrBits.${dll} : AddrBits.dll_o ! AddrBits.${dll} : AddrBitsPrim.dll_o WideString.c : WideString.hs ! C_STUBS = $(patsubst %.idl, %.c, $(IDL_DLLS)) HS_SRCS:= *************** *** 175,187 **** @$(RM) $@ $(CC) $(CC_OPTS) -DCOM -c $< -o $@ ! AddrBits.dll : AddrBits.dll_o AddrBitsPrim.dll_o ! AutoPrim.dll : AutoPrimSrc.dll_o AutoPrim.dll_o PointerSrcCom.dll_o ComPrimSrc.dll_o ! ComPrim.dll : ComPrim.dll_o ComPrimSrc.dll_o PointerSrcCom.dll_o ! PointerPrim.dll : PointerPrim.dll_o PointerSrcCom.dll_o ! SafeArray.dll : SafeArray.dll_o ! StdTypes.dll : StdTypes.dll_o ! WideString.dll : WideString.dll_o WideStringSrc.dll_o .PRECIOUS: %.dll_o --- 184,206 ---- @$(RM) $@ $(CC) $(CC_OPTS) -DCOM -c $< -o $@ ! AddrBits.${dll} : AddrBits.dll_o AddrBitsPrim.dll_o ! AutoPrim.${dll} : AutoPrimSrc.dll_o AutoPrim.dll_o ! ifeq "$(BUILD_COMLIBS)" "NO" ! AutoPrim.${dll} : PointerSrc.dll_o ! else ! AutoPrim.${dll} : PointerSrcCom.dll_o ComPrimSrc.dll_o ! endif ! ComPrim.${dll} : ComPrim.dll_o ComPrimSrc.dll_o PointerSrcCom.dll_o ! PointerPrim.${dll} : PointerPrim.dll_o ! ifeq "$(BUILD_COMLIBS)" "NO" ! PointerPrim.${dll} : PointerSrc.dll_o ! else ! PointerPrim.${dll} : PointerSrcCom.dll_o ! endif ! SafeArray.${dll} : SafeArray.dll_o ! StdTypes.${dll} : StdTypes.dll_o ! WideString.${dll} : WideString.dll_o WideStringSrc.dll_o .PRECIOUS: %.dll_o *************** *** 189,198 **** @echo EXPORTS > $@ @echo initModule >> $@ ! %.dll : %.dll_o $(CCDLL) $(CCDLL_OPTS) -o $@ $^ $(CCDLL_LIBS) ! dlls :: $(patsubst %.idl, %.dll, $(IDL_SRCS)) endif # End of Hugs specific bit --- 208,217 ---- @echo EXPORTS > $@ @echo initModule >> $@ ! %.${dll} : %.dll_o $(CCDLL) $(CCDLL_OPTS) -o $@ $^ $(CCDLL_LIBS) ! dlls :: $(patsubst %.idl, %.${dll}, $(IDL_DLLS)) endif # End of Hugs specific bit