intl/icu/source/tools/genren/Makefile

changeset 0
6474c204b198
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/intl/icu/source/tools/genren/Makefile	Wed Dec 31 06:09:35 2014 +0100
     1.3 @@ -0,0 +1,100 @@
     1.4 +#******************************************************************************
     1.5 +#
     1.6 +#   Copyright (C) 2002-2011, International Business Machines
     1.7 +#   Corporation and others.  All Rights Reserved.
     1.8 +#
     1.9 +#******************************************************************************
    1.10 +
    1.11 +TOP=../..
    1.12 +
    1.13 +srcdir = .
    1.14 +top_srcdir = $(TOP)
    1.15 +top_builddir = $(TOP)
    1.16 +
    1.17 +# override if you have an out-of-source build (not yet working.)
    1.18 +BUILDDIR = $(top_builddir)
    1.19 +
    1.20 +ICUDIR=ICUunrenamed
    1.21 +
    1.22 +# Extra flags to prevent internal API from being hidden.
    1.23 +# This is important because ELF (Linux) based platforms that don't hide internal
    1.24 +# API will allow a duplicate internal name to resolve to an external library.
    1.25 +# See the gcc manual on the "visibility" attribute for details.
    1.26 +FLAG_OVERRIDE= LIBCFLAGS= LIBCXXFLAGS= $(EXTRA_MAKE_OPTIONS)
    1.27 +
    1.28 +## any local overrides
    1.29 +-include Makefile.local
    1.30 +
    1.31 +#  load definition of .SO, etc (but not if we are doing 'make clean')
    1.32 +ifneq ($(patsubst %clean,,$(MAKECMDGOALS)),)
    1.33 +include $(BUILDDIR)/icudefs.mk
    1.34 +endif
    1.35 +
    1.36 +COM=$(ICUDIR)/lib/libicuuc.$(SO)
    1.37 +I18=$(ICUDIR)/lib/libicui18n.$(SO)
    1.38 +LAY=$(ICUDIR)/lib/libicule.$(SO)
    1.39 +LEX=$(ICUDIR)/lib/libiculx.$(SO)
    1.40 +DAT=$(ICUDIR)/stubdata/libicudata.$(SO)
    1.41 +UIO=$(ICUDIR)/lib/libicuio.$(SO)
    1.42 +
    1.43 +LIBS=$(COM) $(I18) $(LAY) $(LEX) $(UIO)
    1.44 +
    1.45 +## Targets.
    1.46 +
    1.47 +
    1.48 +all:
    1.49 +	@cat README
    1.50 +
    1.51 +clean:
    1.52 +	-rm -rf $(ICUDIR) urename.* *~
    1.53 +
    1.54 +# We use config.status to mean we have a valid out of source tree.
    1.55 +
    1.56 +$(ICUDIR)/config.status:
    1.57 +	-mv $(ICUDIR) $(ICUDIR)old
    1.58 +	-(rm -rf $(ICUDIR)old &)
    1.59 +	mkdir $(ICUDIR)
    1.60 +	( cd $(ICUDIR) ; CPPFLAGS=-DU_DISABLE_RENAMING=1 $(GENREN_CONFIGURE_ENV) $(top_srcdir)/../configure --with-data-packaging=archive --enable-tests=no --prefix=`pwd` $(GENREN_CONFIGURE_OPTS) )
    1.61 +    # cause lib and bin to be created, and any other general sanity
    1.62 +	$(MAKE) $(FLAG_OVERRIDE) -C $(ICUDIR) clean
    1.63 +	$(MAKE) $(FLAG_OVERRIDE) -C $(ICUDIR) all-local
    1.64 +
    1.65 +# build the libraries
    1.66 +$(DAT): $(ICUDIR)/config.status Makefile
    1.67 +	$(MAKE) $(FLAG_OVERRIDE) -C $(ICUDIR)/stubdata  all-local
    1.68 +
    1.69 +$(COM): $(DAT) $(ICUDIR)/config.status Makefile
    1.70 +	$(MAKE) $(FLAG_OVERRIDE) -C $(ICUDIR)/common all-local
    1.71 +
    1.72 +$(I18): $(DAT) $(COM) $(ICUDIR)/config.status Makefile
    1.73 +	$(MAKE) $(FLAG_OVERRIDE) -C $(ICUDIR)/i18n all-local
    1.74 +
    1.75 +$(LAY): $(DAT) $(I18) $(COM) $(ICUDIR)/config.status Makefile
    1.76 +	$(MAKE) $(FLAG_OVERRIDE) -C $(ICUDIR)/layout all-local
    1.77 +
    1.78 +$(LEX): $(DAT) $(I18) $(COM) $(ICUDIR)/config.status Makefile
    1.79 +	$(MAKE) $(FLAG_OVERRIDE) -C $(ICUDIR)/layoutex all-local
    1.80 +
    1.81 +$(UIO):	$(DAT) $(I18) $(COM) $(ICUDIR)/config.status Makefile
    1.82 +	$(MAKE) $(FLAG_OVERRIDE) -C $(ICUDIR)/io all-local
    1.83 +
    1.84 +# the header itself
    1.85 +urename.h: $(LIBS) genren.pl
    1.86 +	-cp urename.h urename.h.old
    1.87 +	perl ./genren.pl $(GENREN_PL_OPTS) $(LIBS)
    1.88 +
    1.89 +# This is still here, but less useful with the "new" macro-based rename. Just use 'svn diff'.
    1.90 +sorts:	urename.sort urename.old.sort
    1.91 +	@echo "*** Please check urename.h manually before committing it."
    1.92 +	@echo "Try 'diff --side-by-side urename.old.sort urename.sort'"
    1.93 +
    1.94 +urename.sort: urename.h
    1.95 +	sort urename.h > $@
    1.96 +
    1.97 +urename.old.sort: $(top_srcdir)/common/unicode/urename.h
    1.98 +	sort  $(top_srcdir)/common/unicode/urename.h > $@
    1.99 +
   1.100 +install-header: urename.h
   1.101 +	cp urename.h $(top_srcdir)/common/unicode/
   1.102 +	@echo "*** Please check urename.h manually before committing it."
   1.103 +

mercurial