blob: 2c30154c14d4a8a22a6f8f217e4b7552142f0e40 [file] [log] [blame]
#
# Copyright 1999-2004 The Apache Software Foundation.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# Output directory
OUTDIR := ../../..
INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
include $(XALANCROOT)/version.incl
include ../../../Makefile.incl
## ----------------------------------------------------------------------------
XSL_NLS_SRC_DIR=$(XALANCROOT)/src/xalanc/NLS
MSGFILENAME=XalanMsg_
CATALOG_NAME=$(MSGFILENAME)$(LOCALE)
ifeq ($(PLATFORM), CYGWIN)
XLIFF_FILE_NAME=$(shell cygpath -m $(XSL_NLS_SRC_DIR)/$(LOCALE)/$(MSGFILENAME)$(LOCALE).xlf)
else
XLIFF_FILE_NAME=$(XSL_NLS_SRC_DIR)/$(LOCALE)/$(MSGFILENAME)$(LOCALE).xlf
endif
MOVE= mv
COPY=cp
INCLUDE_DIR = $(XALANCROOT)/src/xalanc/Include
.PHONY: locale doClean prepare install doCommonInstall doCommonPrepare
##=================== End of Common for all localization systems area =====
## ----------------------------------------------------------------------------
ifeq ($(MESSAGELOADER),INMEM)
locale: $(MESSAGELIB)
$(MESSAGELIB): $(XSL_NLS_DIR)/include/LocalMsgData.hpp
$(MAKE) -C XalanMsgLib
$(XSL_NLS_DIR)/include/LocalMsgData.hpp : $(XSL_BIN_DIR)/MsgCreator $(XLIFF_FILE_NAME)
$(XSL_BIN_DIR)/MsgCreator $(XLIFF_FILE_NAME) -TYPE $(MESSAGELOADER) -LOCALE $(LOCALE)
@$(MOVE) LocalMsgIndex.hpp $(XSL_NLS_DIR)/include
@$(MOVE) LocalMsgData.hpp $(XSL_NLS_DIR)/include
install: doCommonInstall
$(MAKE) -C XalanMsgLib $@
prepare: doCommonPrepare
endif # end of ($(MESSAGELOADER),INMEM))
## ----------------------------------------------------------------------------
ifeq ($(MESSAGELOADER),ICU)
##=============================== Specific for ICU variables ================================
GENRB = $(ICUROOT)/bin/genrb
PKGDATA = $(ICUROOT)/bin/pkgdata
##=============================== End of Specific for ICU variables ================================
locale: $(XSL_NLS_DIR)/icu/$(LOCALE).txt $(MESSAGELIB)
$(MESSAGELIB) : $(XSL_NLS_DIR)/icu/$(LOCALE).txt
$(GENRB) -p $(LOC_PROJECT_NAME) -d $(XSL_NLS_DIR)/icu -i $(XSL_NLS_DIR)/icu $(XSL_NLS_DIR)/icu/$(LOCALE).txt
echo $(XSL_NLS_DIR)/icu/$(LOC_PROJECT_NAME)_$(LOCALE).res > $(XSL_NLS_DIR)/icu/res-file-list.txt
$(PKGDATA) --name $(LOC_PROJECT_NAME) -T $(XSL_NLS_DIR)/icu -v -O $(ICUROOT)/lib/icu/Makefile.inc --mode dll -d $(XSL_LIB_DIR) $(XSL_NLS_DIR)/icu/res-file-list.txt -M "prefix=$(ICUROOT) TARGET=$(LOC_LIB)"
$(LN) -fs $(LOC_LIB) $(XSL_LIB_DIR)/$(LOC_LIBNAME)$(SHLIBSUFFIX)
ifeq ($(PLATFORM), AIX)
$(LN) -fs $(LOC_LIB) $(XSL_LIB_DIR)/$(LOC_LIBNAME)$(LIB_MAJOR_VER)$(SHLIBSUFFIX)
else
$(LN) -fs $(LOC_LIB) $(XSL_LIB_DIR)/$(LOC_LIBNAME)$(SHLIBSUFFIX).$(LIB_MAJOR_VER)
endif ## AIX
$(XSL_NLS_DIR)/icu/$(LOCALE).txt : $(XLIFF_FILE_NAME) $(XSL_BIN_DIR)/MsgCreator
$(XSL_BIN_DIR)/MsgCreator $(XLIFF_FILE_NAME) -TYPE $(MESSAGELOADER) -LOCALE $(LOCALE)
$(MOVE) LocalMsgIndex.hpp $(XSL_NLS_DIR)/include
$(MOVE) $(LOCALE).txt $(XSL_NLS_DIR)/icu
prepare: doCommonPrepare
-${MKDIR} -p $(XSL_NLS_DIR)/icu
install: doCommonInstall
$(MKINSTALLDIRS) $(DESTDIR)/$(libdir)
$(INSTALL_PROGRAM) $(XSL_LIB_DIR)/$(LOC_LIB) $(DESTDIR)/$(libdir)
ifneq ($(PLATFORM), OS390)
$(LN) -fs $(LOC_LIB) $(DESTDIR)/$(libdir)/$(LOC_LIBNAME)$(SHLIBSUFFIX)
ifeq ($(PLATFORM), AIX)
$(LN) -fs $(LOC_LIB) $(DESTDIR)/$(libdir)/$(LOC_LIBNAME)$(LIB_MAJOR_VER)$(SHLIBSUFFIX)
else
$(LN) -fs $(LOC_LIB) $(DESTDIR)/$(libdir)/$(LOC_LIBNAME)$(SHLIBSUFFIX).$(LIB_MAJOR_VER)
endif ## AIX
endif ## OS390
endif # end of ($(MESSAGELOADER),ICU)
##=============================== NLS SYSTEM =====================================================
ifeq ($(MESSAGELOADER),NLS)
locale: $(XSL_NLS_DIR)/$(LOCALE)/$(CATALOG_NAME).cat
$(XSL_NLS_DIR)/$(LOCALE)/$(CATALOG_NAME).cat : $(XLIFF_FILE_NAME) $(XSL_BIN_DIR)/MsgCreator
$(XSL_BIN_DIR)/MsgCreator $(XLIFF_FILE_NAME) -TYPE $(MESSAGELOADER) -LOCALE $(LOCALE)
$(MOVE) LocalMsgIndex.hpp $(XSL_NLS_DIR)/include
$(MOVE) $(CATALOG_NAME).msg $(XSL_NLS_DIR)/nls
-rm -f $(CATALOG_NAME).cat
gencat $(CATALOG_NAME).cat $(XSL_NLS_DIR)/nls/$(CATALOG_NAME).msg
$(MOVE) $(CATALOG_NAME).cat $(XSL_NLS_DIR)/nls
install: doCommonInstall
$(MKINSTALLDIRS) $(DESTDIR)/$(libdir)
$(MKINSTALLDIRS) $(DESTDIR)/$(libdir)/nls
$(MKINSTALLDIRS) $(DESTDIR)/$(libdir)/nls/msg
$(MKINSTALLDIRS) $(DESTDIR)/$(libdir)/nls/msg/$(LOCALE)
$(COPY) $(XSL_NLS_DIR)/nls/$(CATALOG_NAME).cat $(DESTDIR)/$(libdir)/nls/msg/$(LOCALE)
prepare: doCommonPrepare
-${MKDIR} -p $(XSL_NLS_DIR)/nls
endif
##=============================== END OF NLS SYSTEM ==================================================
##=================== Common for all localization systems area ============
$(XSL_BIN_DIR)/MsgCreator:
$(MAKE) -C MsgCreator
doCommonPrepare:
-${MKDIR} -p $(XSL_NLS_DIR)
-${MKDIR} -p $(XSL_NLS_DIR)/include
doCommonInstall:
$(INSTALL_DATA) $(XSL_NLS_DIR)/include/LocalMsgIndex.hpp $(XALANCROOT)/src/xalanc/PlatformSupport
doClean:
$(MAKE) -C XalanMsgLib $@
$(MAKE) -C MsgCreator $@
rm -f $(XSL_NLS_DIR)/nls/*
rm -f $(XSL_NLS_DIR)/icu/*
rm -f $(XSL_LIB_DIR)/$(LOC_LIBNAME)*
rm -f $(XSL_NLS_DIR)/include/LocalMsgData.hpp
rm -f $(XSL_NLS_DIR)/include/LocalMsgIndex.hpp
rm -f $(MESSAGELIB)