6b707c92f0
X-SVN-Rev: 2407
223 lines
6.5 KiB
Makefile
223 lines
6.5 KiB
Makefile
## 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
|
|
|
|
|