GOO_SRC = ../goo
FOFI_SRC = ../fofi
POPPLER_SRC = ../poppler

#
# release
#
OPTIMIZE=-O2

#
# debug
#
# OPTIMIZE=-Od -Zi

INCS = -I.. -I../goo -I../fofi -I../poppler -I../../../libpng \
-I../../../zlib -I../../../cairo/cairo-src/src

NDEFS = -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE \
-D_CRT_OBSOLETE_NO_DEPRECATE -D_SECURE_SCL=0 \
-Dpopen=win32_popen -Dpclose=win32_pclose

CPPFLAGS = -DWIN32=1 -DHAVE_CONFIG_H=1 $(NDEFS)
CXX = cl
CXXFLAGS = -GR -EHsc -MT $(OPTIMIZE) -nologo -wd4819 \
$(CPPFLAGS) $(INCS)
CC = cl
CFLAGS = -MT $(OPTIMIZE) -nologo -wd4819 \
$(CPPFLAGS) $(INCS)

poppler_libpoppler_a_objs = \
	$(POPPLER_SRC)/Annot.obj \
	$(POPPLER_SRC)/Array.obj \
	$(POPPLER_SRC)/BBoxOutputDev.obj \
	$(POPPLER_SRC)/CachedFile.obj \
	$(POPPLER_SRC)/Catalog.obj \
	$(POPPLER_SRC)/CertificateInfo.obj \
	$(POPPLER_SRC)/CharCodeToUnicode.obj \
	$(POPPLER_SRC)/CMap.obj \
	$(POPPLER_SRC)/DateInfo.obj \
	$(POPPLER_SRC)/Decrypt.obj \
	$(POPPLER_SRC)/Dict.obj \
	$(POPPLER_SRC)/Error.obj \
	$(POPPLER_SRC)/FileSpec.obj \
	$(POPPLER_SRC)/FlateEncoder.obj \
	$(POPPLER_SRC)/FlateStream.obj \
	$(POPPLER_SRC)/FontEncodingTables.obj \
	$(POPPLER_SRC)/Form.obj \
	$(POPPLER_SRC)/FontInfo.obj \
	$(POPPLER_SRC)/Function.obj \
	$(POPPLER_SRC)/Gfx.obj \
	$(POPPLER_SRC)/GfxFont.obj \
	$(POPPLER_SRC)/GfxState.obj \
	$(POPPLER_SRC)/GlobalParams.obj \
	$(POPPLER_SRC)/Hints.obj \
	$(POPPLER_SRC)/JArithmeticDecoder.obj \
	$(POPPLER_SRC)/JBIG2Stream.obj \
	$(POPPLER_SRC)/JPXStream.obj \
	$(POPPLER_SRC)/JSInfo.obj \
	$(POPPLER_SRC)/Lexer.obj \
	$(POPPLER_SRC)/Linearization.obj \
	$(POPPLER_SRC)/Link.obj \
	$(POPPLER_SRC)/LocalPDFDocBuilder.obj \
	$(POPPLER_SRC)/MarkedContentOutputDev.obj \
	$(POPPLER_SRC)/Movie.obj \
	$(POPPLER_SRC)/NameToCharCode.obj \
	$(POPPLER_SRC)/Object.obj \
	$(POPPLER_SRC)/OptionalContent.obj \
	$(POPPLER_SRC)/Outline.obj \
	$(POPPLER_SRC)/OutputDev.obj \
	$(POPPLER_SRC)/Page.obj \
	$(POPPLER_SRC)/PageTransition.obj \
	$(POPPLER_SRC)/Parser.obj \
	$(POPPLER_SRC)/PDFDoc.obj \
	$(POPPLER_SRC)/PDFDocBuilder.obj \
	$(POPPLER_SRC)/PDFDocEncoding.obj \
	$(POPPLER_SRC)/PDFDocFactory.obj \
	$(POPPLER_SRC)/ProfileData.obj \
	$(POPPLER_SRC)/PreScanOutputDev.obj \
	$(POPPLER_SRC)/PSTokenizer.obj \
	$(POPPLER_SRC)/Rendition.obj \
	$(POPPLER_SRC)/SignatureInfo.obj \
	$(POPPLER_SRC)/StdinCachedFile.obj \
	$(POPPLER_SRC)/StdinPDFDocBuilder.obj \
	$(POPPLER_SRC)/Stream.obj \
	$(POPPLER_SRC)/StructElement.obj \
	$(POPPLER_SRC)/StructTreeRoot.obj \
	$(POPPLER_SRC)/UnicodeMap.obj \
	$(POPPLER_SRC)/UnicodeMapFuncs.obj \
	$(POPPLER_SRC)/UnicodeTypeTable.obj \
	$(POPPLER_SRC)/UTF.obj \
	$(POPPLER_SRC)/XRef.obj \
	$(POPPLER_SRC)/TextOutputDev.obj \
	$(POPPLER_SRC)/PageLabelInfo.obj \
	$(POPPLER_SRC)/SecurityHandler.obj \
	$(POPPLER_SRC)/Sound.obj \
	$(POPPLER_SRC)/ViewerPreferences.obj \
	$(POPPLER_SRC)/CourierBoldObliqueWidths.pregenerated.obj \
	$(POPPLER_SRC)/CourierBoldWidths.pregenerated.obj \
	$(POPPLER_SRC)/CourierObliqueWidths.pregenerated.obj \
	$(POPPLER_SRC)/CourierWidths.pregenerated.obj \
	$(POPPLER_SRC)/HelveticaBoldObliqueWidths.pregenerated.obj \
	$(POPPLER_SRC)/HelveticaBoldWidths.pregenerated.obj \
	$(POPPLER_SRC)/HelveticaObliqueWidths.pregenerated.obj \
	$(POPPLER_SRC)/HelveticaWidths.pregenerated.obj \
	$(POPPLER_SRC)/SymbolWidths.pregenerated.obj \
	$(POPPLER_SRC)/TimesBoldItalicWidths.pregenerated.obj \
	$(POPPLER_SRC)/TimesBoldWidths.pregenerated.obj \
	$(POPPLER_SRC)/TimesItalicWidths.pregenerated.obj \
	$(POPPLER_SRC)/TimesRomanWidths.pregenerated.obj \
	$(POPPLER_SRC)/ZapfDingbatsWidths.pregenerated.obj

