1#****************************************************************************** 2# 3# Copyright (C) 1999-2014, International Business Machines 4# Corporation and others. All Rights Reserved. 5# 6#****************************************************************************** 7## Makefile.in for ICU - layout 8 9## Source directory information 10srcdir = @srcdir@ 11top_srcdir = @top_srcdir@ 12 13top_builddir = .. 14 15## All the flags and other definitions are included here. 16include $(top_builddir)/icudefs.mk 17 18## Build directory information 19subdir = layoutex 20 21## Extra files to remove for 'make clean' 22CLEANFILES = *~ $(DEPS) $(IMPORT_LIB) $(MIDDLE_IMPORT_LIB) $(FINAL_IMPORT_LIB) 23 24## Target information 25 26TARGET_STUBNAME=$(LAYOUTEX_STUBNAME) 27 28ifneq ($(ENABLE_STATIC),) 29TARGET = $(LIBDIR)/$(LIBSICU)$(TARGET_STUBNAME)$(ICULIBSUFFIX).$(A) 30endif 31 32ifneq ($(ENABLE_SHARED),) 33SO_TARGET = $(LIBDIR)/$(LIBICU)$(TARGET_STUBNAME)$(ICULIBSUFFIX).$(SO) 34ALL_SO_TARGETS = $(SO_TARGET) $(MIDDLE_SO_TARGET) $(FINAL_SO_TARGET) $(SHARED_OBJECT) 35 36ifeq ($(ENABLE_SO_VERSION_DATA),1) 37SO_VERSION_DATA = layoutex.res 38endif 39 40ifeq ($(OS390BATCH),1) 41BATCH_TARGET = $(BATCH_LAYOUTEX_TARGET) 42BATCH_LIBS = $(BATCH_LIBICUUC) $(BATCH_LIBICULE) -lm 43endif # OS390BATCH 44 45endif # ENABLE_SHARED 46 47ALL_TARGETS = $(TARGET) $(ALL_SO_TARGETS) $(BATCH_TARGET) 48 49DYNAMICCPPFLAGS = $(SHAREDLIBCPPFLAGS) 50DYNAMICCFLAGS = $(SHAREDLIBCFLAGS) 51DYNAMICCXXFLAGS = $(SHAREDLIBCXXFLAGS) 52CFLAGS += $(LIBCFLAGS) 53CXXFLAGS += $(LIBCXXFLAGS) 54 55 56ifeq ($(USING_ICULEHB),no) 57# cppflags: load .. so that #include <layout/...> works 58ICULE_CFLAGS=-I$(srcdir)/.. 59else 60ICULE_CFLAGS=$(ICULEHB_CFLAGS) 61endif 62 63CPPFLAGS += -I$(srcdir) -I$(srcdir)/unicode -I$(top_srcdir)/common $(ICULE_CFLAGS) $(LIBCPPFLAGS) 64DEFS += -DU_LAYOUTEX_IMPLEMENTATION 65LDFLAGS += $(LDFLAGSICULX) 66LIBS = $(LIBICUUC) $(LIBICULE) $(DEFAULT_LIBS) 67 68OBJECTS = ParagraphLayout.o \ 69RunArrays.o \ 70LXUtilities.o \ 71playout.o \ 72plruns.o 73 74## Header files to install 75HEADERS= $(srcdir)/layout/ParagraphLayout.h $(srcdir)/layout/RunArrays.h $(srcdir)/layout/playout.h $(srcdir)/layout/plruns.h 76 77STATIC_OBJECTS = $(OBJECTS:.o=.$(STATIC_O)) 78 79DEPS = $(OBJECTS:.o=.d) 80 81-include Makefile.local 82 83## List of phony targets 84.PHONY : all all-local install install-local clean clean-local \ 85distclean distclean-local install-library install-headers dist \ 86dist-local check check-local check-exhaustive 87 88## Clear suffix list 89.SUFFIXES : 90 91## List of standard targets 92all: all-local 93install: install-local 94clean: clean-local 95distclean : distclean-local 96dist: dist-local 97check: all check-local 98 99check-exhaustive: check 100 101all-local: $(ALL_TARGETS) 102 103install-local: install-headers install-library 104ifneq ($(ICULE_CFLAGS),) 105 @echo "Installing icu-lx.pc" 106 $(MAKE) ALL_PKGCONFIG_SUFFIX=lx -C .. install-pkgconfig 107endif 108 109install-library: all-local 110 $(MKINSTALLDIRS) $(DESTDIR)$(libdir) 111ifneq ($(ENABLE_STATIC),) 112 $(INSTALL-L) $(TARGET) $(DESTDIR)$(libdir) 113endif 114ifneq ($(ENABLE_SHARED),) 115 $(INSTALL-L) $(FINAL_SO_TARGET) $(DESTDIR)$(libdir) 116ifneq ($(FINAL_SO_TARGET),$(SO_TARGET)) 117 cd $(DESTDIR)$(libdir) && $(RM) $(notdir $(SO_TARGET)) && ln -s $(notdir $(FINAL_SO_TARGET)) $(notdir $(SO_TARGET)) 118ifneq ($(FINAL_SO_TARGET),$(MIDDLE_SO_TARGET)) 119 cd $(DESTDIR)$(libdir) && $(RM) $(notdir $(MIDDLE_SO_TARGET)) && ln -s $(notdir $(FINAL_SO_TARGET)) $(notdir $(MIDDLE_SO_TARGET)) 120endif 121endif 122ifneq ($(IMPORT_LIB_EXT),) 123 $(INSTALL-L) $(FINAL_IMPORT_LIB) $(DESTDIR)$(libdir) 124ifneq ($(IMPORT_LIB),$(FINAL_IMPORT_LIB)) 125 cd $(DESTDIR)$(libdir) && $(RM) $(notdir $(IMPORT_LIB)) && ln -s $(notdir $(FINAL_IMPORT_LIB)) $(notdir $(IMPORT_LIB)) 126endif 127ifneq ($(MIDDLE_IMPORT_LIB),$(FINAL_IMPORT_LIB)) 128 cd $(DESTDIR)$(libdir) && $(RM) $(notdir $(MIDDLE_IMPORT_LIB)) && ln -s $(notdir $(FINAL_IMPORT_LIB)) $(notdir $(MIDDLE_IMPORT_LIB)) 129endif 130endif 131endif 132 133install-headers: 134 $(MKINSTALLDIRS) $(DESTDIR)$(includedir)/layout 135 @for file in $(HEADERS); do \ 136 echo "$(INSTALL_DATA) $$file $(DESTDIR)$(includedir)/layout"; \ 137 $(INSTALL_DATA) $$file $(DESTDIR)$(includedir)/layout || exit; \ 138 done 139 140dist-local: 141 142clean-local: 143 test -z "$(CLEANFILES)" || $(RMV) $(CLEANFILES) 144 $(RMV) $(OBJECTS) $(STATIC_OBJECTS) $(ALL_TARGETS) $(SO_VERSION_DATA) 145 146distclean-local: clean-local 147 $(RMV) Makefile 148 149check-local: 150 151Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status 152 cd $(top_builddir) \ 153 && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status 154 155ifneq ($(ENABLE_STATIC),) 156$(TARGET): $(STATIC_OBJECTS) 157 $(AR) $(ARFLAGS) $(AR_OUTOPT)$@ $^ 158 $(RANLIB) $@ 159endif 160 161ifneq ($(ENABLE_SHARED),) 162$(SHARED_OBJECT): $(OBJECTS) $(SO_VERSION_DATA) 163 $(SHLIB.cc) $(LD_SONAME) $(OUTOPT)$@ $^ $(LIBS) 164ifeq ($(ENABLE_RPATH),YES) 165ifneq ($(wildcard $(libdir)/$(MIDDLE_SO_TARGET)),) 166 $(warning RPATH warning: --enable-rpath means test programs may use existing $(libdir)/$(MIDDLE_SO_TARGET)) 167endif 168endif 169 170ifeq ($(OS390BATCH),1) 171$(BATCH_TARGET):$(OBJECTS) 172 $(SHLIB.cc) $(LD_SONAME) $(OUTOPT)$@ $^ $(BATCH_LIBS) 173endif # OS390BATCH 174endif # ENABLE_SHARED 175 176ifeq (,$(MAKECMDGOALS)) 177-include $(DEPS) 178else 179ifneq ($(patsubst %clean,,$(MAKECMDGOALS)),) 180-include $(DEPS) 181endif 182endif 183 184