Makefile.am revision 953daeba
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)"'                \
82ca08ab68Smrg	-DFONTCONFIG_PATH='"$(BASECONFIGDIR)"'
832c393a42Smrg
84c9710b42SmrgEXTRA_DIST += makealias
852c393a42Smrg
86c9710b42Smrgnoinst_HEADERS=fcint.h fcftint.h fcdeprecate.h fcstdint.h
872c393a42Smrg
882c393a42SmrgALIAS_FILES = fcalias.h fcaliastail.h fcftalias.h fcftaliastail.h
892c393a42Smrg
90a6844aabSmrgBUILT_SOURCES = $(ALIAS_FILES) \
91a6844aabSmrg	../fc-case/fccase.h \
92a6844aabSmrg	../fc-glyphname/fcglyphname.h \
93c9710b42Smrg	../fc-lang/fclang.h \
94c9710b42Smrg	stamp-fcstdint \
95c9710b42Smrg	fcobjshash.h \
96c9710b42Smrg	fcobjshash.gperf
97a6844aabSmrg
98ca08ab68Smrgnoinst_PROGRAMS = fcarch
99ca08ab68Smrg
100a6844aabSmrg../fc-case/fccase.h:
101a6844aabSmrg	cd ../fc-case && $(MAKE) $(AM_MAKEFLAGS) fccase.h
102a6844aabSmrg../fc-glyphname/fcglyphname.h:
103a6844aabSmrg	cd ../fc-glyphname && $(MAKE) $(AM_MAKEFLAGS) fcglyphname.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
112c9710b42Smrg	$(AM_V_GEN) $(CPP) -I$(top_srcdir) $< | \
113c9710b42Smrg	$(SED) 's/^ *//;s/ *, */,/' | \
114c9710b42Smrg	$(GREP) '^[^#]' | \
115c9710b42Smrg	awk ' \
116c9710b42Smrg		/CUT_OUT_BEGIN/ { no_write=1; next; }; \
117c9710b42Smrg		/CUT_OUT_END/ { no_write=0; next; }; \
118c9710b42Smrg		{ if (!no_write) print; next; }; \
119c9710b42Smrg	' - > $@.tmp && \
120953daebaSmrg	mv -f $@.tmp fcobjshash.gperf && touch $@ || ( $(RM) $@.tmp && false )
121c9710b42Smrg
122953daebaSmrgfcobjshash.h: Makefile fcobjshash.gperf
123953daebaSmrg	$(AM_V_GEN) $(GPERF) -m 100 fcobjshash.gperf > $@.tmp && \
124c9710b42Smrg	mv -f $@.tmp $@ || ( $(RM) $@.tmp && false )
125c9710b42Smrg
126c9710b42SmrgEXTRA_DIST += \
127c9710b42Smrg	fcobjshash.gperf.h \
128953daebaSmrg	fcobjshash.gperf
129c9710b42Smrg
1302c393a42Smrglibfontconfig_la_SOURCES = \
131ca08ab68Smrg	fcarch.h \
1322c393a42Smrg	fcatomic.c \
133c9710b42Smrg	fcatomic.h \
1342c393a42Smrg	fcblanks.c \
1352c393a42Smrg	fccache.c \
1362c393a42Smrg	fccfg.c \
1372c393a42Smrg	fccharset.c \
138c9710b42Smrg	fccompat.c \
1392c393a42Smrg	fcdbg.c \
1402c393a42Smrg	fcdefault.c \
1412c393a42Smrg	fcdir.c \
142a6844aabSmrg	fcformat.c \
1432c393a42Smrg	fcfreetype.c \
1442c393a42Smrg	fcfs.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 \
154c9710b42Smrg	fcobjshash.h \
1552c393a42Smrg	fcpat.c \
156953daebaSmrg	fcrange.c \
1572c393a42Smrg	fcserialize.c \
158ca08ab68Smrg	fcstat.c \
1592c393a42Smrg	fcstr.c \
160953daebaSmrg	fcweight.c \
161c9710b42Smrg	fcwindows.h \
1622c393a42Smrg	fcxml.c \
1632c393a42Smrg	ftglue.h \
1642c393a42Smrg	ftglue.c
1652c393a42Smrg
1662c393a42Smrglib_LTLIBRARIES = libfontconfig.la
1672c393a42Smrg
1682c393a42Smrglibfontconfig_la_LDFLAGS =			\
1692c393a42Smrg	-version-info @LIBT_VERSION_INFO@ -no-undefined $(export_symbols)
1702c393a42Smrg
1712c393a42Smrglibfontconfig_la_LIBADD = $(ICONV_LIBS) $(FREETYPE_LIBS) $(LIBXML2_LIBS) $(EXPAT_LIBS)
1722c393a42Smrg
1732c393a42Smrglibfontconfig_la_DEPENDENCIES = $(fontconfig_def_dependency)
1742c393a42Smrg
175ca08ab68Smrgif ENABLE_SHARED
1762c393a42Smrginstall-data-local: install-ms-import-lib install-libtool-import-lib
1772c393a42Smrg
1782c393a42Smrguninstall-local: uninstall-ms-import-lib uninstall-libtool-import-lib
179ca08ab68Smrgendif
1802c393a42Smrg
1812c393a42SmrgPUBLIC_FILES = \
1822c393a42Smrg	$(top_srcdir)/fontconfig/fontconfig.h \
1832c393a42Smrg	$(top_srcdir)/src/fcdeprecate.h \
1842c393a42Smrg	$(top_srcdir)/fontconfig/fcprivate.h
185ca08ab68Smrg
1862c393a42SmrgPUBLIC_FT_FILES = \
1872c393a42Smrg	$(top_srcdir)/fontconfig/fcfreetype.h
1882c393a42Smrg
1892c393a42Smrgfcaliastail.h: fcalias.h
1902c393a42Smrg
1912c393a42Smrgfcalias.h: $(top_srcdir)/src/makealias $(PUBLIC_FILES)
192ca08ab68Smrg	$(AM_V_GEN) sh $(top_srcdir)/src/makealias "$(top_srcdir)/src" fcalias.h fcaliastail.h $(PUBLIC_FILES)
1932c393a42Smrg
1942c393a42Smrgfcftaliastail.h: fcftalias.h
1952c393a42Smrg
1962c393a42Smrgfcftalias.h: $(top_srcdir)/src/makealias $(PUBLIC_FT_FILES)
197ca08ab68Smrg	$(AM_V_GEN) sh $(top_srcdir)/src/makealias "$(top_srcdir)/src" fcftalias.h fcftaliastail.h $(PUBLIC_FT_FILES)
1982c393a42Smrg
199c9710b42Smrgstamp-fcstdint: $(top_builddir)/config.status
200c9710b42Smrg	$(AM_V_GEN) cd $(top_builddir) &&	\
201c9710b42Smrg	$(SHELL) ./config.status src/fcstdint.h
202c9710b42Smrg	@touch $@
203c9710b42Smrg
204c9710b42SmrgCLEANFILES = $(ALIAS_FILES) fontconfig.def
205953daebaSmrgDISTCLEANFILES = 	\
206953daebaSmrg	stamp-fcstdint	\
207953daebaSmrg	fcstdint.h	\
208953daebaSmrg	stamp-fcobjshash.gperf	\
209953daebaSmrg	fcobjshash.h	\
210953daebaSmrg	fcobjshash.gperf
2112c393a42Smrg
2122c393a42Smrgfontconfig.def: $(PUBLIC_FILES) $(PUBLIC_FT_FILES)
2132c393a42Smrg	echo Generating $@
2142c393a42Smrg	(echo EXPORTS; \
2152c393a42Smrg	(cat $(PUBLIC_FILES) $(PUBLIC_FT_FILES) || echo 'FcERROR ()' ) | \
216c9710b42Smrg	$(GREP) '^Fc[^ ]* *(' | $(SED) -e 's/ *(.*$$//' -e 's/^/	/' | \
2172c393a42Smrg	sort; \
2182c393a42Smrg	echo LIBRARY libfontconfig-@LIBT_CURRENT_MINUS_AGE@.dll; \
2192c393a42Smrg	echo VERSION @LIBT_CURRENT@.@LIBT_REVISION@) >$@
220c9710b42Smrg	@ ! $(GREP) -q FcERROR $@ || ($(RM) $@; false)
221c9710b42Smrg
222c9710b42Smrg-include $(top_srcdir)/git.mk
223