## Makefile.in for ICU tools ## Copyright (c) 1999-2000, International Business Machines Corporation and ## others. All Rights Reserved. ## Shell to use SHELL = @SHELL@ VERSION = @VERSION@ ## Install directory information srcdir = @srcdir@ top_srcdir = @top_srcdir@ prefix = @prefix@ exec_prefix = @exec_prefix@ CC = @CC@ CXX = @CXX@ CPPFLAGS = @CPPFLAGS@ -I$(top_srcdir)/common -I$(top_builddir)/common CFLAGS = @CFLAGS@ CXXFLAGS = @CXXFLAGS@ @host_frag@ bindir = @bindir@ sbindir = @sbindir@ datadir = @datadir@ libdir = @libdir@ includedir = @includedir@ pkgdatadir = $(datadir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ ## Build directory information top_builddir = .. subdir = tools ## Type of build @USE_MAPPED_TRUE@ DEFAULT_MODE=common @USE_MAPPED_FALSE@ DEFAULT_MODE=dll ## Allow overriding of package build mode ifeq ($(strip $(MODE)),) MODE=$(DEFAULT_MODE) endif # OBJDATADIR must be a short path (with ..'s) to the data. ICUDATADIR=$(pkgdatadir)/$(VERSION) SRCDATADIR=$(top_srcdir)/../data OBJDATADIR=$(top_builddir)/data # tmpdir is INSIDE pkgdata dir TMPDATADIR=tmp # DATABUILDDIR must be an absolute path because of the way pkgdata is invoked # from the temporary directory. DATABUILDDIR=$(shell cd $(OBJDATADIR) && /bin/pwd) # relative lib links from pkgdata are the same as for tmp PKGDATA=../pkgdata/pkgdata -T . -s $(DATABUILDDIR) -O ./icupkg.inc -d $(DATABUILDDIR) -v -m $(MODE) ## Install program information mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs INSTALL = @INSTALL@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ ## for cleaning up libraries STRIP = @STRIP@ ## Package information PACKAGE = @PACKAGE@ VERSION = @VERSION@ SUBDIRS = ctestfw toolutil makeconv genrb \ genccode genprops gennames gencmn gencnval gentz gentest pkgdata ## List of phony targets .PHONY : all all-local all-recursive install install-local install-files install-dlls build-cmnfile build-dll \ install-recursive clean clean-local clean-recursive distclean \ distclean-local distclean-recursive dist dist-local dist-recursive \ check check-local check-recursive build-testdlls build-basetestdata build-local ## Clear suffix list .SUFFIXES : ## List of standard targets all: all-recursive install: install-recursive clean: clean-local clean-recursive distclean : distclean-recursive dist: dist-recursive check: all check-recursive ## Recursive targets all-recursive install-recursive clean-recursive distclean-recursive dist-recursive check-recursive: @dot_seen=no; \ target=`echo $@ | sed s/-recursive//`; \ list='$(SUBDIRS)'; for subdir in $$list; do \ echo "Making $$target in $$subdir"; \ if test "$$subdir" = "."; then \ dot_seen=yes; \ local_target="$$target-local"; \ else \ local_target="$$target"; \ fi; \ (cd $$subdir && $(MAKE) $$local_target) || exit; \ done; \ if test "$$dot_seen" = "no"; then \ $(MAKE) "$$target-local" || exit; \ fi all-local: build-local DAT_FILES=uprops.dat unames.dat cnvalias.dat tz.dat # ALL of these files can be deleted (the following BRK files) - they are copied BRK_FILES=char.brk line.brk line_th.brk sent.brk word.brk word_th.brk # don't include thaidict.brk - it goes into a resource bundle - plus it isn't deleted DATAFILESD=$(DAT_FILES:%=$(OBJDATADIR)/%) DATAFILESB=$(BRK_FILES:%=$(OBJDATADIR)/%) # copy the right endianness ifeq (@U_IS_BIG_ENDIAN@,1) $(OBJDATADIR)/%.brk: $(SRCDATADIR)/%BE.brk cp $< $@ else $(OBJDATADIR)/%.brk: $(SRCDATADIR)/%LE.brk cp $< $@ endif include $(srcdir)/makeconv/ucmfiles.mk -include $(srcdir)/makeconv/ucmlocal.mk ALL_UCM_SOURCE= $(UCM_SOURCE) $(UCM_SOURCE_LOCAL) include $(srcdir)/genrb/genrbfiles.mk -include $(srcdir)/genrb/reslocal.mk ALL_RES_SOURCE= $(GENRB_SOURCE) $(TRANSLIT_SOURCE) $(RESOURCE_SRC) $(GENRB_SOURCE_LOCAL) UCM_FILES = $(ALL_UCM_SOURCE:%=$(top_srcdir)/../data/%) CNV_FILES = $(ALL_UCM_SOURCE:%.ucm=$(OBJDATADIR)/%.cnv) RES_SRC_FILES = $(ALL_RES_SOURCE:%=$(top_srcdir)/../data/%) RES_FILES = $(ALL_RES_SOURCE:%.txt=$(OBJDATADIR)/%.res) DATAFILESC=$(CNV_FILES) DATAFILESR=$(RES_FILES) DATAFILES=$(DATAFILESD) $(DATAFILESC) $(DATAFILESB) $(DATAFILESR) ## Files to remove for 'make clean' CLEANFILES = *~ $(BRK_FILES) install-udata: install-pkgdata install-local: all-local install-udata dist-local: clean-local: clean-pkgdata test -z "$(CLEANFILES)" || $(RMV) $(CLEANFILES) $(TMPDATADIR)/* # Clean up any old variations.. distclean-local: clean-local $(RMV) Makefile $(SRCDATAFILES) $(DATAFILES) $(TESTDATAD) $(BASETESTDATA) icupkg.inc -@if [ -f $(TMPDATADIR)/icudata_dll.mak ]; then \ (cd pkgdata ; ./pkgdata -T $(TMPDATADIR) -m dll -p icudata -O $(DATABUILDDIR)/icupkg.inc $(TMPDATADIR)/icudata.lst -d $(DATABUILDDIR) --clean ) \ fi -@if [ -f $(TMPDATADIR)/icudata_common.mak ]; then \ (cd pkgdata; ./pkgdata -T $(TMPDATADIR) -m common -p icudata -O $(DATABUILDDIR)/icupkg.inc $(TMPDATADIR)/icudata.lst -d $(DATABUILDDIR) --clean ) \ fi -@$(RMV) $(TMPDATADIR) $(TMPDATADIR)/icudata.lst: Makefile $(srcdir)/Makefile.in $(srcdir)/genrb/genrbfiles.mk $(srcdir)/makeconv/ucmfiles.mk @echo Generating $@ list of data files @$(mkinstalldirs) $(TMPDATADIR) @-$(RMV) $(TMPDATADIR)/icudata.lst @for file in $(DATAFILES); do \ echo `pwd`/$$file >> $(TMPDATADIR)/icudata.lst; \ done; $(TMPDATADIR)/testdata.lst: Makefile @$(mkinstalldirs) $(TMPDATADIR) @echo $(DATABUILDDIR)/test.dat > $@ $(TMPDATADIR)/icupkg.inc: pkgdata/icupkg.inc @$(mkinstalldirs) $(TMPDATADIR) cp pkgdata/icupkg.inc $(TMPDATADIR)/icupkg.inc # build the ICU and test data build-local build-pkgdata: $(TMPDATADIR)/icudata.lst $(TMPDATADIR)/testdata.lst $(TMPDATADIR)/icupkg.inc $(DATAFILES) $(DATABUILDDIR)/test.dat @$(mkinstalldirs) $(TMPDATADIR) (cd $(TMPDATADIR); $(PKGDATA) -p icudata ./icudata.lst ) (cd $(TMPDATADIR); $(PKGDATA) -p testdat1 ./testdata.lst ) (cd $(TMPDATADIR); $(PKGDATA) -p testdat2 ./testdata.lst ) install-pkgdata: $(TMPDATADIR)/icudata.lst $(TMPDATADIR)/icupkg.inc $(mkinstalldirs) $(TMPDATADIR) $(DESTDIR)$(pkgdatadir)/$(VERSION) (cd $(TMPDATADIR); $(PKGDATA) -p icudata ./icudata.lst -I $(DESTDIR)$(pkgdatadir)/$(VERSION) ) clean-pkgdata: @$(mkinstalldirs) $(TMPDATADIR) -@(cd $(TMPDATADIR); $(PKGDATA) -p icudata ./icudata.lst --clean || echo '### Warning, cannot clean up icu/data if pkgdata is already gone.' ) -$(RMV) $(TMPDATADIR)/icudata.lst $(TMPDATADIR)/icupkg.inc check-local: Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status cd $(top_builddir) \ && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status