Makefile revision 1.20
1#	$NetBSD: Makefile,v 1.20 2017/08/29 09:02:10 mrg Exp $
2
3.include <bsd.own.mk>
4
5LIB=	fontconfig
6
7.PATH:	${X11SRCDIR.${LIB}}/src
8SRCS=	fcatomic.c \
9	fcblanks.c \
10	fccache.c \
11	fccfg.c \
12	fccharset.c \
13	fccompat.c \
14	fcdbg.c \
15	fcdefault.c \
16	fcdir.c \
17	fcformat.c \
18	fcfreetype.c \
19	fcfs.c \
20	fcinit.c \
21	fclang.c \
22	fclist.c \
23	fcmatch.c \
24	fcmatrix.c \
25	fcname.c \
26	fcobjs.c \
27	fcpat.c \
28	fcrange.c \
29	fcserialize.c \
30	fcstat.c \
31	fcstr.c \
32	fcweight.c \
33	fcxml.c \
34	ftglue.c
35
36.PATH:	${X11SRCDIR.${LIB}}/doc
37MAN=	FcAtomicCreate.3 FcAtomicDeleteNew.3 FcAtomicDestroy.3 FcAtomicLock.3 \
38	FcAtomicNewFile.3 FcAtomicOrigFile.3 FcAtomicReplaceOrig.3 \
39	FcAtomicUnlock.3 FcBlanksAdd.3 FcBlanksCreate.3 FcBlanksDestroy.3 \
40	FcBlanksIsMember.3 FcCacheCopySet.3 FcCacheDir.3 FcCacheNumFont.3 \
41	FcCacheNumSubdir.3 FcCacheSubdir.3 FcCharSetAddChar.3 FcCharSetCopy.3 \
42	FcCharSetCount.3 FcCharSetCoverage.3 FcCharSetCreate.3 \
43	FcCharSetDestroy.3 FcCharSetEqual.3 FcCharSetFirstPage.3 \
44	FcCharSetHasChar.3 FcCharSetIntersect.3 FcCharSetIntersectCount.3 \
45	FcCharSetIsSubset.3 FcCharSetNew.3 FcCharSetNextPage.3 \
46	FcCharSetSubtract.3 FcCharSetSubtractCount.3 FcCharSetUnion.3 \
47	FcConfigAppFontAddDir.3 FcConfigAppFontAddFile.3 \
48	FcConfigAppFontClear.3 FcConfigBuildFonts.3 FcConfigCreate.3 \
49	FcConfigDestroy.3 FcConfigEnableHome.3 FcConfigFilename.3 \
50	FcConfigGetBlanks.3 FcConfigGetCache.3 FcConfigGetCacheDirs.3 \
51	FcConfigGetConfigDirs.3 FcConfigGetConfigFiles.3 FcConfigGetCurrent.3 \
52	FcConfigGetFontDirs.3 FcConfigGetFonts.3 FcConfigGetRescanInterval.3 \
53	FcConfigHome.3 FcConfigParseAndLoad.3 FcConfigSetCurrent.3 \
54	FcConfigSetRescanInterval.3 FcConfigSubstitute.3 \
55	FcConfigSubstituteWithPat.3 FcConfigUptoDate.3 FcDefaultSubstitute.3 \
56	FcDirCacheLoad.3 FcDirCacheLoadFile.3 FcDirCacheRead.3 \
57	FcDirCacheUnlink.3 FcDirCacheUnload.3 FcDirCacheValid.3 FcDirSave.3 \
58	FcDirScan.3 FcFileIsDir.3 FcFileScan.3 FcFini.3 FcFontList.3 \
59	FcFontMatch.3 FcFontRenderPrepare.3 FcFontSetAdd.3 FcFontSetCreate.3 \
60	FcFontSetDestroy.3 FcFontSetList.3 FcFontSetMatch.3 FcFontSetPrint.3 \
61	FcFontSetSort.3 FcFontSetSortDestroy.3 FcFontSort.3 \
62	FcFreeTypeCharIndex.3 FcFreeTypeCharSet.3 \
63	FcFreeTypeCharSetAndSpacing.3 FcFreeTypeQuery.3 \
64	FcFreeTypeQueryFace.3 FcGetLangs.3 FcGetVersion.3 FcInit.3 \
65	FcInitBringUptoDate.3 FcInitLoadConfig.3 FcInitLoadConfigAndFonts.3 \
66	FcInitReinitialize.3 FcIsLower.3 FcIsUpper.3 FcLangGetCharSet.3 \
67	FcLangSetAdd.3 FcLangSetCompare.3 FcLangSetContains.3 FcLangSetCopy.3 \
68	FcLangSetCreate.3 FcLangSetDestroy.3 FcLangSetEqual.3 \
69	FcLangSetHasLang.3 FcLangSetHash.3 FcMatrixCopy.3 FcMatrixEqual.3 \
70	FcMatrixInit.3 FcMatrixMultiply.3 FcMatrixRotate.3 FcMatrixScale.3 \
71	FcMatrixShear.3 FcNameConstant.3 FcNameGetConstant.3 \
72	FcNameGetObjectType.3 FcNameParse.3 FcNameRegisterConstants.3 \
73	FcNameRegisterObjectTypes.3 FcNameUnparse.3 \
74	FcNameUnregisterConstants.3 FcNameUnregisterObjectTypes.3 \
75	FcObjectSetAdd.3 FcObjectSetBuild.3 FcObjectSetCreate.3 \
76	FcObjectSetDestroy.3 FcPatternAdd-Type.3 FcPatternAdd.3 \
77	FcPatternAddWeak.3 FcPatternBuild.3 FcPatternCreate.3 FcPatternDel.3 \
78	FcPatternDestroy.3 FcPatternDuplicate.3 FcPatternEqual.3 \
79	FcPatternEqualSubset.3 FcPatternGet-Type.3 FcPatternGet.3 \
80	FcPatternHash.3 FcPatternPrint.3 FcPatternReference.3 \
81	FcPatternRemove.3 FcStrBasename.3 FcStrCmp.3 FcStrCmpIgnoreCase.3 \
82	FcStrCopy.3 FcStrCopyFilename.3 FcStrDirname.3 FcStrDowncase.3 \
83	FcStrFree.3 FcStrListCreate.3 FcStrListDone.3 FcStrListNext.3 \
84	FcStrPlus.3 FcStrSetAdd.3 FcStrSetAddFilename.3 FcStrSetCreate.3 \
85	FcStrSetDel.3 FcStrSetDestroy.3 FcStrSetEqual.3 FcStrSetMember.3 \
86	FcStrStr.3 FcStrStrIgnoreCase.3 FcToLower.3 FcUcs4ToUtf8.3 \
87	FcUtf16Len.3 FcUtf16ToUcs4.3 FcUtf8Len.3 FcUtf8ToUcs4.3 \
88	FcValueDestroy.3 FcValueEqual.3 FcValuePrint.3 FcValueSave.3 \
89	FcCacheCreateTagFile.3 FcCharSetDelChar.3 FcGetDefaultLangs.3 \
90	FcLangSetDel.3 FcLangSetSubtract.3 FcLangSetUnion.3
91
92MAN+=	fonts-conf.5
93
94MLINKS= fonts-conf.5 fonts.conf.5
95
96LIBDPLIBS=\
97	expat		${NETBSDSRCDIR}/external/mit/expat/lib/libexpat \
98	freetype	${.CURDIR}/../../freetype
99
100# XXX FONTCONFIG_PATH was arbitrarily chosen
101FONTCONFIG_PATH=/etc/fonts
102CPPFLAGS+=	-DHAVE_CONFIG_H
103CPPFLAGS+=	-DFONTCONFIG_PATH='"${FONTCONFIG_PATH}"' \
104		-DFC_DEFAULT_FONTS='"${X11FONTDIR}"' \
105		-DFC_CACHEDIR='"/var/cache/fontconfig"' \
106		-DHAVE_FT_BITMAP_SIZE_Y_PPEM \
107		-DHAVE_FT_GET_BDF_PROPERTY \
108		-DHAVE_FT_GET_NEXT_CHAR \
109		-DHAVE_FT_GET_PS_FONT_INFO \
110		-DHAVE_FT_GET_X11_FONT_FORMAT \
111		-DHAVE_FT_HAS_PS_GLYPH_NAMES \
112		-DHAVE_EXPAT -DXFREE86_FT2 -DHAVE_INTTYPES_H \
113		-DHAVE_STDINT_H -DHAVE_RANDOM
114
115CPPFLAGS+=	${X11FLAGS.THREADLIB}
116CPPFLAGS+=	-I${DESTDIR}${X11INCDIR}/freetype2 \
117		-I${X11SRCDIR.freetype}/src \
118		-I${X11SRCDIR.freetype}/include \
119		-I${X11SRCDIR.${LIB}}/../include \
120		-I. \
121		-I${X11SRCDIR.${LIB}}
122
123.include "Makefile.fcarch"
124
125CLEANFILES+= fcarch.h
126
127PKGCONFIG=	fontconfig
128PKGCONFIG_SED_FLAGS= \
129	-e "s,@sysconfdir@,${X11ETCDIR},; \
130	    s,@localstatedir@,/var,; \
131	    s,@BASECONFIGDIR@,/etc/fonts,; \
132	    s,@fc_cachedir@,${FONTCONFIG_PATH},"
133
134# XXX
135CPPFLAGS.fcxml.c=	-Wno-error
136
137CWARNFLAGS.clang+=	-Wno-pointer-sign -Wno-switch
138
139.if ${MACHINE_ARCH} == "sparc" || ${COMMON_MACHINE_ARCH:U} == "sparc"
140COPTS.fccache.c+=	${${ACTIVE_CC} == "clang":? -Wa,-Av8plus  :}
141COPTS.fccfg.c+=	${${ACTIVE_CC} == "clang":? -Wa,-Av8plus  :}
142COPTS.fccharset.c+=	${${ACTIVE_CC} == "clang":? -Wa,-Av8plus  :}
143COPTS.fcobjs.c+=	${${ACTIVE_CC} == "clang":? -Wa,-Av8plus  :}
144COPTS.fcpat.c+=	${${ACTIVE_CC} == "clang":? -Wa,-Av8plus  :}
145COPTS.fcstr.c+=	${${ACTIVE_CC} == "clang":? -Wa,-Av8plus  :}
146.endif
147
148.include <bsd.x11.mk>
149.include <bsd.lib.mk>
150