1 ## ******************************************************************************
3 ## * Copyright (C) 1999-2004, International Business Machines
4 ## * Corporation and others. All Rights Reserved.
6 ## *******************************************************************************
7 ## Makefile.in for ICU - uconv
10 ## Set the following to dll or static or common..
12 ##############################################################
15 top_srcdir=@top_srcdir@
20 include $(top_builddir)/icudefs.mk
24 # RESSRC comes from resfiles.mk
26 include $(srcdir)/resfiles.mk
29 RESFILES=$(RESSRC:$(RESOURCESDIR)$(FILESEPCHAR)%.txt=$(RESDIR)/$(RESOURCESDIR)$(FILESEPCHAR)$(MSGNAME)_%.res)
33 TARGET_STUB_NAME = uconv
37 ALL_MAN_FILES = $(TARGET_STUB_NAME).$(SECTION)
39 ## Extra files to remove for 'make clean'
40 CLEANFILES = *~ $(DEPS) $(ALL_MAN_FILES)
43 TARGET = $(BINDIR)/$(TARGET_STUB_NAME)$(EXEEXT)
45 CPPFLAGS += -I$(top_builddir)/common -I$(top_srcdir)/common -I$(top_srcdir)/i18n -I$(srcdir)/../toolutil
46 LIBS = $(LIBICUI18N) $(LIBICUUC) $(DEFAULT_LIBS) $(LIB_M)
48 ifeq ($(PKGDATA_OPTS),)
49 PKGDATA_OPTS = -O pkgdata.inc
52 ## generic settings for data - common.
54 INSTALLTO=$(DESTDIR)$(ICUDATA_DIR)
58 ifeq ($(UCONVMSG_MODE),static)
59 DEFS += -DUCONVMSG_LINK=$(MSGNAME)
60 UCONVMSG_LIB = $(RESDIR)/$(LIBPREFIX)$(MSGNAME).$(A)
61 LIBS += $(UCONVMSG_LIB)
67 ifeq ($(UCONVMSG_MODE),dll)
68 DEFS += -DUCONVMSG_LINK=$(MSGNAME)
69 LIBS += -L$(RESDIR) -l$(MSGNAME)
74 OBJECTS = uconv.o uwmsg.o
76 DEPS = $(OBJECTS:.o=.d)
78 ## List of phony targets
79 .PHONY : all all-local install install-local clean clean-local \
80 distclean resclean distclean-local dist dist-local check check-local resfiles package-resfiles install-resfiles install-man
85 ## List of standard targets
88 install: install-local
90 distclean : distclean-local
94 all-local: $(TARGET) resfiles $(ALL_MAN_FILES)
96 install-local: all-local install-target install-resfiles install-man
98 install-target: all-local
99 $(MKINSTALLDIRS) $(DESTDIR)$(bindir)
100 $(INSTALL) $(TARGET) $(DESTDIR)$(bindir)
104 clean-local: resclean
105 test -z "$(CLEANFILES)" || $(RMV) $(CLEANFILES) $(RESFILES)
106 $(RMV) $(OBJECTS) $(TARGET)
109 #-$(INVOKE) $(BINDIR)/pkgdata --clean -p $(RESDIR) -O pkgdata.inc -m $(PKGMODE) -d $(RESDIR) -T $(RESDIR) $(RESDIR)/$(RESDIR).lst
110 $(RMV) pkgdata.inc $(RESDIR)
112 distclean-local: clean-local
113 $(RMV) Makefile $(DEPS)
117 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
119 && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
121 pkgdata.inc: $(srcdir)/pkgdata.inc.in $(top_builddir)/config.status
123 && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
125 %.$(SECTION): $(srcdir)/%.$(SECTION).in $(srcdir)/pkgdata.inc.in
127 && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
129 $(TARGET) : $(OBJECTS) $(UCONVMSG_LIB)
130 $(LINK.cc) $(OUTOPT)$@ $(OBJECTS) $(LIBS)
132 resfiles: $(RESFILES) package-resfiles
134 ifeq ($(UCONVMSG_STATIC),YES)
135 $(UCONVMSG_LIB): resfiles
139 package-resfiles: $(RESDIR)/$(RESDIR).lst pkgdata.inc
140 $(INVOKE) $(PKGDATA_INVOKE_OPTS) $(BINDIR)/pkgdata -p $(RESDIR) $(PKGDATA_OPTS) -m $(PKGMODE) -d $(RESDIR) -T $(RESDIR) $(RESDIR)/$(RESDIR).lst
142 $(RESDIR)/$(RESDIR).lst: Makefile pkgdata.inc $(srcdir)/resfiles.mk
143 @$(MKINSTALLDIRS) $(RESDIR)
145 @for file in $(RESFILES); do \
146 echo $(CURR_FULL_DIR)/$$file >> $@; \
149 # no install for static mode
150 ifneq ($(UCONVMSG_MODE),static)
151 install-resfiles: $(RESFILES)
152 $(MKINSTALLDIRS) $(DESTDIR)$(ICUDATA_DIR)
153 $(INVOKE) $(BINDIR)/pkgdata -p $(RESDIR) -O pkgdata.inc -m $(PKGMODE) -d $(RESDIR) -I $(INSTALLTO) -T $(RESDIR) $(RESDIR)/$(RESDIR).lst
157 $(UCONVMSG_LIB): resfiles
159 $(RESDIR)/$(RESOURCESDIR)/$(MSGNAME)_%.res: $(srcdir)/$(RESOURCESDIR)/%.txt
160 $(MKINSTALLDIRS) $(@D)
161 $(INVOKE) $(BINDIR)/genrb -p $(MSGNAME) -e UTF-8 -s $(^D) -d $(@D) $(^F)
163 install-man: $(ALL_MAN_FILES)
164 $(MKINSTALLDIRS) $(DESTDIR)$(mandir)/man$(SECTION)
165 $(INSTALL_DATA) $? $(DESTDIR)$(mandir)/man$(SECTION)