]> git.saurik.com Git - apple/icu.git/blame - icuSources/Makefile.in
ICU-8.11.4.tar.gz
[apple/icu.git] / icuSources / Makefile.in
CommitLineData
b75a7d8f
A
1#******************************************************************************
2#
73c04bcf 3# Copyright (C) 1998-2006, International Business Machines
b75a7d8f
A
4# Corporation and others. All Rights Reserved.
5#
6#******************************************************************************
7## Top-level Makefile.in for ICU
8## Stephen F. Booth
9
10srcdir = @srcdir@
11top_srcdir = @top_srcdir@
12
13top_builddir = .
14
15include $(top_builddir)/icudefs.mk
16
17docdir = $(datadir)/doc
18docsubdir = $(PACKAGE)$(ICULIBDASHSUFFIX)/html
19
20##
21
22## Build directory information
23subdir = .
24
374ca955 25#AUTOCONF = @AUTOCONF@
b75a7d8f
A
26
27## Optional directory setup
b75a7d8f 28@LAYOUT_TRUE@LAYOUT = layout layoutex
374ca955
A
29@ICUIO_TRUE@ICUIO = io
30@EXTRAS_TRUE@EXTRA = extra
b75a7d8f 31@TESTS_TRUE@TEST = test
b75a7d8f 32@SAMPLES_TRUE@SAMPLE = samples
b75a7d8f
A
33
34DOXYGEN = @DOXYGEN@
35
36## Files to remove for 'make clean'
374ca955 37CLEANFILES = *~
b75a7d8f
A
38
39## Files built (autoconfed) and installed
374ca955 40INSTALLED_BUILT_FILES = $(top_builddir)/config/Makefile.inc $(top_builddir)/config/icu-config @platform_make_fragment@ $(EXTRA_DATA:%=$(DESTDIR)$(pkglibdir)/%)
b75a7d8f
A
41
42## Files built (autoconfed) but not installed
43LOCAL_BUILT_FILES = icudefs.mk
44
45DOCDIRS = common i18n
374ca955 46SUBDIRS = stubdata common i18n $(LAYOUT) tools data $(ICUIO) $(EXTRA) $(SAMPLE) $(TEST)
b75a7d8f
A
47
48SECTION = 1
49
50MANX_FILES = config/icu-config.$(SECTION)
51
52ALL_MAN_FILES = $(MANX_FILES)
53
54## Extra files to install [nothing at present]
55EXTRA_DATA =
56
57## List of phony targets
58.PHONY : all all-local all-recursive install install-local install-udata install-udata-files install-udata-dlls \
59install-recursive clean clean-local clean-recursive distclean \
60distclean-local distclean-recursive doc dist dist-local dist-recursive \
61check check-local check-recursive clean-recursive-with-twist install-icu \
62doc install-doc
63
64## Clear suffix list
65.SUFFIXES :
66
67## List of standard targets
68all: all-local all-recursive
69install: install-recursive install-local
70clean: clean-recursive-with-twist clean-local
71distclean : distclean-recursive distclean-local
72dist: dist-recursive dist-local
73check: all check-recursive check-local
374ca955 74check-recursive: all
b75a7d8f
A
75
76ifeq ($(DOXYGEN),)
77doc:
78 @echo you need Doxygen to generate documentation. Doxygen can be found on the Web
79 @echo at http://www.doxygen.org/
80else
81doc: doc/html/index.html
82
374ca955 83doc/html/index.html: Doxyfile $(wildcard ./common/unicode/platform.h $(srcdir)/common/unicode/*.h $(srcdir)/i18n/unicode/*.h $(srcdir)/layout/unicode/*.h $(srcdir)/io/unicode/*.h)
b75a7d8f
A
84 $(DOXYGEN)
85
86Doxyfile: $(srcdir)/Doxyfile.in
87 CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status
88endif
89
90LOCAL_SUBDIRS = $(SUBDIRS)
91CLEAN_FIRST_SUBDIRS = tools
92
374ca955
A
93$(LIBDIR) $(BINDIR):
94 -$(MKINSTALLDIRS) $@
95
b75a7d8f 96## Recursive targets
374ca955 97all-recursive install-recursive clean-recursive distclean-recursive dist-recursive check-recursive: $(LIBDIR) $(BINDIR)
b75a7d8f
A
98 @dot_seen=no; \
99 target=`echo $@ | sed s/-recursive//`; \
100 list='$(LOCAL_SUBDIRS)'; for subdir in $$list; do \
101 echo "$(MAKE)[$(MAKELEVEL)]: Making \`$$target' in \`$$subdir'"; \
102 if test "$$subdir" = "."; then \
103 dot_seen=yes; \
104 local_target="$$target-local"; \
105 else \
106 local_target="$$target"; \
107 fi; \
108 (cd $$subdir && $(MAKE) RECURSIVE=YES $$local_target) || exit; \
109 done; \
110 if test "$$dot_seen" = "no"; then \
111 $(MAKE) "$$target-local" || exit; \
112 fi
113
114clean-recursive-with-twist:
115 $(MAKE) clean-recursive LOCAL_SUBDIRS='$(CLEAN_FIRST_SUBDIRS) $(filter-out $(CLEAN_FIRST_SUBDIRS),$(LOCAL_SUBDIRS))'
116
117all-local: $(srcdir)/configure $(LOCAL_BUILT_FILES) $(INSTALLED_BUILT_FILES)
118
119install-local: install-icu install-manx
120
121install-icu: $(INSTALLED_BUILT_FILES)
122 @$(MKINSTALLDIRS) $(DESTDIR)$(pkgdatadir)/config
123 @$(MKINSTALLDIRS) $(DESTDIR)$(pkglibdir)
124 @$(MKINSTALLDIRS) $(DESTDIR)$(bindir)
125 @$(MKINSTALLDIRS) $(DESTDIR)$(sbindir)
374ca955
A
126 $(INSTALL_DATA) @platform_make_fragment@ $(DESTDIR)$(pkgdatadir)/config/@platform_make_fragment_name@
127 $(INSTALL_SCRIPT) $(top_srcdir)/mkinstalldirs $(DESTDIR)$(pkgdatadir)/mkinstalldirs
128 $(INSTALL_DATA) $(top_srcdir)/../license.html $(DESTDIR)$(pkgdatadir)/license.html
129 $(INSTALL_SCRIPT) $(top_builddir)/config/icu-config $(DESTDIR)$(bindir)/icu-config
b75a7d8f
A
130 $(INSTALL_DATA) $(top_builddir)/config/Makefile.inc $(DESTDIR)$(pkglibdir)/Makefile.inc
131 cd $(DESTDIR)$(pkglibdir)/..; \
132 $(RM) current && ln -s $(VERSION) current; \
73c04bcf 133 $(RM) Makefile.inc && ln -s current/Makefile.inc Makefile.inc
b75a7d8f
A
134
135ifeq ($(DOXYGEN),)
136install-doc:
137else
138install-doc: doc
139 $(RM) -r $(DESTDIR)$(docdir)/$(docsubdir)
140 $(MKINSTALLDIRS) $(DESTDIR)$(docdir)/$(docsubdir)
141 $(INSTALL_DATA) doc/html/* $(DESTDIR)$(docdir)/$(docsubdir)
142endif
143
144$(DESTDIR)$(pkglibdir)/%: $(top_srcdir)/../data/%
145 $(INSTALL_DATA) $< $@
146
147dist-local:
148
149clean-local:
150 test -z "$(CLEANFILES)" || $(RMV) $(CLEANFILES)
151 $(RMV) Doxyfile doc
152
153distclean-local: clean-local
154 $(RMV) Makefile config/Makefile icudefs.mk
155 $(RMV) $(top_builddir)/config/Makefile.inc $(top_builddir)/config/icu-config
156 $(RMV) config.cache config.log config.status
157
158check-local:
159
160#$(srcdir)/configure : $(srcdir)/configure.in $(top_srcdir)/aclocal.m4
161# cd $(srcdir) && $(AUTOCONF)
162
163icudefs.mk: $(srcdir)/icudefs.mk.in $(top_builddir)/config.status
164 cd $(top_builddir) \
165 && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
166
b75a7d8f
A
167Makefile: $(srcdir)/Makefile.in icudefs.mk $(top_builddir)/config.status
168 cd $(top_builddir) \
169 && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
170
171$(top_builddir)/config/Makefile.inc: $(srcdir)/config/Makefile.inc.in $(top_builddir)/config.status
172 cd $(top_builddir) \
173 && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status
174
175$(top_builddir)/config/icu-config: $(top_builddir)/Makefile $(top_srcdir)/config/icu-config-top $(top_srcdir)/config/icu-config-bottom $(top_builddir)/config/Makefile.inc @platform_make_fragment@ $(top_srcdir)/config/make2sh.sed
176 -$(RMV) $@
374ca955 177 $(INSTALL_SCRIPT) $(top_srcdir)/config/icu-config-top $@
73c04bcf 178 chmod u+w $@
b75a7d8f
A
179 @echo "# Following from @platform_make_fragment@" >> $@
180 sed -f $(top_srcdir)/config/make2sh.sed < $(top_builddir)/config/Makefile.inc | grep -v '#M#' | uniq >> $@
181 sed -f $(top_srcdir)/config/make2sh.sed < @platform_make_fragment@ | grep -v '#M#' | uniq >> $@
182 cat $(top_srcdir)/config/icu-config-bottom >> $@
183 echo "# Rebuilt on "`date` >> $@
73c04bcf 184 chmod u-w $@
b75a7d8f
A
185
186config.status: $(srcdir)/configure $(srcdir)/common/unicode/uversion.h
187 @echo
188 @echo
189 @echo "*** config.status has become stale ***"
190 @echo " 'configure' and/or 'uversion.h' have changed, please"
191 @echo " do 'runConfigureICU' (or 'configure') again, as per"
192 @echo " the readme.html."
193 @echo
194 @echo
195 exit 1
196
197
198install-manx: $(MANX_FILES)
199 $(MKINSTALLDIRS) $(DESTDIR)$(mandir)/man$(SECTION)
200 $(INSTALL_DATA) $? $(DESTDIR)$(mandir)/man$(SECTION)
201
202config/%.$(SECTION): $(srcdir)/config/%.$(SECTION).in
203 cd $(top_builddir) \
204 && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
205