Makefile.am revision a6844aab
1#
2# fontconfig/src/Makefile.am
3#
4# Copyright © 2003 Keith Packard
5#
6# Permission to use, copy, modify, distribute, and sell this software and its
7# documentation for any purpose is hereby granted without fee, provided that
8# the above copyright notice appear in all copies and that both that
9# copyright notice and this permission notice appear in supporting
10# documentation, and that the name of Keith Packard not be used in
11# advertising or publicity pertaining to distribution of the software without
12# specific, written prior permission.  Keith Packard makes no
13# representations about the suitability of this software for any purpose.  It
14# is provided "as is" without express or implied warranty.
15#
16# THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
17# INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
18# EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
19# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
20# DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
21# TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
22# PERFORMANCE OF THIS SOFTWARE.
23
24if OS_WIN32
25
26export_symbols = -export-symbols fontconfig.def
27
28fontconfig_def_dependency = fontconfig.def
29
30# gcc import library install/uninstall
31
32install-libtool-import-lib: 
33	$(INSTALL) .libs/libfontconfig.dll.a $(DESTDIR)$(libdir)
34	$(INSTALL) fontconfig.def $(DESTDIR)$(libdir)/fontconfig.def
35
36uninstall-libtool-import-lib:
37	-rm $(DESTDIR)$(libdir)/libfontconfig.dll.a $(DESTDIR)$(libdir)/fontconfig.def
38
39else
40
41install-libtool-import-lib:
42uninstall-libtool-import-lib:
43
44fontconfig_def_dependency = 
45
46endif
47
48if MS_LIB_AVAILABLE
49
50# Microsoft import library install/uninstall
51
52noinst_DATA = fontconfig.lib
53
54fontconfig.lib : libfontconfig.la
55	lib -name:libfontconfig-@LIBT_CURRENT_MINUS_AGE@.dll -def:fontconfig.def -out:$@
56
57install-ms-import-lib:
58	$(INSTALL) fontconfig.lib $(DESTDIR)$(libdir)
59
60uninstall-ms-import-lib:
61	-rm $(DESTDIR)$(libdir)/fontconfig.lib
62
63else
64
65install-ms-import-lib:
66uninstall-ms-import-lib:
67
68endif
69
70INCLUDES = 						\
71	-I$(top_srcdir)					\
72	-I$(top_srcdir)/src				\
73	$(FREETYPE_CFLAGS)				\
74	$(LIBXML2_CFLAGS)				\
75	$(EXPAT_CFLAGS)					\
76	$(WARN_CFLAGS)					\
77	-DFC_CACHEDIR='"$(FC_CACHEDIR)"'                \
78	-DFONTCONFIG_PATH='"$(CONFDIR)"'
79
80EXTRA_DIST = makealias
81
82noinst_HEADERS=fcint.h fcftint.h fcdeprecate.h
83
84ALIAS_FILES = fcalias.h fcaliastail.h fcftalias.h fcftaliastail.h
85
86BUILT_SOURCES = $(ALIAS_FILES) \
87	../fc-arch/fcarch.h \
88	../fc-case/fccase.h \
89	../fc-glyphname/fcglyphname.h \
90	../fc-lang/fclang.h
91
92../fc-arch/fcarch.h:
93	cd ../fc-arch && $(MAKE) $(AM_MAKEFLAGS) fcarch.h
94../fc-case/fccase.h:
95	cd ../fc-case && $(MAKE) $(AM_MAKEFLAGS) fccase.h
96../fc-glyphname/fcglyphname.h:
97	cd ../fc-glyphname && $(MAKE) $(AM_MAKEFLAGS) fcglyphname.h
98../fc-lang/fclang.h:
99	cd ../fc-lang && $(MAKE) $(AM_MAKEFLAGS) fclang.h
100
101libfontconfig_la_SOURCES = \
102	fcatomic.c \
103	fcblanks.c \
104	fccache.c \
105	fccfg.c \
106	fccharset.c \
107	fcdbg.c \
108	fcdefault.c \
109	fcdir.c \
110	fcformat.c \
111	fcfreetype.c \
112	fcfs.c \
113	fcinit.c \
114	fclang.c \
115	fclist.c \
116	fcmatch.c \
117	fcmatrix.c \
118	fcname.c \
119	fcpat.c \
120	fcserialize.c \
121	fcstr.c \
122	fcxml.c \
123	ftglue.h \
124	ftglue.c
125
126lib_LTLIBRARIES = libfontconfig.la
127
128libfontconfig_la_LDFLAGS =			\
129	-version-info @LIBT_VERSION_INFO@ -no-undefined $(export_symbols)
130
131libfontconfig_la_LIBADD = $(ICONV_LIBS) $(FREETYPE_LIBS) $(LIBXML2_LIBS) $(EXPAT_LIBS)
132
133libfontconfig_la_DEPENDENCIES = $(fontconfig_def_dependency)
134
135install-data-local: install-ms-import-lib install-libtool-import-lib
136
137uninstall-local: uninstall-ms-import-lib uninstall-libtool-import-lib
138
139PUBLIC_FILES = \
140	$(top_srcdir)/fontconfig/fontconfig.h \
141	$(top_srcdir)/src/fcdeprecate.h \
142	$(top_srcdir)/fontconfig/fcprivate.h
143	
144PUBLIC_FT_FILES = \
145	$(top_srcdir)/fontconfig/fcfreetype.h
146
147fcaliastail.h: fcalias.h
148
149fcalias.h: $(top_srcdir)/src/makealias $(PUBLIC_FILES)
150	sh $(top_srcdir)/src/makealias "$(top_srcdir)/src" fcalias.h fcaliastail.h $(PUBLIC_FILES)
151
152fcftaliastail.h: fcftalias.h
153
154fcftalias.h: $(top_srcdir)/src/makealias $(PUBLIC_FT_FILES)
155	sh $(top_srcdir)/src/makealias "$(top_srcdir)/src" fcftalias.h fcftaliastail.h $(PUBLIC_FT_FILES)
156
157CLEANFILES = $(ALIAS_FILES)
158
159fontconfig.def: $(PUBLIC_FILES) $(PUBLIC_FT_FILES)
160	echo Generating $@
161	(echo EXPORTS; \
162	(cat $(PUBLIC_FILES) $(PUBLIC_FT_FILES) || echo 'FcERROR ()' ) | \
163 	grep '^Fc[^ ]* *(' | sed -e 's/ *(.*$$//' -e 's/^/	/' | \
164	sort; \
165	echo LIBRARY libfontconfig-@LIBT_CURRENT_MINUS_AGE@.dll; \
166	echo VERSION @LIBT_CURRENT@.@LIBT_REVISION@) >$@
167	@ ! grep -q FcERROR $@ || ($(RM) $@; false)
168