packages feed

hdirect-0.21.0: mk/paths.mk

#
# H/Direct specific paths and settings.
#
# Currently just controlling the invocation of
# of ihc/hdirect itself.
#

ifndef IHC
IHC = $(TOP)/src/ihc
endif

#
# HDirect documentation uses sgmltools, which
# is no longer used for fptools/, so provide defns
# of the misc tools we're using from that package.
# (see suffix.mk for .sgml -> ?? rules)
#
ifndef SGMLVERB
SGMLVERB = sgmlverb
endif

ifndef SGML2LATEX
SGML2LATEX = sgml2latex
endif

ifndef SGML2HTML
SGML2HTML = sgml2html
endif

ifndef SGML2INFO
SGML2INFO = sgml2info
endif

ifndef SGML2TXT
SGML2TXT = sgml2txt
endif

ifndef CP
CP=cp
endif

IDL_SRCS=$(filter %.idl,$(SRCS) $(BOOT_SRCS))
IDL_OBJS=$(addsuffix .hs,$(basename $(IDL_SRCS)))

ifeq "$(STANDALONE_DIST)" "YES"
SRCS=$(wildcard *.lhs *.hs *.c *.lc *.prl *.lprl *.lit *.verb)

HS_SRCS=$(filter %.lhs %.hs %.hc,$(SRCS) $(BOOT_SRCS))
HS_OBJS=$(addsuffix .$(way_)o,$(basename $(HS_SRCS)))
HS_IFACES=$(addsuffix .$(way_)hi,$(basename $(HS_SRCS)))

C_SRCS=$(filter %.lc %.c,$(SRCS))
C_OBJS=$(addsuffix .$(way_)o,$(basename $(C_SRCS)))

OBJS=$(HS_OBJS) $(C_OBJS) $(SCRIPT_OBJS)

MKDEPENDHS_SRCS=$(HS_SRCS)
MKDEPENDC_SRCS=$(C_SRCS)

MOSTLY_CLEAN_FILES     += $(HS_OBJS) $(C_OBJS)
CLEAN_FILES            += $(HS_PROG) $(C_PROG) $(SCRIPT_PROG) $(PROG) $(LIBRARY) \
			  $(HS_IFACES) \
			  a.out core

endif

#
# The default is to use dllwrap and gcc to compile up
# the Hugs stubs. Should you want to use MSVC++ tools instead,
# you need to set USE_MSVC_TOOLS to ... YES.
#
ifeq "$(USE_MSVC_TOOLS)" "YES"
CCDLL=cl
CCDLL_OPTS=/Zi /LD /MD /I.
#SRC_CC_OPTS += /LD /MD
CCDLL_LIBS=ole32.lib oleaut32.lib uuid.lib advapi32.lib user32.lib winmm.lib urlmon.lib msvcrt.lib
#CC:=cl
STUB_OBJ_SUFFIX=obj
else
ifeq "$(FOR_WIN32)" "YES"
CCDLL=dllwrap 
CCDLL_OPTS += --def HugsMod.def
CCDLL_OPTS += -mno-cygwin --target=i386-mingw32
CCDLL_LIBS += -loleaut32 -lole32 -luser32
CLEAN_FILES += $(wildcard *.dll_o *.dll)
else
#
# Producing a .so file.
#
CCDLL=gcc
CCDLL_OPTS=-fPIC -shared -nostdlib
CLEAN_FILES += $(wildcard *.dll_o *.so)
endif
STUB_OBJ_SUFFIX=dll_o
endif

#
# File extensions for executables and DLLs. The current assumption is that
# anything non-Win32, uses the .so extension. Tweak to fit if that's
# not the case on your plat.
#
ifeq "$(FOR_WIN32)" "YES"
exeext=.exe
dllext=dll
else
dllext=so
endif