poppler_libpoppler_a_sources = \
	$(POPPLER_SRC)/Annot.cc \
	$(POPPLER_SRC)/Array.cc \
	$(POPPLER_SRC)/BBoxOutputDev.cc \
	$(POPPLER_SRC)/CachedFile.cc \
	$(POPPLER_SRC)/Catalog.cc \
	$(POPPLER_SRC)/CertificateInfo.cc \
	$(POPPLER_SRC)/CharCodeToUnicode.cc \
	$(POPPLER_SRC)/CMap.cc \
	$(POPPLER_SRC)/DateInfo.cc \
	$(POPPLER_SRC)/Decrypt.cc \
	$(POPPLER_SRC)/Dict.cc \
	$(POPPLER_SRC)/Error.cc \
	$(POPPLER_SRC)/FileSpec.cc \
	$(POPPLER_SRC)/FlateEncoder.cc \
	$(POPPLER_SRC)/FlateStream.cc \
	$(POPPLER_SRC)/FontEncodingTables.cc \
	$(POPPLER_SRC)/Form.cc \
	$(POPPLER_SRC)/FontInfo.cc \
	$(POPPLER_SRC)/Function.cc \
	$(POPPLER_SRC)/Gfx.cc \
	$(POPPLER_SRC)/GfxFont.cc \
	$(POPPLER_SRC)/GfxState.cc \
	$(POPPLER_SRC)/GlobalParams.cc \
	$(POPPLER_SRC)/Hints.cc \
	$(POPPLER_SRC)/JArithmeticDecoder.cc \
	$(POPPLER_SRC)/JBIG2Stream.cc \
	$(POPPLER_SRC)/JPXStream.cc \
	$(POPPLER_SRC)/JSInfo.cc \
	$(POPPLER_SRC)/Lexer.cc \
	$(POPPLER_SRC)/Linearization.cc \
	$(POPPLER_SRC)/Link.cc \
	$(POPPLER_SRC)/LocalPDFDocBuilder.cc \
	$(POPPLER_SRC)/MarkedContentOutputDev.cc \
	$(POPPLER_SRC)/Movie.cc \
	$(POPPLER_SRC)/NameToCharCode.cc \
	$(POPPLER_SRC)/Object.cc \
	$(POPPLER_SRC)/OptionalContent.cc \
	$(POPPLER_SRC)/Outline.cc \
	$(POPPLER_SRC)/OutputDev.cc \
	$(POPPLER_SRC)/Page.cc \
	$(POPPLER_SRC)/PageTransition.cc \
	$(POPPLER_SRC)/Parser.cc \
	$(POPPLER_SRC)/PDFDoc.cc \
	$(POPPLER_SRC)/PDFDocBuilder.cc \
	$(POPPLER_SRC)/PDFDocEncoding.cc \
	$(POPPLER_SRC)/PDFDocFactory.cc \
	$(POPPLER_SRC)/ProfileData.cc \
	$(POPPLER_SRC)/PreScanOutputDev.cc \
	$(POPPLER_SRC)/PSTokenizer.cc \
	$(POPPLER_SRC)/Rendition.cc \
	$(POPPLER_SRC)/SignatureInfo.cc \
	$(POPPLER_SRC)/StdinCachedFile.cc \
	$(POPPLER_SRC)/StdinPDFDocBuilder.cc \
	$(POPPLER_SRC)/Stream.cc \
	$(POPPLER_SRC)/StructElement.cc \
	$(POPPLER_SRC)/StructTreeRoot.cc \
	$(POPPLER_SRC)/UnicodeMap.cc \
	$(POPPLER_SRC)/UnicodeMapFuncs.cc \
	$(POPPLER_SRC)/UnicodeTypeTable.cc \
	$(POPPLER_SRC)/UTF.cc \
	$(POPPLER_SRC)/XRef.cc \
	$(POPPLER_SRC)/TextOutputDev.cc \
	$(POPPLER_SRC)/PageLabelInfo.h \
	$(POPPLER_SRC)/PageLabelInfo.cc \
	$(POPPLER_SRC)/SecurityHandler.cc \
	$(POPPLER_SRC)/Sound.cc \
	$(POPPLER_SRC)/ViewerPreferences.cc \
	$(POPPLER_SRC)/CourierBoldObliqueWidths.pregenerated.c \
	$(POPPLER_SRC)/CourierBoldWidths.pregenerated.c \
	$(POPPLER_SRC)/CourierObliqueWidths.pregenerated.c \
	$(POPPLER_SRC)/CourierWidths.pregenerated.c \
	$(POPPLER_SRC)/HelveticaBoldObliqueWidths.pregenerated.c \
	$(POPPLER_SRC)/HelveticaBoldWidths.pregenerated.c \
	$(POPPLER_SRC)/HelveticaObliqueWidths.pregenerated.c \
	$(POPPLER_SRC)/HelveticaWidths.pregenerated.c \
	$(POPPLER_SRC)/SymbolWidths.pregenerated.c \
	$(POPPLER_SRC)/TimesBoldItalicWidths.pregenerated.c \
	$(POPPLER_SRC)/TimesBoldWidths.pregenerated.c \
	$(POPPLER_SRC)/TimesItalicWidths.pregenerated.c \
	$(POPPLER_SRC)/TimesRomanWidths.pregenerated.c \
	$(POPPLER_SRC)/ZapfDingbatsWidths.pregenerated.c

all: $(poppler_libpoppler_a_objs)
	touch all

clean:
	rm -f *.obj *~

$(poppler_libpoppler_a_objs): $(poppler_libpoppler_a_soures)

.SUFFIXES: .cc .obj .cpp .c

.c.obj:
	$(CC) $(CFLAGS) -c $<

.cc.obj:
	$(CXX) $(CXXFLAGS) -c -TP $<

.cpp.obj:
	$(CXX) $(CXXFLAGS) -c -TP $<
