Fredrik Roubert | 64339d3 | 2016-10-21 19:43:16 +0200 | [diff] [blame] | 1 | # Copyright (C) 2016 and later: Unicode, Inc. and others. |
| 2 | # License & terms of use: http://www.unicode.org/copyright.html |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 3 | #****************************************************************************** |
| 4 | # |
Fredrik Roubert | 8de051c | 2016-03-10 13:13:27 +0100 | [diff] [blame] | 5 | # Copyright (C) 1998-2016, International Business Machines |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 6 | # Corporation and others. All Rights Reserved. |
| 7 | # |
| 8 | #****************************************************************************** |
| 9 | ## Top-level Makefile.in for ICU |
| 10 | ## Stephen F. Booth |
| 11 | |
| 12 | srcdir = @srcdir@ |
| 13 | top_srcdir = @top_srcdir@ |
| 14 | |
| 15 | top_builddir = . |
| 16 | |
| 17 | include $(top_builddir)/icudefs.mk |
| 18 | |
| 19 | docdir = $(datadir)/doc |
| 20 | docsubdir = $(PACKAGE)$(ICULIBDASHSUFFIX)/html |
claireho | 50294ea | 2010-05-03 15:44:48 -0700 | [diff] [blame] | 21 | docfilesdir = doc/html |
Craig Cornelius | 54dcd9b | 2013-02-15 14:03:14 -0800 | [diff] [blame] | 22 | docfiles = $(docfilesdir)/*.png $(docfilesdir)/*.html $(docfilesdir)/*.css $(docfilesdir)/*.tag |
claireho | 50294ea | 2010-05-03 15:44:48 -0700 | [diff] [blame] | 23 | docsrchdir = $(docfilesdir)/search |
| 24 | docsrchfiles = $(docsrchdir)/* |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 25 | |
| 26 | ## |
| 27 | |
| 28 | ## Build directory information |
| 29 | subdir = . |
| 30 | |
| 31 | #AUTOCONF = @AUTOCONF@ |
| 32 | |
| 33 | ## Optional directory setup |
ccornelius | f9878a2 | 2014-11-20 18:09:39 -0800 | [diff] [blame] | 34 | @LAYOUTEX_TRUE@LAYOUTEX = layoutex |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 35 | @ICUIO_TRUE@ICUIO = io |
| 36 | @EXTRAS_TRUE@EXTRA = extra |
Fredrik Roubert | ffdc27e | 2017-11-27 19:42:42 +0100 | [diff] [blame] | 37 | # need tools for tests |
| 38 | @TOOLS_TRUE@@TESTS_TRUE@TEST = test |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 39 | @SAMPLES_TRUE@SAMPLE = samples |
ccornelius | 59d709d | 2014-02-20 10:29:46 -0800 | [diff] [blame] | 40 | @TOOLS_TRUE@TOOLS = tools |
Fredrik Roubert | ffdc27e | 2017-11-27 19:42:42 +0100 | [diff] [blame] | 41 | @TOOLS_TRUE@DATASUBDIR = data |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 42 | |
Craig Cornelius | 54dcd9b | 2013-02-15 14:03:14 -0800 | [diff] [blame] | 43 | ## pkgconfig setup. Always have uc and i18n. Others are optional. |
| 44 | ALL_PKGCONFIG_SUFFIX=uc i18n |
ccornelius | f9878a2 | 2014-11-20 18:09:39 -0800 | [diff] [blame] | 45 | @LAYOUTEX_TRUE@ALL_PKGCONFIG_SUFFIX+= lx |
Craig Cornelius | 54dcd9b | 2013-02-15 14:03:14 -0800 | [diff] [blame] | 46 | @ICUIO_TRUE@ALL_PKGCONFIG_SUFFIX+= io |
| 47 | |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 48 | DOXYGEN = @DOXYGEN@ |
Claire Ho | 85bf2e2 | 2009-11-24 14:23:02 -0800 | [diff] [blame] | 49 | DOCZIP = icu-docs.zip |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 50 | |
Victor Chang | 4578a1c | 2018-10-22 04:26:58 +0100 | [diff] [blame] | 51 | INSTALL_ICU_CONFIG = @INSTALL_ICU_CONFIG@ |
| 52 | |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 53 | ## Files to remove for 'make clean' |
Claire Ho | 85bf2e2 | 2009-11-24 14:23:02 -0800 | [diff] [blame] | 54 | CLEANFILES = *~ |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 55 | |
claireho | 27f6547 | 2011-06-09 11:11:49 -0700 | [diff] [blame] | 56 | ALL_PKGCONFIG_FILES=$(ALL_PKGCONFIG_SUFFIX:%=$(top_builddir)/config/icu-%.pc) |
| 57 | |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 58 | ## Files built (autoconfed) and installed |
claireho | 27f6547 | 2011-06-09 11:11:49 -0700 | [diff] [blame] | 59 | INSTALLED_BUILT_FILES = $(top_builddir)/config/Makefile.inc $(top_builddir)/config/pkgdata.inc $(top_builddir)/config/icu-config @platform_make_fragment@ $(EXTRA_DATA:%=$(DESTDIR)$(pkglibdir)/%) $(ALL_PKGCONFIG_FILES) |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 60 | |
| 61 | ## Files built (autoconfed) but not installed |
Craig Cornelius | 8393335 | 2013-06-14 14:20:29 -0700 | [diff] [blame] | 62 | LOCAL_BUILT_FILES = icudefs.mk config/icucross.mk config/icucross.inc |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 63 | |
| 64 | DOCDIRS = common i18n |
Fredrik Roubert | ffdc27e | 2017-11-27 19:42:42 +0100 | [diff] [blame] | 65 | SUBDIRS = stubdata common i18n $(LAYOUTEX) $(ICUIO) $(TOOLS) $(DATASUBDIR) $(EXTRA) $(SAMPLE) $(TEST) |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 66 | |
| 67 | SECTION = 1 |
| 68 | |
Victor Chang | 4578a1c | 2018-10-22 04:26:58 +0100 | [diff] [blame] | 69 | ifeq ($(INSTALL_ICU_CONFIG),true) |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 70 | MANX_FILES = config/icu-config.$(SECTION) |
Victor Chang | 4578a1c | 2018-10-22 04:26:58 +0100 | [diff] [blame] | 71 | endif |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 72 | |
| 73 | ALL_MAN_FILES = $(MANX_FILES) |
| 74 | |
| 75 | ## Extra files to install [nothing at present] |
| 76 | EXTRA_DATA = |
| 77 | |
| 78 | ## List of phony targets |
| 79 | .PHONY : all all-local all-recursive install install-local install-udata install-udata-files install-udata-dlls \ |
| 80 | install-recursive clean clean-local clean-recursive distclean \ |
| 81 | distclean-local distclean-recursive doc dist dist-local dist-recursive \ |
| 82 | check check-local check-recursive clean-recursive-with-twist install-icu \ |
Craig Cornelius | 103e9ff | 2012-10-09 17:03:29 -0700 | [diff] [blame] | 83 | doc install-doc tests icu4j-data icu4j-data-install update-windows-makefiles xcheck-local xcheck-recursive xperf xcheck xperf-recursive \ |
| 84 | check-exhaustive check-exhaustive-local check-exhaustive-recursive releaseDist |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 85 | |
| 86 | ## Clear suffix list |
| 87 | .SUFFIXES : |
| 88 | |
| 89 | ## List of standard targets |
| 90 | all: all-local all-recursive |
| 91 | install: install-recursive install-local |
| 92 | clean: clean-recursive-with-twist clean-local |
| 93 | distclean : distclean-recursive distclean-local |
Fredrik Roubert | ffdc27e | 2017-11-27 19:42:42 +0100 | [diff] [blame] | 94 | dist: dist-recursive |
Claire Ho | 85bf2e2 | 2009-11-24 14:23:02 -0800 | [diff] [blame] | 95 | check: all check-recursive |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 96 | check-recursive: all |
claireho | 27f6547 | 2011-06-09 11:11:49 -0700 | [diff] [blame] | 97 | xcheck: all xcheck-recursive |
| 98 | xperf: all xperf-recursive |
Craig Cornelius | 103e9ff | 2012-10-09 17:03:29 -0700 | [diff] [blame] | 99 | check-exhaustive: all check-exhaustive-recursive |
| 100 | |
ccornelius | 59d709d | 2014-02-20 10:29:46 -0800 | [diff] [blame] | 101 | pcheck: all tests |
| 102 | @$(MAKE) -C test pcheck |
| 103 | |
Craig Cornelius | 103e9ff | 2012-10-09 17:03:29 -0700 | [diff] [blame] | 104 | check-exhaustive-local: check-local |
claireho | 27f6547 | 2011-06-09 11:11:49 -0700 | [diff] [blame] | 105 | |
| 106 | xcheck-recursive: all xcheck-local |
| 107 | @$(MAKE) -C test xcheck |
| 108 | |
| 109 | xperf-recursive: all tests |
| 110 | @$(MAKE) -C test/perf xperf |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 111 | |
Craig Cornelius | 103e9ff | 2012-10-09 17:03:29 -0700 | [diff] [blame] | 112 | $(top_builddir)/config/icuinfo.xml: all |
| 113 | @$(MAKE) -C tools/icuinfo check |
| 114 | |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 115 | ifeq ($(DOXYGEN),) |
Craig Cornelius | 103e9ff | 2012-10-09 17:03:29 -0700 | [diff] [blame] | 116 | doc doc-searchengine: |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 117 | @echo you need Doxygen to generate documentation. Doxygen can be found on the Web |
| 118 | @echo at http://www.doxygen.org/ |
| 119 | else |
| 120 | doc: doc/html/index.html |
| 121 | |
Fredrik Roubert | 64339d3 | 2016-10-21 19:43:16 +0200 | [diff] [blame] | 122 | doc-searchengine: Doxyfile $(wildcard ./common/unicode/platform.h $(srcdir)/common/unicode/*.h $(srcdir)/i18n/unicode/*.h $(srcdir)/io/unicode/*.h) |
Craig Cornelius | 103e9ff | 2012-10-09 17:03:29 -0700 | [diff] [blame] | 123 | sed < Doxyfile -e 's%[^#]*SEARCHENGINE.*%SEARCHENGINE=YES%' | $(DOXYGEN) - |
Craig Cornelius | 54dcd9b | 2013-02-15 14:03:14 -0800 | [diff] [blame] | 124 | @echo adding links from non-namespaced class files |
| 125 | find doc/html -name 'classicu_1_1*' -print | sed -e 's%^\(.*class\)icu_1_1\(.*\)$$%ln & \1\2%' | sh |
Craig Cornelius | 103e9ff | 2012-10-09 17:03:29 -0700 | [diff] [blame] | 126 | @echo Docs created - WARNING, probably contains non-GPL .js files |
| 127 | |
Fredrik Roubert | 64339d3 | 2016-10-21 19:43:16 +0200 | [diff] [blame] | 128 | doc/html/index.html: Doxyfile $(wildcard ./common/unicode/platform.h $(srcdir)/common/unicode/*.h $(srcdir)/i18n/unicode/*.h $(srcdir)/io/unicode/*.h) |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 129 | $(DOXYGEN) |
Craig Cornelius | 54dcd9b | 2013-02-15 14:03:14 -0800 | [diff] [blame] | 130 | @echo adding links from non-namespaced class files |
| 131 | find doc/html -name 'classicu_1_1*' -print | sed -e 's%^\(.*class\)icu_1_1\(.*\)$$%ln & \1\2%' | sh |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 132 | |
| 133 | Doxyfile: $(srcdir)/Doxyfile.in |
| 134 | CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status |
Claire Ho | 85bf2e2 | 2009-11-24 14:23:02 -0800 | [diff] [blame] | 135 | |
| 136 | $(DOCZIP): doc |
| 137 | -$(RMV) $(DOCZIP) |
| 138 | ( cd doc/html ; zip -r ../../$(DOCZIP) * ) |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 139 | endif |
| 140 | |
| 141 | LOCAL_SUBDIRS = $(SUBDIRS) |
ccornelius | 59d709d | 2014-02-20 10:29:46 -0800 | [diff] [blame] | 142 | CLEAN_FIRST_SUBDIRS = $(TOOLS) |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 143 | |
| 144 | $(LIBDIR) $(BINDIR): |
| 145 | -$(MKINSTALLDIRS) $@ |
| 146 | |
| 147 | ## Recursive targets |
Craig Cornelius | 103e9ff | 2012-10-09 17:03:29 -0700 | [diff] [blame] | 148 | all-recursive install-recursive clean-recursive distclean-recursive dist-recursive check-recursive check-exhaustive-recursive: $(LIBDIR) $(BINDIR) |
Fredrik Roubert | 0596fae | 2017-04-18 21:34:02 +0200 | [diff] [blame] | 149 | ifneq ($(NEED_ESCAPING),) |
| 150 | @echo "building tools/escapesrc (Needed for this platform with NEED_ESCAPING)" |
| 151 | @(cd tools/escapesrc && $(MAKE) RECURSIVE=YES $$local_target) || exit |
| 152 | endif |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 153 | @dot_seen=no; \ |
| 154 | target=`echo $@ | sed s/-recursive//`; \ |
| 155 | list='$(LOCAL_SUBDIRS)'; for subdir in $$list; do \ |
| 156 | echo "$(MAKE)[$(MAKELEVEL)]: Making \`$$target' in \`$$subdir'"; \ |
| 157 | if test "$$subdir" = "."; then \ |
| 158 | dot_seen=yes; \ |
| 159 | local_target="$$target-local"; \ |
| 160 | else \ |
| 161 | local_target="$$target"; \ |
| 162 | fi; \ |
| 163 | (cd $$subdir && $(MAKE) RECURSIVE=YES $$local_target) || exit; \ |
| 164 | done; \ |
| 165 | if test "$$dot_seen" = "no"; then \ |
| 166 | $(MAKE) "$$target-local" || exit; \ |
| 167 | fi |
| 168 | |
| 169 | clean-recursive-with-twist: |
| 170 | $(MAKE) clean-recursive LOCAL_SUBDIRS='$(CLEAN_FIRST_SUBDIRS) $(filter-out $(CLEAN_FIRST_SUBDIRS),$(LOCAL_SUBDIRS))' |
| 171 | |
| 172 | all-local: $(srcdir)/configure $(LOCAL_BUILT_FILES) $(INSTALLED_BUILT_FILES) |
Craig Cornelius | 54dcd9b | 2013-02-15 14:03:14 -0800 | [diff] [blame] | 173 | ifndef VERBOSE |
| 174 | @echo "Note: rebuild with \"$(MAKE) VERBOSE=1 $(MAKECMDGOALS)\" to show all compiler parameters." |
| 175 | endif |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 176 | install-local: install-icu install-manx |
| 177 | |
ccornelius | f9878a2 | 2014-11-20 18:09:39 -0800 | [diff] [blame] | 178 | # always installs. Used by layoutex. |
| 179 | install-pkgconfig: $(ALL_PKGCONFIG_FILES) |
| 180 | @$(MKINSTALLDIRS) $(DESTDIR)$(libdir)/pkgconfig |
| 181 | $(INSTALL_DATA) $(ALL_PKGCONFIG_FILES) $(DESTDIR)$(libdir)/pkgconfig/ |
| 182 | |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 183 | install-icu: $(INSTALLED_BUILT_FILES) |
| 184 | @$(MKINSTALLDIRS) $(DESTDIR)$(pkgdatadir)/config |
| 185 | @$(MKINSTALLDIRS) $(DESTDIR)$(pkglibdir) |
| 186 | @$(MKINSTALLDIRS) $(DESTDIR)$(bindir) |
| 187 | @$(MKINSTALLDIRS) $(DESTDIR)$(sbindir) |
| 188 | $(INSTALL_DATA) @platform_make_fragment@ $(DESTDIR)$(pkgdatadir)/config/@platform_make_fragment_name@ |
| 189 | $(INSTALL_SCRIPT) $(top_srcdir)/mkinstalldirs $(DESTDIR)$(pkgdatadir)/mkinstalldirs |
| 190 | $(INSTALL_SCRIPT) $(top_srcdir)/install-sh $(DESTDIR)$(pkgdatadir)/install-sh |
claireho | 27f6547 | 2011-06-09 11:11:49 -0700 | [diff] [blame] | 191 | @$(MKINSTALLDIRS) $(DESTDIR)$(libdir)/pkgconfig |
| 192 | $(INSTALL_DATA) $(ALL_PKGCONFIG_FILES) $(DESTDIR)$(libdir)/pkgconfig/ |
Fredrik Roubert | 8de051c | 2016-03-10 13:13:27 +0100 | [diff] [blame] | 193 | $(INSTALL_DATA) $(top_srcdir)/../LICENSE $(DESTDIR)$(pkgdatadir)/LICENSE |
Victor Chang | 4578a1c | 2018-10-22 04:26:58 +0100 | [diff] [blame] | 194 | ifeq ($(INSTALL_ICU_CONFIG),true) |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 195 | $(INSTALL_SCRIPT) $(top_builddir)/config/icu-config $(DESTDIR)$(bindir)/icu-config |
Victor Chang | 4578a1c | 2018-10-22 04:26:58 +0100 | [diff] [blame] | 196 | endif |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 197 | $(INSTALL_DATA) $(top_builddir)/config/Makefile.inc $(DESTDIR)$(pkglibdir)/Makefile.inc |
Claire Ho | 85bf2e2 | 2009-11-24 14:23:02 -0800 | [diff] [blame] | 198 | $(INSTALL_DATA) $(top_builddir)/config/pkgdata.inc $(DESTDIR)$(pkglibdir)/pkgdata.inc |
Craig Cornelius | 103e9ff | 2012-10-09 17:03:29 -0700 | [diff] [blame] | 199 | # @echo icuinfo.xml is built after make check. |
| 200 | # -$(INSTALL_DATA) $(top_builddir)/config/icuinfo.xml $(DESTDIR)$(pkglibdir)/icuinfo.xml |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 201 | cd $(DESTDIR)$(pkglibdir)/..; \ |
Victor Chang | 4578a1c | 2018-10-22 04:26:58 +0100 | [diff] [blame] | 202 | $(RMV) current && ln -s $(VERSION) current; \ |
Claire Ho | 85bf2e2 | 2009-11-24 14:23:02 -0800 | [diff] [blame] | 203 | $(RM) Makefile.inc && ln -s current/Makefile.inc Makefile.inc; \ |
| 204 | $(RM) pkgdata.inc && ln -s current/pkgdata.inc pkgdata.inc |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 205 | |
| 206 | ifeq ($(DOXYGEN),) |
| 207 | install-doc: |
| 208 | else |
| 209 | install-doc: doc |
| 210 | $(RM) -r $(DESTDIR)$(docdir)/$(docsubdir) |
Craig Cornelius | 54dcd9b | 2013-02-15 14:03:14 -0800 | [diff] [blame] | 211 | $(MKINSTALLDIRS) $(DESTDIR)$(docdir)/$(docsubdir) |
claireho | 50294ea | 2010-05-03 15:44:48 -0700 | [diff] [blame] | 212 | $(INSTALL_DATA) $(docfiles) $(DESTDIR)$(docdir)/$(docsubdir) |
Craig Cornelius | 54dcd9b | 2013-02-15 14:03:14 -0800 | [diff] [blame] | 213 | |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 214 | endif |
| 215 | |
| 216 | $(DESTDIR)$(pkglibdir)/%: $(top_srcdir)/../data/% |
| 217 | $(INSTALL_DATA) $< $@ |
| 218 | |
| 219 | # Build the tests, but don't run them. |
| 220 | tests: all |
| 221 | $(MAKE) -C $(top_builddir)/test |
| 222 | |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 223 | clean-local: |
| 224 | test -z "$(CLEANFILES)" || $(RMV) $(CLEANFILES) |
claireho | 27f6547 | 2011-06-09 11:11:49 -0700 | [diff] [blame] | 225 | -$(RMV) "test-*.xml" |
| 226 | -$(RMV) "perf-*.xml" |
Craig Cornelius | 103e9ff | 2012-10-09 17:03:29 -0700 | [diff] [blame] | 227 | -$(RMV) $(ALL_PKGCONFIG_FILES) $(top_builddir)/config/icuinfo.xml |
Claire Ho | 85bf2e2 | 2009-11-24 14:23:02 -0800 | [diff] [blame] | 228 | $(RMV) Doxyfile doc $(DOCZIP) |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 229 | |
| 230 | distclean-local: clean-local |
claireho | 27f6547 | 2011-06-09 11:11:49 -0700 | [diff] [blame] | 231 | $(RMV) $(top_builddir)/config/Makefile.inc $(top_builddir)/config/pkgdata.inc $(top_builddir)/config/icu-config $(top_builddir)/config/icu.pc $(ALL_PKGCONFIG_FILES) |
Craig Cornelius | 8393335 | 2013-06-14 14:20:29 -0700 | [diff] [blame] | 232 | $(RMV) config.cache config.log config.status $(top_builddir)/config/icucross.mk $(top_builddir)/config/icucross.inc autom4te.cache uconfig.h.prepend |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 233 | $(RMV) Makefile config/Makefile icudefs.mk $(LIBDIR) $(BINDIR) |
claireho | 27f6547 | 2011-06-09 11:11:49 -0700 | [diff] [blame] | 234 | -$(RMV) dist |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 235 | |
claireho | 27f6547 | 2011-06-09 11:11:49 -0700 | [diff] [blame] | 236 | check-local: xcheck-local |
| 237 | -$(RMV) test-local.xml |
| 238 | |
| 239 | xcheck-local: $(top_builddir)/config/icu-config $(top_builddir)/config/Makefile.inc $(top_builddir)/config/pkgdata.inc |
Claire Ho | 85bf2e2 | 2009-11-24 14:23:02 -0800 | [diff] [blame] | 240 | @echo verifying that icu-config --selfcheck can operate |
| 241 | @test "passed" = "$(shell $(top_builddir)/config/icu-config --selfcheck 2>&1)" || (echo "FAIL: icu-config could not run properly." ; exit 1) |
| 242 | @echo verifying that $(MAKE) -f Makefile.inc selfcheck can operate |
| 243 | @test "passed" = "$(shell $(MAKE) --no-print-directory -f $(top_builddir)/config/Makefile.inc SELFCHECK=1 selfcheck)" || (echo "FAIL: Makefile.inc could not run properly." ; exit 1 ) |
| 244 | @echo "PASS: config selfcheck OK" |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 245 | |
ccornelius | 59d709d | 2014-02-20 10:29:46 -0800 | [diff] [blame] | 246 | #$(srcdir)/configure : $(srcdir)/configure.ac $(top_srcdir)/aclocal.m4 |
| 247 | # cd $(srcdir) && aclocal && $(AUTOCONF) |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 248 | |
| 249 | icudefs.mk: $(srcdir)/icudefs.mk.in $(top_builddir)/config.status |
| 250 | cd $(top_builddir) \ |
| 251 | && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status |
| 252 | |
Claire Ho | 85bf2e2 | 2009-11-24 14:23:02 -0800 | [diff] [blame] | 253 | config/icucross.mk: $(top_builddir)/icudefs.mk $(top_builddir)/Makefile |
| 254 | @echo rebuilding $@ |
| 255 | @(echo "CROSS_ICU_VERSION=$(VERSION)" ;\ |
| 256 | echo "TOOLEXEEXT=$(EXEEXT)" \ |
| 257 | ) > $@ |
| 258 | @(echo 'TOOLBINDIR=$$(cross_buildroot)/bin' ;\ |
| 259 | echo 'TOOLLIBDIR=$$(cross_buildroot)/lib' ;\ |
| 260 | echo "INVOKE=$(LDLIBRARYPATH_ENVVAR)=$(LIBRARY_PATH_PREFIX)"'$$(TOOLLIBDIR):$$(cross_buildroot)/stubdata:$$(cross_buildroot)/tools/ctestfw:$$$$'"$(LDLIBRARYPATH_ENVVAR)" ;\ |
Craig Cornelius | 54dcd9b | 2013-02-15 14:03:14 -0800 | [diff] [blame] | 261 | echo "PKGDATA_INVOKE=$(LDLIBRARYPATH_ENVVAR)=$(LIBRARY_PATH_PREFIX)"'$$(cross_buildroot)/stubdata:$$(cross_buildroot)/tools/ctestfw:$$(TOOLLIBDIR):$$$$'"$(LDLIBRARYPATH_ENVVAR) " ;\ |
Claire Ho | 85bf2e2 | 2009-11-24 14:23:02 -0800 | [diff] [blame] | 262 | echo ) >> $@ |
| 263 | |
Craig Cornelius | 8393335 | 2013-06-14 14:20:29 -0700 | [diff] [blame] | 264 | config/icucross.inc: $(top_builddir)/icudefs.mk $(top_builddir)/Makefile @platform_make_fragment@ |
| 265 | @echo rebuilding $@ |
| 266 | @(grep '^CURR_FULL_DIR' $(top_builddir)/icudefs.mk ; \ |
| 267 | grep '^CURR_FULL_DIR' @platform_make_fragment@ || echo ""; \ |
| 268 | ) > $@ |
claireho | 27f6547 | 2011-06-09 11:11:49 -0700 | [diff] [blame] | 269 | |
| 270 | config/icu.pc: $(srcdir)/config/icu.pc.in |
| 271 | cd $(top_builddir) \ |
| 272 | && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status |
| 273 | |
| 274 | config/icu-uc.pc: config/icu.pc Makefile icudefs.mk |
| 275 | @cat config/icu.pc > $@ |
| 276 | @echo "Description: $(PACKAGE_ICU_DESCRIPTION): Common and Data libraries" >> $@ |
| 277 | @echo "Name: $(PACKAGE)-uc" >> $@ |
| 278 | @echo "Libs:" '-L$${libdir}' "${ICULIBS_UC}" "${ICULIBS_DT}" >> $@ |
| 279 | @echo "Libs.private:" '$${baselibs}' >> $@ |
| 280 | @echo $@ updated. |
| 281 | |
| 282 | config/icu-i18n.pc: config/icu.pc Makefile icudefs.mk |
| 283 | @cat config/icu.pc > $@ |
| 284 | @echo "Description: $(PACKAGE_ICU_DESCRIPTION): Internationalization library" >> $@ |
| 285 | @echo "Name: $(PACKAGE)-i18n" >> $@ |
| 286 | @echo "Requires: icu-uc" >> $@ |
| 287 | @echo "Libs:" "${ICULIBS_I18N}" >> $@ |
| 288 | @echo $@ updated. |
| 289 | |
| 290 | config/icu-io.pc: config/icu.pc Makefile icudefs.mk |
| 291 | @cat config/icu.pc > $@ |
| 292 | @echo "Description: $(PACKAGE_ICU_DESCRIPTION): Stream and I/O Library" >> $@ |
| 293 | @echo "Name: $(PACKAGE)-io" >> $@ |
| 294 | @echo "Requires: icu-i18n" >> $@ |
| 295 | @echo "Libs:" "${ICULIBS_IO}" >> $@ |
| 296 | @echo $@ updated. |
| 297 | |
ccornelius | f9878a2 | 2014-11-20 18:09:39 -0800 | [diff] [blame] | 298 | ICULEHB_LIBS=@ICULEHB_LIBS@ |
| 299 | USING_HB= |
| 300 | ifneq ($(ICULEHB_LIBS),) |
| 301 | USING_HB=(Using HarfBuzz) |
| 302 | endif |
| 303 | |
| 304 | |
claireho | 27f6547 | 2011-06-09 11:11:49 -0700 | [diff] [blame] | 305 | config/icu-lx.pc: config/icu.pc Makefile icudefs.mk |
| 306 | @cat config/icu.pc > $@ |
ccornelius | f9878a2 | 2014-11-20 18:09:39 -0800 | [diff] [blame] | 307 | @echo "Description: $(PACKAGE_ICU_DESCRIPTION): Paragraph Layout library $(USING_HB)" >> $@ |
claireho | 27f6547 | 2011-06-09 11:11:49 -0700 | [diff] [blame] | 308 | @echo "Name: $(PACKAGE)-lx" >> $@ |
ccornelius | f9878a2 | 2014-11-20 18:09:39 -0800 | [diff] [blame] | 309 | ifneq ($(ICULEHB_LIBS),) |
| 310 | @echo "Requires: icu-le-hb icu-uc" >> $@ |
| 311 | else |
claireho | 27f6547 | 2011-06-09 11:11:49 -0700 | [diff] [blame] | 312 | @echo "Requires: icu-le" >> $@ |
ccornelius | f9878a2 | 2014-11-20 18:09:39 -0800 | [diff] [blame] | 313 | endif |
claireho | 27f6547 | 2011-06-09 11:11:49 -0700 | [diff] [blame] | 314 | @echo "Libs:" "${ICULIBS_LX}" >> $@ |
| 315 | @echo $@ updated. |
| 316 | |
| 317 | |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 318 | Makefile: $(srcdir)/Makefile.in icudefs.mk $(top_builddir)/config.status |
| 319 | cd $(top_builddir) \ |
| 320 | && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status |
| 321 | |
| 322 | $(top_builddir)/config/Makefile.inc: $(srcdir)/config/Makefile.inc.in $(top_builddir)/config.status |
| 323 | cd $(top_builddir) \ |
| 324 | && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status |
| 325 | |
Claire Ho | 85bf2e2 | 2009-11-24 14:23:02 -0800 | [diff] [blame] | 326 | $(top_builddir)/config/pkgdata.inc: icudefs.mk $(top_builddir)/config/pkgdataMakefile |
| 327 | cd $(top_builddir)/config; \ |
| 328 | $(MAKE) -f pkgdataMakefile |
| 329 | |
| 330 | $(top_builddir)/config/pkgdataMakefile: |
| 331 | cd $(top_builddir) \ |
| 332 | && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status |
| 333 | |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 334 | $(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 |
| 335 | -$(RMV) $@ |
| 336 | $(INSTALL_SCRIPT) $(top_srcdir)/config/icu-config-top $@ |
| 337 | chmod u+w $@ |
Fredrik Roubert | 0596fae | 2017-04-18 21:34:02 +0200 | [diff] [blame] | 338 | @echo "# Following from icu/icu4c/source/config/Makefile.inc" >> $@ |
| 339 | LC_ALL=C $(SED) -f $(top_srcdir)/config/make2sh.sed < $(top_builddir)/config/Makefile.inc | grep -v '#M#' | uniq >> $@ |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 340 | @echo "# Following from @platform_make_fragment@" >> $@ |
Fredrik Roubert | 0596fae | 2017-04-18 21:34:02 +0200 | [diff] [blame] | 341 | LC_ALL=C $(SED) -f $(top_srcdir)/config/make2sh.sed < @platform_make_fragment@ | grep -v '#M#' | uniq >> $@ |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 342 | cat $(top_srcdir)/config/icu-config-bottom >> $@ |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 343 | chmod u-w $@ |
| 344 | |
claireho | 50294ea | 2010-05-03 15:44:48 -0700 | [diff] [blame] | 345 | config.status: $(srcdir)/configure $(srcdir)/common/unicode/uvernum.h |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 346 | @echo |
| 347 | @echo |
| 348 | @echo "*** config.status has become stale ***" |
claireho | 50294ea | 2010-05-03 15:44:48 -0700 | [diff] [blame] | 349 | @echo " 'configure' and/or 'uvernum.h' have changed, please" |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 350 | @echo " do 'runConfigureICU' (or 'configure') again, as per" |
| 351 | @echo " the readme.html." |
| 352 | @echo |
| 353 | @echo |
| 354 | exit 1 |
| 355 | |
| 356 | |
| 357 | install-manx: $(MANX_FILES) |
| 358 | $(MKINSTALLDIRS) $(DESTDIR)$(mandir)/man$(SECTION) |
Victor Chang | 4578a1c | 2018-10-22 04:26:58 +0100 | [diff] [blame] | 359 | ifneq ($(MANX_FILES),) |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 360 | $(INSTALL_DATA) $? $(DESTDIR)$(mandir)/man$(SECTION) |
Victor Chang | 4578a1c | 2018-10-22 04:26:58 +0100 | [diff] [blame] | 361 | endif |
Jean-Baptiste Queru | b13da9d | 2009-07-17 17:53:22 -0700 | [diff] [blame] | 362 | |
| 363 | config/%.$(SECTION): $(srcdir)/config/%.$(SECTION).in |
| 364 | cd $(top_builddir) \ |
| 365 | && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status |
| 366 | |
claireho | 50294ea | 2010-05-03 15:44:48 -0700 | [diff] [blame] | 367 | icu4j-data-install icu4j-data: all tests |
| 368 | @echo ICU4J_ROOT=$(ICU4J_ROOT) |
| 369 | @$(MAKE) -C test/testdata $@ |
| 370 | @$(MAKE) -C data $@ |
| 371 | |
claireho | 27f6547 | 2011-06-09 11:11:49 -0700 | [diff] [blame] | 372 | # For updating Windows makefiles |
| 373 | |
| 374 | WINDOWS_UPDATEFILES=$(srcdir)/data/makedata.mak $(shell find $(srcdir) -name '*.vcproj' -o -name '*.vcxproj') |
claireho | 50294ea | 2010-05-03 15:44:48 -0700 | [diff] [blame] | 375 | |
| 376 | WINDOWS_UPDATEFILES_SED=config/windows-update.sed |
| 377 | |
| 378 | update-windows-makefiles: config.status |
| 379 | @echo Updating Windows Makefiles for ICU $(VERSION) |
| 380 | CONFIG_FILES=$(WINDOWS_UPDATEFILES_SED) CONFIG_HEADERS= $(SHELL) ./config.status |
| 381 | @for file in $(WINDOWS_UPDATEFILES); do \ |
| 382 | echo "Updating $$file"; \ |
| 383 | mv "$${file}" "$${file}.bak" && \ |
| 384 | sed -f $(WINDOWS_UPDATEFILES_SED) < "$${file}.bak" > "$${file}" && \ |
| 385 | rm "$${file}.bak"; \ |
| 386 | done; |
| 387 | $(RMV) $(WINDOWS_UPDATEFILES_SED) |
| 388 | @echo Please check over the changes carefully before checking them in. |
claireho | 27f6547 | 2011-06-09 11:11:49 -0700 | [diff] [blame] | 389 | |
| 390 | # For building a source distribution. |
| 391 | distcheck dist-local: |
Craig Cornelius | 54dcd9b | 2013-02-15 14:03:14 -0800 | [diff] [blame] | 392 | $(MAKE) -C . -f $(top_srcdir)/config/dist.mk srcdir="$(srcdir)" top_srcdir="$(top_srcdir)" $@ |
Craig Cornelius | 103e9ff | 2012-10-09 17:03:29 -0700 | [diff] [blame] | 393 | |
| 394 | ifeq ($(DESTDIR),) |
| 395 | releaseDist: |
| 396 | @echo "Please provide DESTDIR when calling the target releaseDist." |
| 397 | else |
| 398 | releaseDist: install |
| 399 | @echo -n "ICU Version: " > $(DESTDIR)/readme.txt |
| 400 | @echo `./config/icu-config --noverify --version` >> $(DESTDIR)/readme.txt |
| 401 | @echo -n "HOST: " >> $(DESTDIR)/readme.txt |
| 402 | @echo `./config/icu-config --noverify --host` >> $(DESTDIR)/readme.txt |
| 403 | @echo -n "CC Compiler: " >> $(DESTDIR)/readme.txt |
| 404 | @echo `./config/icu-config --noverify --cc` >> $(DESTDIR)/readme.txt |
| 405 | @echo -n "CXX Compiler: " >> $(DESTDIR)/readme.txt |
| 406 | @echo `./config/icu-config --noverify --cxx` >> $(DESTDIR)/readme.txt |
| 407 | endif |
| 408 | |
| 409 | check-installed-icu: install |
| 410 | @echo "Testing ICU installed in $(prefix)" |
| 411 | $(INSTALLED_INVOKE) $(bindir)/icuinfo$(EXEEXT) |
| 412 | $(INSTALLED_INVOKE) $(bindir)/uconv$(EXEEXT) -V |
| 413 | $(INSTALLED_INVOKE) $(bindir)/genrb$(EXEEXT) -V |
| 414 | $(INSTALLED_INVOKE) $(bindir)/gencnval$(EXEEXT) -h |
| 415 | @echo INSTALLED ICU IN "$(prefix)" OK! |