1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/intl/icu/source/config/Makefile.inc.in Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,294 @@ 1.4 +## -*-makefile-*- 1.5 +#****************************************************************************** 1.6 +# Copyright (C) 1999-2012, International Business Machines 1.7 +# Corporation and others. All Rights Reserved. 1.8 +#****************************************************************************** 1.9 +# This Makefile.inc is designed to be included into projects which make use 1.10 +# of the ICU. 1.11 + 1.12 +# CONTENTS OF THIS FILE 1.13 +# 1). Base configuration information and linkage 1.14 +# 2). Variables giving access to ICU tools 1.15 +# 3). Host information 1.16 +# 4). Compiler flags and settings 1.17 +# 5). Data Packaging directives 1.18 +# 6). Include of platform make fragment (mh-* file) 1.19 + 1.20 +################################################################## 1.21 +################################################################## 1.22 +# 1.23 +# *1* base configuration information and linkage 1.24 +# 1.25 +################################################################## 1.26 +# The PREFIX is the base of where ICU is installed. 1.27 +# Inside this directory you should find bin, lib, include/unicode, 1.28 +# etc. If ICU is not installed in this directory, you must change the 1.29 +# following line. There should exist $(prefix)/include/unicode/utypes.h 1.30 +# for example. 1.31 +prefix = @prefix@ 1.32 +exec_prefix = @exec_prefix@ 1.33 +libdir = @libdir@ 1.34 +libexecdir = @libexecdir@ 1.35 +bindir = @bindir@ 1.36 +datarootdir = @datarootdir@ 1.37 +datadir = @datadir@ 1.38 +sbindir = @sbindir@ 1.39 + 1.40 +# about the ICU version 1.41 +VERSION = @VERSION@ 1.42 +UNICODE_VERSION = @UNICODE_VERSION@ 1.43 + 1.44 +# The prefix for ICU libraries, normally 'icu' 1.45 +ICUPREFIX = icu 1.46 +PACKAGE = @PACKAGE@ 1.47 +LIBICU = lib$(ICUPREFIX) 1.48 + 1.49 +# Static library prefix and file extension 1.50 +STATIC_PREFIX = s 1.51 +LIBSICU = lib$(STATIC_PREFIX)$(ICUPREFIX) 1.52 +A = a 1.53 + 1.54 +# Suffix at the end of libraries. Usually empty. 1.55 +ICULIBSUFFIX = @ICULIBSUFFIX@ 1.56 +# ICULIBSUFFIX_VERSION is non-empty if it is to contain a library 1.57 +# version. For example, if it is 21, it means libraries are named 1.58 +# libicuuc21.so for example. 1.59 + 1.60 +# rpath links a library search path right into the binaries. 1.61 +## mh-files MUST NOT override RPATHLDFLAGS unless they provide 1.62 +## equivalent '#SH#' lines for icu-config fixup 1.63 +ENABLE_RPATH = @ENABLE_RPATH@ 1.64 +ifeq ($(ENABLE_RPATH),YES) 1.65 +RPATHLDFLAGS = $(LD_RPATH)$(LD_RPATH_PRE)$(libdir) 1.66 +endif 1.67 + 1.68 +#SH## icu-config version of above 'if': 1.69 +#SH#case "x$ENABLE_RPATH" in 1.70 +#SH# x[yY]*) 1.71 +#SH# ENABLE_RPATH=YES 1.72 +#SH# RPATHLDFLAGS="${LD_RPATH}${LD_RPATH_PRE}${libdir}" 1.73 +#SH# ;; 1.74 +#SH# 1.75 +#SH# x[nN]*) 1.76 +#SH# ENABLE_RPATH=NO 1.77 +#SH# RPATHLDFLAGS="" 1.78 +#SH# ;; 1.79 +#SH# 1.80 +#SH# x) 1.81 +#SH# ENABLE_RPATH=NO 1.82 +#SH# RPATHLDFLAGS="" 1.83 +#SH# ;; 1.84 +#SH# 1.85 +#SH# *) 1.86 +#SH# echo $0: Unknown --enable-rpath value ${ENABLE_RPATH} 1>&2 1.87 +#SH# exit 3 1.88 +#SH# ;; 1.89 +#SH#esac 1.90 + 1.91 +# Name flexibility for the library naming scheme. Any modifications should 1.92 +# be made in the mh- file for the specific platform. 1.93 +DATA_STUBNAME = data 1.94 +COMMON_STUBNAME = uc 1.95 +I18N_STUBNAME = i18n 1.96 +LAYOUT_STUBNAME = le 1.97 +LAYOUTEX_STUBNAME = lx 1.98 +IO_STUBNAME = io 1.99 +TOOLUTIL_STUBNAME = tu 1.100 +CTESTFW_STUBNAME = test 1.101 + 1.102 + 1.103 + 1.104 +### To link your application with ICU: 1.105 +# 1. use LDFLAGS, CFLAGS, etc from above 1.106 +# 2. link with $(ICULIBS) 1.107 +# 3. optionally, add one or more of: 1.108 +# - $(ICULIBS_I18N) - i18n library, formatting, etc. 1.109 +# - $(ICULIBS_LAYOUT) - ICU layout library. 1.110 +# - $(ICULIBS_ICUIO) - ICU stdio equivalent library 1.111 + 1.112 +ICULIBS_COMMON = -l$(ICUPREFIX)uc$(ICULIBSUFFIX)$(ICULIBSUFFIX_VERSION) 1.113 +ICULIBS_DATA = -l$(ICUPREFIX)$(DATA_STUBNAME)$(ICULIBSUFFIX)$(ICULIBSUFFIX_VERSION) 1.114 +ICULIBS_I18N = -l$(ICUPREFIX)$(I18N_STUBNAME)$(ICULIBSUFFIX)$(ICULIBSUFFIX_VERSION) 1.115 +ICULIBS_TOOLUTIL = -l$(ICUPREFIX)tu$(ICULIBSUFFIX)$(ICULIBSUFFIX_VERSION) 1.116 +ICULIBS_CTESTFW = -l$(ICUPREFIX)ctestfw$(ICULIBSUFFIX)$(ICULIBSUFFIX_VERSION) 1.117 +ICULIBS_ICUIO = -l$(ICUPREFIX)io$(ICULIBSUFFIX)$(ICULIBSUFFIX_VERSION) 1.118 +ICULIBS_OBSOLETE = -l$(ICUPREFIX)obsolete$(ICULIBSUFFIX)$(ICULIBSUFFIX_VERSION) 1.119 +ICULIBS_LAYOUT = -l$(ICUPREFIX)le$(ICULIBSUFFIX)$(ICULIBSUFFIX_VERSION) 1.120 +ICULIBS_LAYOUTEX = -l$(ICUPREFIX)lx$(ICULIBSUFFIX)$(ICULIBSUFFIX_VERSION) 1.121 +ICULIBS_BASE = $(LIBS) -L$(libdir) 1.122 + 1.123 +# for icu-config to test with 1.124 +ICULIBS_COMMON_LIB_NAME = ${LIBICU}${COMMON_STUBNAME}${ICULIBSUFFIX}${ICULIBSUFFIX_VERSION}.${SO} 1.125 +ICULIBS_COMMON_LIB_NAME_A = ${LIBICU}${COMMON_STUBNAME}${ICULIBSUFFIX}.${A} 1.126 + 1.127 +# ICULIBS is the set of libraries your application should link 1.128 +# with usually. Many applications will want to add $(ICULIBS_I18N) as well. 1.129 +ICULIBS = $(ICULIBS_BASE) $(ICULIBS_I18N) $(ICULIBS_COMMON) $(ICULIBS_DATA) 1.130 + 1.131 +# Proper echo newline handling is needed in icu-config 1.132 +ECHO_N=@ICU_ECHO_N@ 1.133 +ECHO_C=@ICU_ECHO_C@ 1.134 +# Not currently being used but good to have for proper tab handling 1.135 +ECHO_T=@ICU_ECHO_T@ 1.136 + 1.137 +################################################################## 1.138 +################################################################## 1.139 +# 1.140 +# *2* access to ICU tools 1.141 +# 1.142 +################################################################## 1.143 +# Environment variable to set a runtime search path 1.144 +# (Overridden when necessary in -mh files) 1.145 +LDLIBRARYPATH_ENVVAR = LD_LIBRARY_PATH 1.146 + 1.147 +# Versioned target for a shared library 1.148 +FINAL_SO_TARGET = $(SO_TARGET).$(SO_TARGET_VERSION) 1.149 +MIDDLE_SO_TARGET = $(SO_TARGET).$(SO_TARGET_VERSION_MAJOR) 1.150 + 1.151 +# Access to important ICU tools. 1.152 +# Use as follows: $(INVOKE) $(GENRB) arguments .. 1.153 +INVOKE = $(LDLIBRARYPATH_ENVVAR)=$(libdir):$$$(LDLIBRARYPATH_ENVVAR) $(LEAK_CHECKER) 1.154 +GENCCODE = $(sbindir)/genccode 1.155 +ICUPKG = $(sbindir)/icupkg 1.156 +GENCMN = $(sbindir)/gencmn 1.157 +GENRB = $(bindir)/genrb 1.158 +PKGDATA = $(bindir)/pkgdata 1.159 + 1.160 +# moved here because of dependencies 1.161 +pkgdatadir = $(datadir)/$(PACKAGE)$(ICULIBSUFFIX)/$(VERSION) 1.162 +pkglibdir = $(libdir)/$(PACKAGE)$(ICULIBSUFFIX)/$(VERSION) 1.163 + 1.164 +################################################################## 1.165 +################################################################## 1.166 +# 1.167 +# *3* Information about the host 1.168 +# 1.169 +################################################################## 1.170 + 1.171 +# Information about the host that 'configure' was run on. 1.172 +host = @host@ 1.173 +host_alias = @host_alias@ 1.174 +host_cpu = @host_cpu@ 1.175 +host_vendor = @host_vendor@ 1.176 +host_os = @host_os@ 1.177 +# Our platform canonical name (as determined by configure) 1.178 +# this is a #define value (i.e. U_XXXX or XXXX) 1.179 +platform = @platform@ 1.180 + 1.181 +################################################################## 1.182 +################################################################## 1.183 +# 1.184 +# *4* compiler flags and misc. options 1.185 +# 1.186 +################################################################## 1.187 +AR = @AR@ 1.188 +# initial tab keeps it out of the shell version. 1.189 + ARFLAGS := @ARFLAGS@ $(ARFLAGS) 1.190 +#SH#ARFLAGS="@ARFLAGS@ ${ARFLAGS}" 1.191 +CC = @CC@ 1.192 +CFLAGS = @CFLAGS@ 1.193 +CPP = @CPP@ 1.194 +CPPFLAGS = @CPPFLAGS@ $(LIBCPPFLAGS) -I$(prefix)/include 1.195 +CXX = @CXX@ 1.196 +CXXFLAGS = @CXXFLAGS@ 1.197 +DEFAULT_MODE = @DATA_PACKAGING_MODE@ 1.198 +DEFS = @DEFS@ 1.199 +FFLAGS = @FFLAGS@ 1.200 +# use a consistent INSTALL 1.201 +INSTALL = $(SHELL) $(pkgdatadir)/install-sh -c 1.202 +INSTALL_DATA = @INSTALL_DATA@ 1.203 +INSTALL_DATA = @INSTALL_DATA@ 1.204 +INSTALL_PROGRAM = @INSTALL_PROGRAM@ 1.205 +INSTALL_PROGRAM = @INSTALL_PROGRAM@ 1.206 +INSTALL_SCRIPT = @INSTALL_SCRIPT@ 1.207 +LDFLAGS = @LDFLAGS@ $(RPATHLDFLAGS) 1.208 +LIBS = @LIBS@ 1.209 +LIB_M = @LIB_M@ 1.210 +LIB_VERSION = @LIB_VERSION@ 1.211 +LIB_VERSION_MAJOR = @LIB_VERSION_MAJOR@ 1.212 +MKINSTALLDIRS = $(SHELL) $(pkgdatadir)/mkinstalldirs 1.213 +RANLIB = @RANLIB@ 1.214 +RMV = rm -rf 1.215 +SHELL = @SHELL@ 1.216 +SHLIB.c= $(CC) $(DEFS) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) -shared 1.217 +SHLIB.cc= $(CXX) $(DEFS) $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS) -shared 1.218 +U_IS_BIG_ENDIAN = @U_IS_BIG_ENDIAN@ 1.219 +includedir = @includedir@ 1.220 +infodir = @infodir@ 1.221 +localstatedir = @localstatedir@ 1.222 +mandir = @mandir@ 1.223 +oldincludedir = @oldincludedir@ 1.224 +program_transform_name = @program_transform_name@ 1.225 +sharedstatedir = @sharedstatedir@ 1.226 +sysconfdir = @sysconfdir@ 1.227 +INSTALL-L = ${INSTALL_DATA} 1.228 + 1.229 +# for derivative builds - don't bother with VERBOSE/NONVERBOSE SILENT_COMPILE 1.230 +SILENT_COMPILE=$(1) #M# 1.231 +ICU_MSG=@echo " $(1) " #M# 1.232 + 1.233 +################################################################## 1.234 +################################################################## 1.235 +# 1.236 +# *5* packaging options and directories 1.237 +# 1.238 +################################################################## 1.239 + 1.240 + 1.241 +# The basename of the ICU data file (i.e. icudt21b ) 1.242 +ICUDATA_CHAR = @ICUDATA_CHAR@ 1.243 +ICUDATA_NAME = icudt@LIB_VERSION_MAJOR@@ICUDATA_CHAR@ 1.244 + 1.245 +# Defaults for pkgdata's mode and directories 1.246 +# The default data dir changes depending on what packaging mode 1.247 +# is being used 1.248 +ifeq ($(strip $(PKGDATA_MODE)),) 1.249 +#SH# if [ "x$PKGDATA_MODE" = "x" ]; 1.250 +#SH# then 1.251 +PKGDATA_MODE=@DATA_PACKAGING_MODE@ 1.252 +#SH# fi 1.253 +endif 1.254 + 1.255 +#SH# case "$PKGDATA_MODE" in 1.256 +ifeq ($(PKGDATA_MODE),common) 1.257 +#SH# common) 1.258 +ICUDATA_DIR = $(pkgdatadir) 1.259 +ICUPKGDATA_DIR = $(ICUDATA_DIR) 1.260 +#SH# ;; 1.261 +else 1.262 +ifeq ($(PKGDATA_MODE),dll) 1.263 +#SH# dll) 1.264 +ICUDATA_DIR = $(pkgdatadir) 1.265 +ICUPKGDATA_DIR = $(libdir) 1.266 +#SH# ;; 1.267 +else 1.268 +#SH# *) 1.269 +ICUDATA_DIR = $(pkgdatadir) 1.270 +ICUPKGDATA_DIR = $(ICUDATA_DIR) 1.271 +#SH# ;; 1.272 +endif 1.273 +endif 1.274 + 1.275 +#SH# esac 1.276 + 1.277 +GENCCODE_ASSEMBLY = @GENCCODE_ASSEMBLY@ 1.278 + 1.279 +################################################################## 1.280 +################################################################## 1.281 +# 1.282 +# *6* Inclusion of platform make fragment (mh-* file) 1.283 +# 1.284 +################################################################## 1.285 +# The mh- file ("make fragment") for the platform is included here. 1.286 +# It may override the above settings. 1.287 +# It is put last so that the mh-file can override anything. 1.288 +# The selfcheck is just a sanity check that this makefile is 1.289 +# parseable. The mh fragment is only included if this does not occur. 1.290 + 1.291 +ifeq (selfcheck,$(MAKECMDGOALS)) #M# 1.292 +selfcheck: #M# 1.293 + @echo passed #M# 1.294 +else #M# 1.295 +include $(pkgdatadir)/config/@platform_make_fragment_name@ 1.296 +endif #M# 1.297 +