1 # Makefile.sub for `libgroff'
3 # File position: <groff-source>/src/libs/libgroff/Makefile.sub
5 # Copyright (C) 2014 Free Software Foundation, Inc.
7 # This file is part of `font utf8' which is part of `groff'.
9 # `groff' is free software; you can redistribute it and/or modify it
10 # under the terms of the GNU General Public License as published by
11 # the Free Software Foundation, either version 2 of the License, or
12 # (at your option) any later version.
14 # `groff' is distributed in the hope that it will be useful, but
15 # WITHOUT ANY WARRANTY; without even the implied warranty of
16 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17 # General Public License for more details.
19 # You should have received a copy of the GNU General Public License
20 # along with this program. If not, see
21 # <http://www.gnu.org/licenses/gpl-2.0.html>.
23 ########################################################################
26 EXTRA_CFLAGS=-D__GETOPT_PREFIX=groff_ \
27 -DENABLE_RELOCATABLE=1 \
28 -DLIBDIR=\"$(libdir)\"
53 localcharset.$(OBJEXT) \
56 maxfilename.$(OBJEXT) \
57 maxpathname.$(OBJEXT) \
59 nametoindex.$(OBJEXT) \
67 searchpath.$(OBJEXT) \
80 $(srcdir)/assert.cpp \
81 $(srcdir)/change_lf.cpp \
85 $(srcdir)/device.cpp \
86 $(srcdir)/errarg.cpp \
89 $(srcdir)/filename.cpp \
91 $(srcdir)/fontfile.cpp \
92 $(srcdir)/geometry.cpp \
93 $(srcdir)/glyphuni.cpp \
94 $(srcdir)/htmlhint.cpp \
96 $(srcdir)/invalid.cpp \
98 $(srcdir)/lineno.cpp \
99 $(srcdir)/macropath.cpp \
100 $(srcdir)/maxfilename.cpp \
101 $(srcdir)/maxpathname.cpp \
102 $(srcdir)/mksdir.cpp \
103 $(srcdir)/mkstemp.cpp \
104 $(srcdir)/nametoindex.cpp \
106 $(srcdir)/paper.cpp \
107 $(srcdir)/prime.cpp \
108 $(srcdir)/ptable.cpp \
109 $(srcdir)/relocate.cpp \
110 $(srcdir)/searchpath.cpp \
111 $(srcdir)/string.cpp \
112 $(srcdir)/strsave.cpp \
113 $(srcdir)/symbol.cpp \
114 $(srcdir)/tmpfile.cpp \
115 $(srcdir)/tmpname.cpp \
116 $(srcdir)/unicode.cpp \
117 $(srcdir)/uniglyph.cpp \
118 $(srcdir)/uniuni.cpp \
124 $(srcdir)/getopt1.c \
127 $(srcdir)/localcharset.c \
128 $(srcdir)/matherr.c \
129 $(srcdir)/progname.c \
131 $(srcdir)/quotearg.c \
132 $(srcdir)/spawnvp.c \
133 $(srcdir)/strcasecmp.c \
134 $(srcdir)/strerror.c \
135 $(srcdir)/strncasecmp.c \
137 $(srcdir)/../snprintf/snprintf.c
142 src_version=`cat $(top_srcdir)/VERSION`
143 src_revision=`cat $(top_srcdir)/REVISION`
145 version.cpp: $(top_srcdir)/VERSION $(top_srcdir)/REVISION
146 @echo Making version.cpp
147 @echo const char \*version_string = \"$(src_version)\"\; >$@
148 @echo const char \*revision_string = \"$(src_revision)\"\; >>$@
149 @echo extern \"C\" const char \*Version_string = \"$(src_version).$(src_revision)\"\; \
150 | sed -e 's/\.0\"/\"/' >>$@
152 # We have to avoid $(COMPILE.c) since we must not use groff's `assert.h'
153 snprintf.$(OBJEXT): $(srcdir)/../snprintf/snprintf.c
154 $(CC) -c $(CDEFINES) $(CFLAGS) $(CPPFLAGS) \
155 $(srcdir)/../snprintf/snprintf.c
157 # Data for localcharset.c. Taken from libiconv/libcharset.
159 all: charset.alias ref-add.sed ref-del.sed
161 charset.alias: $(srcdir)/config.charset
162 $(SHELL) $(srcdir)/config.charset '$(HOST)' > t-$@
167 ref-add.sed : $(srcdir)/ref-add.sin
169 -e 's/@''PACKAGE''@/$(PACKAGE)/g' $(srcdir)/ref-add.sin > t-$@
172 ref-del.sed : $(srcdir)/ref-del.sin
174 -e 's/@''PACKAGE''@/$(PACKAGE)/g' $(srcdir)/ref-del.sin > t-$@
177 MKINSTALLDIRS = $(SHELL) $(top_srcdir)/mkinstalldirs
179 install_data: install_charset_data
180 install_charset_data:
181 -test $(GLIBC21) != no || $(MKINSTALLDIRS) $(DESTDIR)$(libdir)
182 if test -f $(DESTDIR)$(libdir)/charset.alias; then \
183 sed -f ref-add.sed $(DESTDIR)$(libdir)/charset.alias \
184 > $(DESTDIR)$(libdir)/t-charset.alias; \
185 $(INSTALL_DATA) $(DESTDIR)$(libdir)/t-charset.alias \
186 $(DESTDIR)$(libdir)/charset.alias; \
187 $(RM) $(DESTDIR)$(libdir)/t-charset.alias; \
189 if test $(GLIBC21) = no; then \
190 sed -f ref-add.sed charset.alias \
191 > $(DESTDIR)$(libdir)/t-charset.alias; \
192 $(INSTALL_DATA) $(DESTDIR)$(libdir)/t-charset.alias \
193 $(DESTDIR)$(libdir)/charset.alias; \
194 $(RM) $(DESTDIR)$(libdir)/t-charset.alias; \
198 uninstall_sub: uninstall_charset_data
199 uninstall_charset_data:
200 -if test -f $(DESTDIR)$(libdir)/charset.alias; then \
201 sed -f ref-del.sed $(DESTDIR)$(libdir)/charset.alias \
202 > $(DESTDIR)$(libdir)/t-charset.alias; \
203 if grep '^# Packages using this file: $$' \
204 $(DESTDIR)$(libdir)/t-charset.alias > /dev/null; then \
205 $(RM) $(DESTDIR)$(libdir)/charset.alias; \
207 $(INSTALL_DATA) $(DESTDIR)$(libdir)/t-charset.alias \
208 $(DESTDIR)$(libdir)/charset.alias; \
210 $(RM) $(DESTDIR)$(libdir)/t-charset.alias; \
215 $(RM) charset.alias ref-add.sed ref-del.sed
217 ########################################################################
219 ########################################################################