]> git.saurik.com Git - apple/icu.git/blob - icuSources/tools/genren/Makefile
ICU-400.37.tar.gz
[apple/icu.git] / icuSources / tools / genren / Makefile
1 #******************************************************************************
2 #
3 # Copyright (C) 2002-2008, International Business Machines
4 # Corporation and others. All Rights Reserved.
5 #
6 #******************************************************************************
7
8 TOP=../..
9 srcdir = .
10 top_srcdir = $(TOP)
11
12 top_builddir = $(TOP)
13
14 -include $(TOP)/icudefs.mk
15 ICUDIR=ICUunrenamed
16 #SO=so
17
18 COM=$(ICUDIR)/lib/libicuuc.$(SO)
19 I18=$(ICUDIR)/lib/libicui18n.$(SO)
20 LAY=$(ICUDIR)/lib/libicule.$(SO)
21 LEX=$(ICUDIR)/lib/libiculx.$(SO)
22 DAT=$(ICUDIR)/stubdata/libicudata.$(SO)
23 UIO=$(ICUDIR)/lib/libicuio.$(SO)
24
25 LIBS=$(COM) $(I18) $(LAY) $(LEX) $(UIO)
26
27 # Extra flags to prevent internal API from being hidden.
28 # This is important because ELF (Linux) based platforms that don't hide internal
29 # API will allow a duplicate internal name to resolve to an external library.
30 # See the gcc manual on the "visibility" attribute for details.
31 FLAG_OVERRIDE= LIBCFLAGS= LIBCXXFLAGS= $(EXTRA_MAKE_OPTIONS)
32
33 all:
34 @cat README
35
36 clean:
37 -rm -rf $(ICUDIR) urename.* *~
38
39 # We use config.status to mean we have a valid out of source tree.
40
41 $(ICUDIR)/config.status:
42 -mv $(ICUDIR) $(ICUDIR)old
43 -(rm -rf $(ICUDIR)old &)
44 mkdir $(ICUDIR)
45 ( cd $(ICUDIR) ; CPPFLAGS=-DURENAME_H $(TOP)/../configure --with-data-packaging=archive --enable-tests=no --prefix=`pwd` $(GENREN_CONFIGURE_OPTS) )
46 # cause lib and bin to be created, and any other general sanity
47 $(MAKE) $(FLAG_OVERRIDE) -C $(ICUDIR) clean
48 $(MAKE) $(FLAG_OVERRIDE) -C $(ICUDIR) all-local
49
50 # build the libraries
51 $(DAT): $(ICUDIR)/config.status Makefile
52 $(MAKE) $(FLAG_OVERRIDE) -C $(ICUDIR)/stubdata all-local
53
54 $(COM): $(DAT) $(ICUDIR)/config.status Makefile
55 $(MAKE) $(FLAG_OVERRIDE) -C $(ICUDIR)/common all-local
56
57 $(I18): $(DAT) $(COM) $(ICUDIR)/config.status Makefile
58 $(MAKE) $(FLAG_OVERRIDE) -C $(ICUDIR)/i18n all-local
59
60 $(LAY): $(DAT) $(I18) $(COM) $(ICUDIR)/config.status Makefile
61 $(MAKE) $(FLAG_OVERRIDE) -C $(ICUDIR)/layout all-local
62
63 $(LEX): $(DAT) $(I18) $(COM) $(ICUDIR)/config.status Makefile
64 $(MAKE) $(FLAG_OVERRIDE) -C $(ICUDIR)/layoutex all-local
65
66 $(UIO): $(DAT) $(I18) $(COM) $(ICUDIR)/config.status Makefile
67 $(MAKE) $(FLAG_OVERRIDE) -C $(ICUDIR)/io all-local
68
69 # the header itself
70 urename.h: $(LIBS) genren.pl
71 -cp urename.h urename.h.old
72 perl ./genren.pl $(GENREN_PL_OPTS) $(LIBS)
73
74 sorts: urename.sort urename.old.sort
75 @echo "*** Please check urename.h manually before committing it."
76 @echo "Try 'diff --side-by-side urename.old.sort urename.sort'"
77
78 urename.sort: urename.h
79 sort urename.h > $@
80
81 urename.old.sort: $(TOP)/common/unicode/urename.h
82 sort $(TOP)/common/unicode/urename.h > $@
83
84 install-header: urename.h sorts
85 cp $(TOP)/common/unicode/urename.h $(TOP)/common/unicode/urename.h.old
86 cp urename.h $(TOP)/common/unicode/
87
88 -include Makefile.local
89