scuffed-code/icu4c/source/tools/Makefile.in

217 lines
7.3 KiB
Makefile
Raw Normal View History

1999-08-16 21:50:52 +00:00
## Makefile.in for ICU tools
## Copyright (c) 1999-2000, International Business Machines Corporation and
## others. All Rights Reserved.
1999-08-16 21:50:52 +00:00
## Source directory information
1999-08-16 21:50:52 +00:00
srcdir = @srcdir@
top_srcdir = @top_srcdir@
include $(top_srcdir)/icudefs.mk
include @platform_make_fragment@
##
CPPFLAGS = @CPPFLAGS@ -I$(top_srcdir)/common -I$(top_builddir)/common
CFLAGS = @CFLAGS@
CXXFLAGS = @CXXFLAGS@
1999-08-16 21:50:52 +00:00
## Build directory information
top_builddir = ..
subdir = tools
2000-06-14 00:50:58 +00:00
## Allow overriding of package build mode
ifeq ($(strip $(MODE)),)
MODE=@DATA_PACKAGING_MODE@
2000-06-14 00:50:58 +00:00
endif
# OBJDATADIR must be a short path (with ..'s) to the data.
#SRCDATADIR=$(shell cd $(top_srcdir)/../data && /bin/pwd)
SRCDATADIR=$(top_srcdir)/../data
OBJDATADIR=$(shell cd $(top_builddir)/data && /bin/pwd)
# tmpdir is INSIDE pkgdata dir. if you change TMPDATADIR then the invokation
# of pkgdata will break...
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)
CURDIR=$(shell /bin/pwd)
2000-07-10 17:53:01 +00:00
# relative lib links from pkgdata are the same as for tmp
top_builddir_from_tmp = $(patsubst ..%,../..%,$(top_builddir))
INVOKE = $(LDLIBRARYPATH_ENVVAR)=$(top_builddir_from_tmp)/common:$(top_builddir_from_tmp)/tools/toolutil:$$$(LDLIBRARYPATH_ENVVAR)
PKGDATA = ../pkgdata/pkgdata -T . -s $(DATABUILDDIR) -O ./icupkg.inc -d $(DATABUILDDIR) -m $(MODE)
1999-08-16 21:50:52 +00:00
## Install program information
MKINSTALLDIRS = $(SHELL) $(top_srcdir)/mkinstalldirs
1999-08-16 21:50:52 +00:00
INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
## for cleaning up libraries
STRIP = @STRIP@
1999-08-16 21:50:52 +00:00
## Package information
PACKAGE = @PACKAGE@
VERSION = @VERSION@
SUBDIRS = ctestfw toolutil makeconv genrb \
2000-06-14 00:50:58 +00:00
genccode genprops gennames gencmn gencnval gentz gentest pkgdata
1999-08-16 21:50:52 +00:00
## List of phony targets
2000-07-10 17:53:01 +00:00
.PHONY : all all-local all-recursive install install-local install-files install-dlls build-cmnfile build-dll \
1999-08-16 21:50:52 +00:00
install-recursive clean clean-local clean-recursive distclean \
distclean-local distclean-recursive dist dist-local dist-recursive \
2000-06-14 00:50:58 +00:00
check check-local check-recursive build-testdlls build-basetestdata build-local
1999-08-16 21:50:52 +00:00
## Clear suffix list
.SUFFIXES :
## List of standard targets
2000-06-14 00:50:58 +00:00
all: all-recursive
install: install-recursive
clean: clean-local clean-recursive
2000-06-14 00:50:58 +00:00
distclean : distclean-recursive
dist: dist-recursive
check: all check-recursive
1999-08-16 21:50:52 +00:00
## 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; \
1999-08-16 21:50:52 +00:00
done; \
if test "$$dot_seen" = "no"; then \
$(MAKE) "$$target-local" || exit; \
1999-08-16 21:50:52 +00:00
fi
all-local: build-local
DAT_FILES=uprops.dat unames.dat cnvalias.dat tz.dat
2000-06-14 00:50:58 +00:00
# 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
2000-06-14 00:50:58 +00:00
# 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:%=$(SRCDATADIR)/%)
CNV_FILES = $(ALL_UCM_SOURCE:%.ucm=$(OBJDATADIR)/%.cnv)
RES_SRC_FILES = $(ALL_RES_SOURCE:%=$(SRCDATADIR)/%)
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)
2000-06-14 00:50:58 +00:00
install-udata: install-pkgdata
2000-10-20 05:24:08 +00:00
$(MKINSTALLDIRS) $(DESTDIR)$(pkgsysconfdir)
$(INSTALL_DATA) $(top_srcdir)/../data/convrtrs.txt $(DESTDIR)$(pkgsysconfdir)
install-local: all-local install-udata
1999-08-16 21:50:52 +00:00
dist-local:
2000-07-10 17:53:01 +00:00
clean-local: clean-pkgdata
test -z "$(CLEANFILES)" || $(RMV) $(CLEANFILES)
$(RMV) $(SRCDATAFILES) $(DATAFILES) icupkg.inc
2000-07-10 17:53:01 +00:00
-@if [ -f $(TMPDATADIR)/icudata_dll.mak ]; then \
(cd pkgdata ; $(INVOKE) ./pkgdata -T $(TMPDATADIR) -m dll -p icudata -O $(DATABUILDDIR)/icupkg.inc $(TMPDATADIR)/icudata.lst -d $(DATABUILDDIR) --clean ) \
2000-06-14 00:50:58 +00:00
fi
2000-07-10 17:53:01 +00:00
-@if [ -f $(TMPDATADIR)/icudata_common.mak ]; then \
(cd pkgdata; $(INVOKE) ./pkgdata -T $(TMPDATADIR) -m common -p icudata -O $(DATABUILDDIR)/icupkg.inc $(TMPDATADIR)/icudata.lst -d $(DATABUILDDIR) --clean ) \
2000-06-14 00:50:58 +00:00
fi
-@$(RMV) $(TMPDATADIR) $(TMPDATADIR)2
2000-06-14 00:50:58 +00:00
# Clean up any old variations..
distclean-local: clean-local
$(RMV) Makefile
$(TMPDATADIR)/icudata.lst: Makefile $(srcdir)/Makefile.in $(srcdir)/genrb/genrbfiles.mk $(srcdir)/makeconv/ucmfiles.mk
2000-06-14 00:50:58 +00:00
@echo Generating $@ list of data files
@$(MKINSTALLDIRS) $(TMPDATADIR)
@-$(RMV) $(TMPDATADIR)/icudata.lst
@for file in $(DATAFILES); do \
echo $$file >> $(TMPDATADIR)/icudata.lst; \
2000-06-14 00:50:58 +00:00
done;
$(TMPDATADIR)/testdata.lst: Makefile
@$(MKINSTALLDIRS) $(TMPDATADIR)
@echo $(DATABUILDDIR)/test.dat > $@
2000-07-10 17:53:01 +00:00
$(TMPDATADIR)2/testdata.lst: Makefile
@$(MKINSTALLDIRS) $(TMPDATADIR)2
@echo $(DATABUILDDIR)/test.dat > $@
$(TMPDATADIR)/icupkg.inc: pkgdata/icupkg.inc
@$(MKINSTALLDIRS) $(TMPDATADIR)
cp pkgdata/icupkg.inc $(TMPDATADIR)/icupkg.inc
2000-06-14 00:50:58 +00:00
$(TMPDATADIR)2/icupkg.inc: pkgdata/icupkg.inc
@$(MKINSTALLDIRS) $(TMPDATADIR)2
cp pkgdata/icupkg.inc $(TMPDATADIR)2/icupkg.inc
2000-07-10 17:53:01 +00:00
# build the ICU and test data
build-local build-pkgdata: $(TMPDATADIR)/icudata.lst $(TMPDATADIR)/testdata.lst $(TMPDATADIR)/icupkg.inc $(TMPDATADIR)2/icupkg.inc $(TMPDATADIR)2/testdata.lst $(DATAFILES)
@$(MKINSTALLDIRS) $(TMPDATADIR)
@$(MKINSTALLDIRS) $(TMPDATADIR)2
(cd $(TMPDATADIR); $(INVOKE) $(PKGDATA) -p icudata ./icudata.lst )
(cd $(TMPDATADIR); $(INVOKE) $(PKGDATA) -p testdat1 ./testdata.lst )
(cd $(TMPDATADIR)2; $(INVOKE) $(PKGDATA) -p testdat2 ./testdata.lst )
2000-06-14 00:50:58 +00:00
install-pkgdata: $(TMPDATADIR)/icudata.lst $(TMPDATADIR)/icupkg.inc
$(MKINSTALLDIRS) $(TMPDATADIR) $(DESTDIR)$(pkglibdir)/$(VERSION)
(cd $(TMPDATADIR); $(INVOKE) $(PKGDATA) -p icudata ./icudata.lst -I $(DESTDIR)$(pkglibdir)/$(VERSION))
2000-06-14 00:50:58 +00:00
clean-pkgdata:
-(cd $(TMPDATADIR); $(INVOKE) $(PKGDATA) -p icudata ./icudata.lst --clean || echo '### Warning, cannot clean up icu/data if pkgdata is already gone.' )
-(cd $(TMPDATADIR); $(INVOKE) $(PKGDATA) -p testdat1 ./testdata.lst --clean || echo '### Warning, cannot clean up icu/data if pkgdata is already gone.' )
-(cd $(TMPDATADIR)2; $(INVOKE) $(PKGDATA) -p testdat2 ./testdata.lst --clean || echo '### Warning, cannot clean up icu/data if pkgdata is already gone.' )
-$(RMV) $(TMPDATADIR)/icudata.lst $(TMPDATADIR)/testdata.lst $(TMPDATADIR)/icupkg.inc $(TMPDATADIR)2/testdata.lst
1999-08-16 21:50:52 +00:00
check-local:
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
cd $(top_builddir) \
&& CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status