X-Git-Url: https://git.saurik.com/apple/icu.git/blobdiff_plain/57a6839dcb3bba09e8228b822b290604668416fe..c5116b9f5a666b9d59f443b3770acd6ef64dc6c3:/icuSources/Makefile.in diff --git a/icuSources/Makefile.in b/icuSources/Makefile.in index c24948a4..be9435ba 100644 --- a/icuSources/Makefile.in +++ b/icuSources/Makefile.in @@ -1,6 +1,8 @@ +# Copyright (C) 2016 and later: Unicode, Inc. and others. +# License & terms of use: http://www.unicode.org/copyright.html #****************************************************************************** # -# Copyright (C) 1998-2013, International Business Machines +# Copyright (C) 1998-2016, International Business Machines # Corporation and others. All Rights Reserved. # #****************************************************************************** @@ -29,21 +31,25 @@ subdir = . #AUTOCONF = @AUTOCONF@ ## Optional directory setup -@LAYOUT_TRUE@LAYOUT = layout layoutex +@LAYOUTEX_TRUE@LAYOUTEX = layoutex @ICUIO_TRUE@ICUIO = io @EXTRAS_TRUE@EXTRA = extra -@TESTS_TRUE@TEST = test +# need tools for tests +@TOOLS_TRUE@@TESTS_TRUE@TEST = test @SAMPLES_TRUE@SAMPLE = samples @TOOLS_TRUE@TOOLS = tools +@TOOLS_TRUE@DATASUBDIR = data ## pkgconfig setup. Always have uc and i18n. Others are optional. ALL_PKGCONFIG_SUFFIX=uc i18n -@LAYOUT_TRUE@ALL_PKGCONFIG_SUFFIX+= le lx +@LAYOUTEX_TRUE@ALL_PKGCONFIG_SUFFIX+= lx @ICUIO_TRUE@ALL_PKGCONFIG_SUFFIX+= io DOXYGEN = @DOXYGEN@ DOCZIP = icu-docs.zip +INSTALL_ICU_CONFIG = @INSTALL_ICU_CONFIG@ + ## Files to remove for 'make clean' CLEANFILES = *~ @@ -56,11 +62,13 @@ INSTALLED_BUILT_FILES = $(top_builddir)/config/Makefile.inc $(top_builddir)/conf LOCAL_BUILT_FILES = icudefs.mk config/icucross.mk config/icucross.inc DOCDIRS = common i18n -SUBDIRS = stubdata common i18n $(LAYOUT) $(ICUIO) $(TOOLS) data $(EXTRA) $(SAMPLE) $(TEST) +SUBDIRS = stubdata common i18n $(LAYOUTEX) $(ICUIO) $(TOOLS) $(DATASUBDIR) $(EXTRA) $(SAMPLE) $(TEST) SECTION = 1 +ifeq ($(INSTALL_ICU_CONFIG),true) MANX_FILES = config/icu-config.$(SECTION) +endif ALL_MAN_FILES = $(MANX_FILES) @@ -83,7 +91,7 @@ all: all-local all-recursive install: install-recursive install-local clean: clean-recursive-with-twist clean-local distclean : distclean-recursive distclean-local -dist: dist-recursive dist-local +dist: dist-recursive check: all check-recursive check-recursive: all xcheck: all xcheck-recursive @@ -111,13 +119,13 @@ doc doc-searchengine: else doc: doc/html/index.html -doc-searchengine: Doxyfile $(wildcard ./common/unicode/platform.h $(srcdir)/common/unicode/*.h $(srcdir)/i18n/unicode/*.h $(srcdir)/layout/unicode/*.h $(srcdir)/io/unicode/*.h) +doc-searchengine: Doxyfile $(wildcard ./common/unicode/platform.h $(srcdir)/common/unicode/*.h $(srcdir)/i18n/unicode/*.h $(srcdir)/io/unicode/*.h) sed < Doxyfile -e 's%[^#]*SEARCHENGINE.*%SEARCHENGINE=YES%' | $(DOXYGEN) - @echo adding links from non-namespaced class files find doc/html -name 'classicu_1_1*' -print | sed -e 's%^\(.*class\)icu_1_1\(.*\)$$%ln & \1\2%' | sh @echo Docs created - WARNING, probably contains non-GPL .js files -doc/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) +doc/html/index.html: Doxyfile $(wildcard ./common/unicode/platform.h $(srcdir)/common/unicode/*.h $(srcdir)/i18n/unicode/*.h $(srcdir)/io/unicode/*.h) $(DOXYGEN) @echo adding links from non-namespaced class files find doc/html -name 'classicu_1_1*' -print | sed -e 's%^\(.*class\)icu_1_1\(.*\)$$%ln & \1\2%' | sh @@ -138,6 +146,10 @@ $(LIBDIR) $(BINDIR): ## Recursive targets all-recursive install-recursive clean-recursive distclean-recursive dist-recursive check-recursive check-exhaustive-recursive: $(LIBDIR) $(BINDIR) +ifneq ($(NEED_ESCAPING),) + @echo "building tools/escapesrc (Needed for this platform with NEED_ESCAPING)" + @(cd tools/escapesrc && $(MAKE) RECURSIVE=YES $$local_target) || exit +endif @dot_seen=no; \ target=`echo $@ | sed s/-recursive//`; \ list='$(LOCAL_SUBDIRS)'; for subdir in $$list; do \ @@ -163,6 +175,11 @@ ifndef VERBOSE endif install-local: install-icu install-manx +# always installs. Used by layoutex. +install-pkgconfig: $(ALL_PKGCONFIG_FILES) + @$(MKINSTALLDIRS) $(DESTDIR)$(libdir)/pkgconfig + $(INSTALL_DATA) $(ALL_PKGCONFIG_FILES) $(DESTDIR)$(libdir)/pkgconfig/ + install-icu: $(INSTALLED_BUILT_FILES) @$(MKINSTALLDIRS) $(DESTDIR)$(pkgdatadir)/config @$(MKINSTALLDIRS) $(DESTDIR)$(pkglibdir) @@ -173,14 +190,16 @@ install-icu: $(INSTALLED_BUILT_FILES) $(INSTALL_SCRIPT) $(top_srcdir)/install-sh $(DESTDIR)$(pkgdatadir)/install-sh @$(MKINSTALLDIRS) $(DESTDIR)$(libdir)/pkgconfig $(INSTALL_DATA) $(ALL_PKGCONFIG_FILES) $(DESTDIR)$(libdir)/pkgconfig/ - $(INSTALL_DATA) $(top_srcdir)/../license.html $(DESTDIR)$(pkgdatadir)/license.html + $(INSTALL_DATA) $(top_srcdir)/../LICENSE $(DESTDIR)$(pkgdatadir)/LICENSE +ifeq ($(INSTALL_ICU_CONFIG),true) $(INSTALL_SCRIPT) $(top_builddir)/config/icu-config $(DESTDIR)$(bindir)/icu-config +endif $(INSTALL_DATA) $(top_builddir)/config/Makefile.inc $(DESTDIR)$(pkglibdir)/Makefile.inc $(INSTALL_DATA) $(top_builddir)/config/pkgdata.inc $(DESTDIR)$(pkglibdir)/pkgdata.inc # @echo icuinfo.xml is built after make check. # -$(INSTALL_DATA) $(top_builddir)/config/icuinfo.xml $(DESTDIR)$(pkglibdir)/icuinfo.xml cd $(DESTDIR)$(pkglibdir)/..; \ - $(RM) current && ln -s $(VERSION) current; \ + $(RMV) current && ln -s $(VERSION) current; \ $(RM) Makefile.inc && ln -s current/Makefile.inc Makefile.inc; \ $(RM) pkgdata.inc && ln -s current/pkgdata.inc pkgdata.inc @@ -276,19 +295,22 @@ config/icu-io.pc: config/icu.pc Makefile icudefs.mk @echo "Libs:" "${ICULIBS_IO}" >> $@ @echo $@ updated. -config/icu-le.pc: config/icu.pc Makefile icudefs.mk - @cat config/icu.pc > $@ - @echo "Description: $(PACKAGE_ICU_DESCRIPTION): Layout library" >> $@ - @echo "Name: $(PACKAGE)-le" >> $@ - @echo "Requires: icu-uc" >> $@ - @echo "Libs:" "${ICULIBS_LE}" >> $@ - @echo $@ updated. +ICULEHB_LIBS=@ICULEHB_LIBS@ +USING_HB= +ifneq ($(ICULEHB_LIBS),) +USING_HB=(Using HarfBuzz) +endif + config/icu-lx.pc: config/icu.pc Makefile icudefs.mk @cat config/icu.pc > $@ - @echo "Description: $(PACKAGE_ICU_DESCRIPTION): Paragraph Layout library" >> $@ + @echo "Description: $(PACKAGE_ICU_DESCRIPTION): Paragraph Layout library $(USING_HB)" >> $@ @echo "Name: $(PACKAGE)-lx" >> $@ +ifneq ($(ICULEHB_LIBS),) + @echo "Requires: icu-le-hb icu-uc" >> $@ +else @echo "Requires: icu-le" >> $@ +endif @echo "Libs:" "${ICULIBS_LX}" >> $@ @echo $@ updated. @@ -313,11 +335,11 @@ $(top_builddir)/config/icu-config: $(top_builddir)/Makefile $(top_srcdir)/config -$(RMV) $@ $(INSTALL_SCRIPT) $(top_srcdir)/config/icu-config-top $@ chmod u+w $@ + @echo "# Following from icu/icu4c/source/config/Makefile.inc" >> $@ + LC_ALL=C $(SED) -f $(top_srcdir)/config/make2sh.sed < $(top_builddir)/config/Makefile.inc | grep -v '#M#' | uniq >> $@ @echo "# Following from @platform_make_fragment@" >> $@ - LC_ALL=C sed -f $(top_srcdir)/config/make2sh.sed < $(top_builddir)/config/Makefile.inc | grep -v '#M#' | uniq >> $@ - LC_ALL=C sed -f $(top_srcdir)/config/make2sh.sed < @platform_make_fragment@ | grep -v '#M#' | uniq >> $@ + LC_ALL=C $(SED) -f $(top_srcdir)/config/make2sh.sed < @platform_make_fragment@ | grep -v '#M#' | uniq >> $@ cat $(top_srcdir)/config/icu-config-bottom >> $@ - echo "# Rebuilt on "`date` >> $@ chmod u-w $@ config.status: $(srcdir)/configure $(srcdir)/common/unicode/uvernum.h @@ -334,7 +356,9 @@ config.status: $(srcdir)/configure $(srcdir)/common/unicode/uvernum.h install-manx: $(MANX_FILES) $(MKINSTALLDIRS) $(DESTDIR)$(mandir)/man$(SECTION) +ifneq ($(MANX_FILES),) $(INSTALL_DATA) $? $(DESTDIR)$(mandir)/man$(SECTION) +endif config/%.$(SECTION): $(srcdir)/config/%.$(SECTION).in cd $(top_builddir) \