#
# Makefile
#

#
# 
#
SHELL=sh
MAKE=make

SRCS=cmemory.c \
cstring.c \
cwchar.c \
icudataver.c \
locmap.c \
propsvec.c \
uarrsort.c \
ubidi.c \
ubidi_props.c \
ubidiln.c \
ubidiwrt.c \
ucat.c \
uchar.c \
ucmndata.c \
ucnv.c \
ucnv_cb.c \
ucnv_cnv.c \
ucnv_ct.c \
ucnv_err.c \
ucnv_lmb.c \
ucnv_set.c \
ucnv_u16.c \
ucnv_u32.c \
ucnv_u7.c \
ucnv_u8.c \
ucnvdisp.c \
ucnvhz.c \
ucnvisci.c \
ucnvlat1.c \
ucnvscsu.c \
udatamem.c \
udataswp.c \
uenum.c \
uhash.c \
uinvchar.c \
ulist.c \
uloc_tag.c \
umapfile.c \
umath.c \
ures_cnv.c \
uresdata.c \
usc_impl.c \
uscript.c \
uscript_props.cpp \
ustrfmt.c \
utf_impl.c \
utrace.c \
utypes.c \
wintz.c \
appendable.cpp \
bmpset.cpp \
brkeng.cpp \
brkiter.cpp \
bytestream.cpp \
bytestrie.cpp \
bytestriebuilder.cpp \
bytestrieiterator.cpp \
caniter.cpp \
chariter.cpp \
charstr.cpp \
dictbe.cpp \
dictionarydata.cpp \
dtintrv.cpp \
errorcode.cpp \
filterednormalizer2.cpp \
icuplug.cpp \
listformatter.cpp \
loadednormalizer2impl.cpp \
locavailable.cpp \
locbased.cpp \
locdispnames.cpp \
locid.cpp \
loclikely.cpp \
locresdata.cpp \
locutil.cpp \
messagepattern.cpp \
normalizer2.cpp \
normalizer2impl.cpp \
normlzr.cpp \
parsepos.cpp \
patternprops.cpp \
propname.cpp \
punycode.cpp \
putil.cpp \
rbbi.cpp \
rbbidata.cpp \
rbbinode.cpp \
rbbirb.cpp \
rbbiscan.cpp \
rbbisetb.cpp \
rbbistbl.cpp \
rbbitblb.cpp \
resbund.cpp \
resbund_cnv.cpp \
ruleiter.cpp \
schriter.cpp \
sharedobject.cpp \
serv.cpp \
servlk.cpp \
servlkf.cpp \
servls.cpp \
servnotf.cpp \
servrbf.cpp \
servslkf.cpp \
simplepatternformatter.cpp \
stringpiece.cpp \
stringtriebuilder.cpp \
ubrk.cpp \
ucase.cpp \
ucasemap.cpp \
ucasemap_titlecase_brkiter.cpp \
ucharstrie.cpp \
ucharstriebuilder.cpp \
ucharstrieiterator.cpp \
uchriter.cpp \
ucln_cmn.cpp \
ucnv2022.cpp \
ucnvmbcs.cpp \
ucnv_bld.cpp \
ucnv_ext.cpp \
ucnv_io.cpp \
ucnvbocu.cpp \
ucnvsel.cpp \
ucol_swp.cpp \
udata.cpp \
uhash_us.cpp \
uidna.cpp \
uinit.cpp \
uiter.cpp \
ulistformatter.cpp \
uloc.cpp \
uloc_keytype.cpp \
umutex.cpp \
unames.cpp \
unifiedcache.cpp \
unifilt.cpp \
unifunct.cpp \
uniset.cpp \
uniset_closure.cpp \
uniset_props.cpp \
unisetspan.cpp \
unistr.cpp \
unistr_case.cpp \
unistr_case_locale.cpp \
unistr_cnv.cpp \
unistr_props.cpp \
unistr_titlecase_brkiter.cpp \
unorm.cpp \
unormcmp.cpp \
uobject.cpp \
uprops.cpp \
uresbund.cpp \
uset.cpp \
uset_props.cpp \
usetiter.cpp \
ushape.cpp \
usprep.cpp \
ustack.cpp \
ustr_cnv.cpp \
ustr_titlecase_brkiter.cpp \
ustr_wcs.cpp \
ustrcase.cpp \
ustrcase_locale.cpp \
ustrenum.cpp \
ustring.cpp \
ustrtrns.cpp \
utext.cpp \
util.cpp \
util_props.cpp \
utrie.cpp \
utrie2.cpp \
utrie2_builder.cpp \
uts46.cpp \
uvector.cpp \
uvectr32.cpp \
uvectr64.cpp

