12c393a42Smrg#
2a6844aabSmrg# fontconfig/src/Makefile.am
32c393a42Smrg#
42c393a42Smrg# Copyright © 2003 Keith Packard
52c393a42Smrg#
62c393a42Smrg# Permission to use, copy, modify, distribute, and sell this software and its
72c393a42Smrg# documentation for any purpose is hereby granted without fee, provided that
82c393a42Smrg# the above copyright notice appear in all copies and that both that
92c393a42Smrg# copyright notice and this permission notice appear in supporting
10ca08ab68Smrg# documentation, and that the name of the author(s) not be used in
112c393a42Smrg# advertising or publicity pertaining to distribution of the software without
12ca08ab68Smrg# specific, written prior permission.  The authors make no
132c393a42Smrg# representations about the suitability of this software for any purpose.  It
142c393a42Smrg# is provided "as is" without express or implied warranty.
152c393a42Smrg#
16a6844aabSmrg# THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
172c393a42Smrg# INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
18a6844aabSmrg# EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
192c393a42Smrg# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
202c393a42Smrg# DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
212c393a42Smrg# TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
222c393a42Smrg# PERFORMANCE OF THIS SOFTWARE.
232c393a42Smrg
24c9710b42SmrgEXTRA_DIST =
25c9710b42Smrg
262c393a42Smrgif OS_WIN32
272c393a42Smrg
282c393a42Smrgexport_symbols = -export-symbols fontconfig.def
292c393a42Smrg
302c393a42Smrgfontconfig_def_dependency = fontconfig.def
312c393a42Smrg
322c393a42Smrg# gcc import library install/uninstall
332c393a42Smrg
34c9710b42Smrginstall-libtool-import-lib: libfontconfig.la
35c9710b42Smrg	$(MKDIR_P) $(DESTDIR)$(libdir)
36c9710b42Smrg	$(INSTALL) .libs/libfontconfig.dll.a $(DESTDIR)$(libdir)/libfontconfig.dll.a
372c393a42Smrg	$(INSTALL) fontconfig.def $(DESTDIR)$(libdir)/fontconfig.def
382c393a42Smrg
392c393a42Smrguninstall-libtool-import-lib:
40ca08ab68Smrg	$(RM) $(DESTDIR)$(libdir)/libfontconfig.dll.a $(DESTDIR)$(libdir)/fontconfig.def
412c393a42Smrg
422c393a42Smrgelse
432c393a42Smrg
442c393a42Smrginstall-libtool-import-lib:
452c393a42Smrguninstall-libtool-import-lib:
462c393a42Smrg
472c393a42Smrgfontconfig_def_dependency = 
482c393a42Smrg
492c393a42Smrgendif
502c393a42Smrg
512c393a42Smrgif MS_LIB_AVAILABLE
522c393a42Smrg
532c393a42Smrg# Microsoft import library install/uninstall
542c393a42Smrg
552c393a42Smrgnoinst_DATA = fontconfig.lib
562c393a42Smrg
572c393a42Smrgfontconfig.lib : libfontconfig.la
58a6844aabSmrg	lib -name:libfontconfig-@LIBT_CURRENT_MINUS_AGE@.dll -def:fontconfig.def -out:$@
592c393a42Smrg
602c393a42Smrginstall-ms-import-lib:
612c393a42Smrg	$(INSTALL) fontconfig.lib $(DESTDIR)$(libdir)
622c393a42Smrg
632c393a42Smrguninstall-ms-import-lib:
64ca08ab68Smrg	$(RM) $(DESTDIR)$(libdir)/fontconfig.lib
652c393a42Smrg
662c393a42Smrgelse
672c393a42Smrg
682c393a42Smrginstall-ms-import-lib:
692c393a42Smrguninstall-ms-import-lib:
702c393a42Smrg
712c393a42Smrgendif
722c393a42Smrg
73c9710b42SmrgAM_CPPFLAGS = 						\
742c393a42Smrg	-I$(top_srcdir)					\
752c393a42Smrg	-I$(top_srcdir)/src				\
762c393a42Smrg	$(FREETYPE_CFLAGS)				\
77ca08ab68Smrg	$(ICONV_CFLAGS)					\
782c393a42Smrg	$(LIBXML2_CFLAGS)				\
792c393a42Smrg	$(EXPAT_CFLAGS)					\
802c393a42Smrg	$(WARN_CFLAGS)					\
812c393a42Smrg	-DFC_CACHEDIR='"$(FC_CACHEDIR)"'                \
82a4e54154Smrg	-DCONFIGDIR='"$(CONFIGDIR)"'			\
83a32e9e42Smrg	-DFONTCONFIG_PATH='"$(BASECONFIGDIR)"'		\
84a32e9e42Smrg	-DFC_TEMPLATEDIR='"$(TEMPLATEDIR)"'
85a32e9e42SmrgLDADD  = $(LIBINTL)
862c393a42Smrg
87c9710b42SmrgEXTRA_DIST += makealias
882c393a42Smrg
89a4e54154Smrgnoinst_HEADERS=fcint.h fcftint.h fcdeprecate.h fcfoundry.h fcmd5.h fcstdint.h
902c393a42Smrg
912c393a42SmrgALIAS_FILES = fcalias.h fcaliastail.h fcftalias.h fcftaliastail.h
922c393a42Smrg
93a6844aabSmrgBUILT_SOURCES = $(ALIAS_FILES) \
94a6844aabSmrg	../fc-case/fccase.h \
95c9710b42Smrg	../fc-lang/fclang.h \
96c9710b42Smrg	stamp-fcstdint \
97a32e9e42Smrg	$(builddir)/fcobjshash.h \
98c9710b42Smrg	fcobjshash.gperf
99a6844aabSmrg
100ca08ab68Smrgnoinst_PROGRAMS = fcarch
101ca08ab68Smrg
102a6844aabSmrg../fc-case/fccase.h:
103a6844aabSmrg	cd ../fc-case && $(MAKE) $(AM_MAKEFLAGS) fccase.h
104a6844aabSmrg../fc-lang/fclang.h:
105a6844aabSmrg	cd ../fc-lang && $(MAKE) $(AM_MAKEFLAGS) fclang.h
1062c393a42Smrg
107953daebaSmrgfcobjshash.gperf: Makefile stamp-fcobjshash.gperf
108953daebaSmrg	-@$(RM) stamp-fcobjshash.gperf
109953daebaSmrg	@$(MAKE) stamp-fcobjshash.gperf
110953daebaSmrg	@touch -r stamp-fcobjshash.gperf $@
111953daebaSmrgstamp-fcobjshash.gperf: fcobjshash.gperf.h fcobjs.h
112a32e9e42Smrg	$(AM_V_GEN) $(CPP) -I$(top_srcdir) $(CPPFLAGS) $< | \
113c9710b42Smrg	$(SED) 's/^ *//;s/ *, */,/' | \
114c9710b42Smrg	awk ' \
115c9710b42Smrg		/CUT_OUT_BEGIN/ { no_write=1; next; }; \
116c9710b42Smrg		/CUT_OUT_END/ { no_write=0; next; }; \
117a32e9e42Smrg		/^$$/||/^#/ { next; }; \
118c9710b42Smrg		{ if (!no_write) print; next; }; \
119c9710b42Smrg	' - > $@.tmp && \
120953daebaSmrg	mv -f $@.tmp fcobjshash.gperf && touch $@ || ( $(RM) $@.tmp && false )
121c9710b42Smrg
122a32e9e42Smrg$(builddir)/fcobjshash.h: Makefile fcobjshash.gperf
123a32e9e42Smrg	$(AM_V_GEN) $(GPERF) --pic -m 100 fcobjshash.gperf > $@.tmp && \
124c9710b42Smrg	mv -f $@.tmp $@ || ( $(RM) $@.tmp && false )
125c9710b42Smrg
126c9710b42SmrgEXTRA_DIST += \
127a32e9e42Smrg	fcobjshash.gperf.h
128c9710b42Smrg
1292c393a42Smrglibfontconfig_la_SOURCES = \
130ca08ab68Smrg	fcarch.h \
1312c393a42Smrg	fcatomic.c \
132c9710b42Smrg	fcatomic.h \
1332c393a42Smrg	fccache.c \
1342c393a42Smrg	fccfg.c \
1352c393a42Smrg	fccharset.c \
136c9710b42Smrg	fccompat.c \
1372c393a42Smrg	fcdbg.c \
1382c393a42Smrg	fcdefault.c \
1392c393a42Smrg	fcdir.c \
140a6844aabSmrg	fcformat.c \
1412c393a42Smrg	fcfreetype.c \
1422c393a42Smrg	fcfs.c \
143a32e9e42Smrg	fcptrlist.c \
144a32e9e42Smrg	fchash.c \
1452c393a42Smrg	fcinit.c \
1462c393a42Smrg	fclang.c \
1472c393a42Smrg	fclist.c \
1482c393a42Smrg	fcmatch.c \
1492c393a42Smrg	fcmatrix.c \
150c9710b42Smrg	fcmutex.h \
1512c393a42Smrg	fcname.c \
152c9710b42Smrg	fcobjs.c \
153c9710b42Smrg	fcobjs.h \
1542c393a42Smrg	fcpat.c \
155953daebaSmrg	fcrange.c \
1562c393a42Smrg	fcserialize.c \
157ca08ab68Smrg	fcstat.c \
1582c393a42Smrg	fcstr.c \
159953daebaSmrg	fcweight.c \
160c9710b42Smrg	fcwindows.h \
1612c393a42Smrg	fcxml.c \
1622c393a42Smrg	ftglue.h \
1632c393a42Smrg	ftglue.c
1642c393a42Smrg
1652c393a42Smrglib_LTLIBRARIES = libfontconfig.la
1662c393a42Smrg
1672c393a42Smrglibfontconfig_la_LDFLAGS =			\
1682c393a42Smrg	-version-info @LIBT_VERSION_INFO@ -no-undefined $(export_symbols)
1692c393a42Smrg
170a4e54154Smrglibfontconfig_la_LIBADD = $(ICONV_LIBS) $(FREETYPE_LIBS) $(LIBXML2_LIBS) $(EXPAT_LIBS) $(LTLIBINTL)
1712c393a42Smrg
1722c393a42Smrglibfontconfig_la_DEPENDENCIES = $(fontconfig_def_dependency)
1732c393a42Smrg
174ca08ab68Smrgif ENABLE_SHARED
1752c393a42Smrginstall-data-local: install-ms-import-lib install-libtool-import-lib
1762c393a42Smrg
1772c393a42Smrguninstall-local: uninstall-ms-import-lib uninstall-libtool-import-lib
178ca08ab68Smrgendif
1792c393a42Smrg
1802c393a42SmrgPUBLIC_FILES = \
1812c393a42Smrg	$(top_srcdir)/fontconfig/fontconfig.h \
1822c393a42Smrg	$(top_srcdir)/src/fcdeprecate.h \
1832c393a42Smrg	$(top_srcdir)/fontconfig/fcprivate.h
184ca08ab68Smrg
1852c393a42SmrgPUBLIC_FT_FILES = \
1862c393a42Smrg	$(top_srcdir)/fontconfig/fcfreetype.h
1872c393a42Smrg
1882c393a42Smrgfcaliastail.h: fcalias.h
1892c393a42Smrg
1902c393a42Smrgfcalias.h: $(top_srcdir)/src/makealias $(PUBLIC_FILES)
191ca08ab68Smrg	$(AM_V_GEN) sh $(top_srcdir)/src/makealias "$(top_srcdir)/src" fcalias.h fcaliastail.h $(PUBLIC_FILES)
1922c393a42Smrg
1932c393a42Smrgfcftaliastail.h: fcftalias.h
1942c393a42Smrg
1952c393a42Smrgfcftalias.h: $(top_srcdir)/src/makealias $(PUBLIC_FT_FILES)
196ca08ab68Smrg	$(AM_V_GEN) sh $(top_srcdir)/src/makealias "$(top_srcdir)/src" fcftalias.h fcftaliastail.h $(PUBLIC_FT_FILES)
1972c393a42Smrg
198c9710b42Smrgstamp-fcstdint: $(top_builddir)/config.status
199c9710b42Smrg	$(AM_V_GEN) cd $(top_builddir) &&	\
200c9710b42Smrg	$(SHELL) ./config.status src/fcstdint.h
201c9710b42Smrg	@touch $@
202c9710b42Smrg
203a32e9e42SmrgCLEANFILES =		\
204a32e9e42Smrg	$(ALIAS_FILES)	\
205a32e9e42Smrg	fontconfig.def	\
206a32e9e42Smrg	$(builddir)/fcobjshash.h
207a32e9e42Smrg
208953daebaSmrgDISTCLEANFILES = 	\
209953daebaSmrg	stamp-fcstdint	\
210953daebaSmrg	fcstdint.h	\
211953daebaSmrg	stamp-fcobjshash.gperf	\
212953daebaSmrg	fcobjshash.gperf
2132c393a42Smrg
2142c393a42Smrgfontconfig.def: $(PUBLIC_FILES) $(PUBLIC_FT_FILES)
2152c393a42Smrg	echo Generating $@
2162c393a42Smrg	(echo EXPORTS; \
2172c393a42Smrg	(cat $(PUBLIC_FILES) $(PUBLIC_FT_FILES) || echo 'FcERROR ()' ) | \
218c9710b42Smrg	$(GREP) '^Fc[^ ]* *(' | $(SED) -e 's/ *(.*$$//' -e 's/^/	/' | \
2192c393a42Smrg	sort; \
2202c393a42Smrg	echo LIBRARY libfontconfig-@LIBT_CURRENT_MINUS_AGE@.dll; \
2212c393a42Smrg	echo VERSION @LIBT_CURRENT@.@LIBT_REVISION@) >$@
222c9710b42Smrg	@ ! $(GREP) -q FcERROR $@ || ($(RM) $@; false)
223c9710b42Smrg
224c9710b42Smrg-include $(top_srcdir)/git.mk
225