#############################################################################
#
# The make process relies on the creation of DLL and library response file  #
# creation.  To control the location of object modules the following should #
# be defined:                                                               #
#                                                                           #
#     IMPOBJS - A list of object modules that should appear in the DLL      #
#               import library.                                             #
#                                                                           #
#        OBJS - If a DLL is build, this is a list of the object modules     #
#               that are linked into the DLL.  If building a library, this  #
#               is the list of object modules that goes into the library.   #
#                                                                           #
# The building of miscellaneous object modules and libraries is controlled  #
# by the list of files in the MISC variable.                                #
#                                                                           #
#############################################################################

#############################################################################
# Build the object module lists.                                            #
#############################################################################
OBJS =               \
	collate.obj  \
	_strcoll.obj \
	_strxfrm.obj \
	lconv.obj    \
	locale.obj   \
	lsetlocl.obj \
	lstrcoll.obj \
	lstrftim.obj \
	lstrxfrm.obj \
	ltolower.obj \
	ltoupper.obj \
	setlocal.obj \
	strftime.obj \
	_setbll.obj  \
	_setcoll.obj \
	_setudef.obj \
	_setxfrm.obj \
	ftoupper.obj \
	ftolower.obj \
	fstrlwr.obj  \
	fstrupr.obj  \
	lstrlwr.obj  \
	lstrupr.obj  \
	mbyte1.obj   \
	strlwr.obj   \
	strupr.obj   \

AUXOBJS =            \
	cconv.obj    \
	clocale.obj  \
	clower.obj   \
	ctype.obj    \
	cupper.obj   \
	strcoll.obj  \
	strxfrm.obj  \
	tolower.obj  \
	is.obj       \
	toupper.obj

!if $d(DLL)
    IMPOBJS = $(AUXOBJS)
!else
    OBJS    = $(AUXOBJS) $(OBJS)
!endif

#############################################################################
# Configure the environment appropriately.                                  #
#############################################################################
TASMCFG = 1        # Force tasm.cfg creation

!include rules.mak

#############################################################################
# Miscellaneous explicit rules.                                             #
#############################################################################
!if $(MODEL) == h
    COMPILE = $(CC) -mh -D__FARFUNCS__ -o$<
!else
    COMPILE = $(CC) -ml -D__FARFUNCS__ -o$<
!endif

fstrlwr.obj : strlwr.cas
	$(COMPILE) $?

fstrupr.obj : strupr.cas
	$(COMPILE) $?

ftoupper.obj : toupper.c
	$(COMPILE) $?

ftolower.obj : tolower.c
	$(COMPILE) $?