OBJS= cmemory.obj \
cstring.obj \
cwchar.obj \
icudataver.obj \
icuplug.obj \
loadednormalizer2impl.obj \
locmap.obj \
propsvec.obj \
uarrsort.obj \
ubidi.obj \
ubidi_props.obj \
ubidiln.obj \
ubidiwrt.obj \
ucat.obj \
uchar.obj \
ucln_cmn.obj \
ucmndata.obj \
ucnv.obj \
ucnv_cb.obj \
ucnv_cnv.obj \
ucnv_ct.obj \
ucnv_err.obj \
ucnv_lmb.obj \
ucnv_set.obj \
ucnv_u16.obj \
ucnv_u32.obj \
ucnv_u7.obj \
ucnv_u8.obj \
ucnvdisp.obj \
ucnvhz.obj \
ucnvisci.obj \
ucnvlat1.obj \
ucnvmbcs.obj \
ucnvscsu.obj \
udatamem.obj \
udataswp.obj \
uenum.obj \
uhash.obj \
uinit.obj \
uinvchar.obj \
ulist.obj \
ulistformatter.obj \
uloc_keytype.obj \
uloc_tag.obj \
unifiedcache.obj \
umapfile.obj \
umath.obj \
ures_cnv.obj \
uresdata.obj \
usc_impl.obj \
uscript.obj \
uscript_props.obj \
ustr_cnv.obj \
ustrfmt.obj \
utf_impl.obj \
utrace.obj \
utypes.obj \
wintz.obj \
appendable.obj \
bmpset.obj \
brkeng.obj \
brkiter.obj \
bytestream.obj \
bytestrie.obj \
bytestriebuilder.obj \
bytestrieiterator.obj \
caniter.obj \
chariter.obj \
charstr.obj \
dictbe.obj \
dictionarydata.obj \
dtintrv.obj \
errorcode.obj \
filterednormalizer2.obj \
listformatter.obj \
locavailable.obj \
locbased.obj \
locdispnames.obj \
locid.obj \
loclikely.obj \
locresdata.obj \
locutil.obj \
messagepattern.obj \
normalizer2.obj \
normalizer2impl.obj \
normlzr.obj \
parsepos.obj \
patternprops.obj \
propname.obj \
punycode.obj \
putil.obj \
rbbi.obj \
rbbidata.obj \
rbbinode.obj \
rbbirb.obj \
rbbiscan.obj \
rbbisetb.obj \
rbbistbl.obj \
rbbitblb.obj \
resbund.obj \
resbund_cnv.obj \
ruleiter.obj \
schriter.obj \
sharedobject.obj \
serv.obj \
servlk.obj \
servlkf.obj \
servls.obj \
servnotf.obj \
servrbf.obj \
servslkf.obj \
simplepatternformatter.obj \
stringpiece.obj \
stringtriebuilder.obj \
ubrk.obj \
ucase.obj \
ucasemap.obj \
ucasemap_titlecase_brkiter.obj \
ucharstrie.obj \
ucharstriebuilder.obj \
ucharstrieiterator.obj \
uchriter.obj \
ucnv2022.obj \
ucnv_bld.obj \
ucnv_ext.obj \
ucnv_io.obj \
ucnvbocu.obj \
ucnvsel.obj \
ucol_swp.obj \
udata.obj \
uhash_us.obj \
uidna.obj \
uiter.obj \
uloc.obj \
umutex.obj \
unames.obj \
unifilt.obj \
unifunct.obj \
uniset.obj \
uniset_closure.obj \
uniset_props.obj \
unisetspan.obj \
unistr.obj \
unistr_case.obj \
unistr_case_locale.obj \
unistr_cnv.obj \
unistr_props.obj \
unistr_titlecase_brkiter.obj \
unorm.obj \
unormcmp.obj \
uobject.obj \
uprops.obj \
uresbund.obj \
uset.obj \
uset_props.obj \
usetiter.obj \
ushape.obj \
usprep.obj \
ustack.obj \
ustr_titlecase_brkiter.obj \
ustr_wcs.obj \
ustrcase.obj \
ustrcase_locale.obj \
ustrenum.obj \
ustring.obj \
ustrtrns.obj \
utext.obj \
util.obj \
util_props.obj \
utrie.obj \
utrie2.obj \
utrie2_builder.obj \
uts46.obj \
uvector.obj \
uvectr32.obj \
uvectr64.obj

.SUFFIXES: .c .cpp .obj .lib .dll .exp

CFLAGS=-nologo -MT -O2
INC=-I. -I.. -Iunicode -I../i18n
DEFS=-DU_COMMON_IMPLEMENTATION=1 -DWIN32=1 -DU_WINDOWS=1 -DICUFORXeTeX=1 \
-D_CRT_SECURE_NO_DEPRECATE=1 -DCYGWINMSVC=1

TGT=icuucommon.dll
TGTLIB=icuucommon.lib
TGTEXP=icuucommon.exp

LIBS=../../lib/icudt.lib advapi32.lib

.cpp.obj:
	cl $(CFLAGS) -EHsc -GR $(DEFS) $(INC) -c $<
.c.obj:
	cl $(CFLAGS) $(DEFS) $(INC) -c $<

#
#all: $(TGT)
#$(TGT): $(OBJS)
#	cl -LD -Fe$@ $(OBJS) $(LIBS)
#

all: $(TGTLIB)
$(TGTLIB): $(OBJS)
	lib -out:$@ $(OBJS)

#
#install: $(TGT) $(TGTLIB)
#	cp -p $(TGTLIB) ../../lib/
#	cp -p $(TGTEXP) ../../lib/
#	cp -p $(TGT) ../../bin/
#

install: $(TGTLIB)
	cp -p $(TGTLIB) ../../lib/

clean:
	rm -f *~ *.obj *.lib
