#
# Makefile
#
SHELL=sh
MAKE=make
OPTIMIZE = -O2

OBJS = alphaindex.obj \
anytrans.obj \
astro.obj \
basictz.obj \
bocsu.obj \
brktrans.obj \
buddhcal.obj \
calendar.obj \
casetrn.obj \
cecal.obj \
chnsecal.obj \
choicfmt.obj \
coleitr.obj \
coll.obj \
collation.obj \
collationbuilder.obj \
collationcompare.obj \
collationdata.obj \
collationdatabuilder.obj \
collationdatareader.obj \
collationdatawriter.obj \
collationfastlatin.obj \
collationfastlatinbuilder.obj \
collationfcd.obj \
collationiterator.obj \
collationkeys.obj \
collationroot.obj \
collationrootelements.obj \
collationruleparser.obj \
collationsets.obj \
collationsettings.obj \
collationtailoring.obj \
collationweights.obj \
compactdecimalformat.obj \
coptccal.obj \
cpdtrans.obj \
csdetect.obj \
csmatch.obj \
csr2022.obj \
csrecog.obj \
csrmbcs.obj \
csrsbcs.obj \
csrucode.obj \
csrutf8.obj \
curramt.obj \
currfmt.obj \
currpinf.obj \
currunit.obj \
dangical.obj \
datefmt.obj \
dayperiodrules.obj \
dcfmtsym.obj \
decContext.obj \
decNumber.obj \
decimfmt.obj \
displayoptions.obj \
double-conversion-bignum-dtoa.obj \
double-conversion-bignum.obj \
double-conversion-cached-powers.obj \
double-conversion-double-to-string.obj \
double-conversion-fast-dtoa.obj \
double-conversion-string-to-double.obj \
double-conversion-strtod.obj \
dtfmtsym.obj \
dtitvfmt.obj \
dtitvinf.obj \
dtptngen.obj \
dtrule.obj \
erarules.obj \
esctrn.obj \
ethpccal.obj \
fmtable.obj \
fmtable_cnv.obj \
format.obj \
formatted_string_builder.obj \
formattedvalue.obj \
formattedval_iterimpl.obj \
formattedval_sbimpl.obj \
fphdlimp.obj \
fpositer.obj \
funcrepl.obj \
gender.obj \
gregocal.obj \
gregoimp.obj \
hebrwcal.obj \
indiancal.obj \
inputext.obj \
islamcal.obj \
iso8601cal.obj \
japancal.obj \
listformatter.obj \
measfmt.obj \
measunit.obj \
measunit_extra.obj \
measure.obj \
msgfmt.obj \
messageformat2.obj \
messageformat2_arguments.obj \
messageformat2_checker.obj \
messageformat2_data_model.obj \
messageformat2_errors.obj \
messageformat2_evaluation.obj \
messageformat2_formattable.obj \
messageformat2_formatter.obj \
messageformat2_function_registry.obj \
messageformat2_parser.obj \
messageformat2_serializer.obj \
name2uni.obj \
nfrs.obj \
nfrule.obj \
nfsubs.obj \
nortrans.obj \
nultrans.obj \
number_affixutils.obj \
number_asformat.obj \
number_capi.obj \
number_compact.obj \
number_currencysymbols.obj \
number_decimalquantity.obj \
number_decimfmtprops.obj \
number_fluent.obj \
number_formatimpl.obj \
number_grouping.obj \
number_integerwidth.obj \
number_longnames.obj \
number_mapper.obj \
number_modifiers.obj \
number_multiplier.obj \
number_notation.obj \
number_output.obj \
number_padding.obj \
number_patternmodifier.obj \
number_patternstring.obj \
number_rounding.obj \
number_scientific.obj \
number_simple.obj \
number_skeletons.obj \
number_symbolswrapper.obj \
number_usageprefs.obj \
number_utils.obj \
numfmt.obj \
numparse_affixes.obj \
numparse_compositions.obj \
numparse_currency.obj \
numparse_decimal.obj \
numparse_impl.obj \
numparse_parsednumber.obj \
numparse_scientific.obj \
numparse_symbols.obj \
numparse_validators.obj \
numrange_capi.obj \
numrange_fluent.obj \
numrange_impl.obj \
numsys.obj \
olsontz.obj \
persncal.obj \
pluralranges.obj \
plurfmt.obj \
plurrule.obj \
quant.obj \
quantityformatter.obj \
rbnf.obj \
rbt.obj \
rbt_data.obj \
rbt_pars.obj \
rbt_rule.obj \
rbt_set.obj \
rbtz.obj \
regexcmp.obj \
regeximp.obj \
regexst.obj \
regextxt.obj \
region.obj \
reldatefmt.obj \
reldtfmt.obj \
rematch.obj \
remtrans.obj \
repattrn.obj \
rulebasedcollator.obj \
scientificnumberformatter.obj \
scriptset.obj \
search.obj \
selfmt.obj \
sharedbreakiterator.obj \
simpletz.obj \
smpdtfmt.obj \
smpdtfst.obj \
sortkey.obj \
standardplural.obj \
string_segment.obj \
strmatch.obj \
strrepl.obj \
stsearch.obj \
taiwncal.obj \
timezone.obj \
titletrn.obj \
tmunit.obj \
tmutamt.obj \
tmutfmt.obj \
tolowtrn.obj \
toupptrn.obj \
translit.obj \
transreg.obj \
tridpars.obj \
tzfmt.obj \
tzgnames.obj \
tznames.obj \
tznames_impl.obj \
tzrule.obj \
tztrans.obj \
ucal.obj \
ucln_in.obj \
ucol.obj \
ucol_res.obj \
ucol_sit.obj \
ucoleitr.obj \
ucsdet.obj \
udat.obj \
udateintervalformat.obj \
udatpg.obj \
ufieldpositer.obj \
uitercollationiterator.obj \
ulistformatter.obj \
ulocdata.obj \
umsg.obj \
unesctrn.obj \
uni2name.obj \
units_complexconverter.obj \
units_converter.obj \
units_data.obj \
units_router.obj \
unum.obj \
unumsys.obj \
upluralrules.obj \
uregex.obj \
uregexc.obj \
uregion.obj \
usearch.obj \
uspoof.obj \
uspoof_build.obj \
uspoof_conf.obj \
uspoof_impl.obj \
utf16collationiterator.obj \
utf8collationiterator.obj \
utmscale.obj \
utrans.obj \
vtzone.obj \
vzone.obj \
windtfmt.obj \
winnmfmt.obj \
wintzimpl.obj \
zonemeta.obj \
zrule.obj \
ztrans.obj

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

CFLAGS=-nologo -favor:blend -utf-8 -wd4229 -wd4661 -MT -EHsc \
$(OPTIMIZE)

INC=-I. -I.. -I../common -I../common/unicode

DEFS=-DU_I18N_IMPLEMENTATION=1 -DWIN32=1 -DU_WINDOWS=1 \
-DICUFORXeTeX=1 -D_CRT_SECURE_NO_DEPRECATE=1

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

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

.cpp.obj:
	cl $(CFLAGS) -std:c++17 -GR $(DEFS) $(INC) -TP -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
