add perl5 support to Vx6.9 for openssl-3.1.7 (#1)
Reviewed-on: http://13.234.246.121:3000/Neominds/ossl35vx69/pulls/1 Reviewed-by: Jayesh Babu <jayesh@neominds.in> Co-authored-by: siddhant <siddhant.singh@neominds.in> Co-committed-by: siddhant <siddhant.singh@neominds.in>
This commit is contained in:
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,843 @@
|
||||
#!/bin/sh
|
||||
## -*-sh-*-
|
||||
#set -x
|
||||
# BEGIN of icu-config-top
|
||||
# Copyright (C) 2016 and later: Unicode, Inc. and others.
|
||||
# License & terms of use: http://www.unicode.org/copyright.html
|
||||
#******************************************************************************
|
||||
# Copyright (C) 1999-2013, International Business Machines
|
||||
# Corporation and others. All Rights Reserved.
|
||||
#******************************************************************************
|
||||
# This script is designed to aid configuration of ICU.
|
||||
# rpath links a library search path right into the binaries.
|
||||
#
|
||||
# Note: it's preferred to use the .pc files rather than icu-config.
|
||||
#
|
||||
|
||||
### END of icu-config-top
|
||||
|
||||
## Zero out prefix.
|
||||
execprefix=
|
||||
prefix=
|
||||
|
||||
|
||||
loaddefs()
|
||||
{
|
||||
|
||||
# Following from icu/icu4c/source/config/Makefile.inc
|
||||
# Copyright (C) 2016 and later: Unicode, Inc. and others.
|
||||
# License & terms of use: http://www.unicode.org/copyright.html
|
||||
## -*-makefile-*-
|
||||
#******************************************************************************
|
||||
# Copyright (C) 1999-2014, International Business Machines
|
||||
# Corporation and others. All Rights Reserved.
|
||||
#******************************************************************************
|
||||
# This Makefile.inc is designed to be included into projects which make use
|
||||
# of the ICU.
|
||||
|
||||
# CONTENTS OF THIS FILE
|
||||
# 1). Base configuration information and linkage
|
||||
# 2). Variables giving access to ICU tools
|
||||
# 3). Host information
|
||||
# 4). Compiler flags and settings
|
||||
# 5). Data Packaging directives
|
||||
# 6). Include of platform make fragment (mh-* file)
|
||||
|
||||
##################################################################
|
||||
#
|
||||
# *1* base configuration information and linkage
|
||||
#
|
||||
##################################################################
|
||||
# The PREFIX is the base of where ICU is installed.
|
||||
# Inside this directory you should find bin, lib, include/unicode,
|
||||
# etc. If ICU is not installed in this directory, you must change the
|
||||
# following line. There should exist ${prefix}/include/unicode/utypes.h
|
||||
# for example.
|
||||
default_prefix="/mingw64"
|
||||
if [ "x${prefix}" = "x" ]; then prefix="$default_prefix"; fi
|
||||
exec_prefix="${prefix}"
|
||||
libdir="${exec_prefix}/lib"
|
||||
libexecdir="${exec_prefix}/libexec"
|
||||
bindir="${exec_prefix}/bin"
|
||||
datarootdir="${prefix}/share"
|
||||
datadir="${datarootdir}"
|
||||
sbindir="${exec_prefix}/sbin"
|
||||
|
||||
# about the ICU version
|
||||
VERSION="73.1"
|
||||
UNICODE_VERSION="15.0"
|
||||
|
||||
# The prefix for ICU libraries, normally 'icu'
|
||||
ICUPREFIX="icu"
|
||||
PACKAGE="icu"
|
||||
LIBICU="lib${ICUPREFIX}"
|
||||
|
||||
# Static library prefix and file extension
|
||||
STATIC_PREFIX="s"
|
||||
LIBSICU="lib${STATIC_PREFIX}${ICUPREFIX}"
|
||||
A="a"
|
||||
|
||||
# Suffix at the end of libraries. Usually empty.
|
||||
ICULIBSUFFIX=""
|
||||
# ICULIBSUFFIX_VERSION is non-empty if it is to contain a library
|
||||
# version. For example, if it is 21, it means libraries are named
|
||||
# libicuuc21.so for example.
|
||||
|
||||
# rpath links a library search path right into the binaries.
|
||||
## mh-files MUST NOT override RPATHLDFLAGS unless they provide
|
||||
## equivalent '#SH#' lines for icu-config fixup
|
||||
default_ENABLE_RPATH=""
|
||||
if [ "x${ENABLE_RPATH}" = "x" ]; then ENABLE_RPATH="$default_ENABLE_RPATH"; fi
|
||||
RPATHLDFLAGS="${LD_RPATH}${LD_RPATH_PRE}${libdir}"
|
||||
|
||||
# icu-config version of above 'if':
|
||||
case "x$ENABLE_RPATH" in
|
||||
x[yY]*)
|
||||
ENABLE_RPATH=YES
|
||||
RPATHLDFLAGS="${LD_RPATH}${LD_RPATH_PRE}${libdir}"
|
||||
;;
|
||||
|
||||
x[nN]*)
|
||||
ENABLE_RPATH=NO
|
||||
RPATHLDFLAGS=""
|
||||
;;
|
||||
|
||||
x)
|
||||
ENABLE_RPATH=NO
|
||||
RPATHLDFLAGS=""
|
||||
;;
|
||||
|
||||
*)
|
||||
echo $0: Unknown --enable-rpath value ${ENABLE_RPATH} 1>&2
|
||||
exit 3
|
||||
;;
|
||||
esac
|
||||
|
||||
# Name flexibility for the library naming scheme. Any modifications should
|
||||
# be made in the mh- file for the specific platform.
|
||||
DATA_STUBNAME="data"
|
||||
COMMON_STUBNAME="uc"
|
||||
I18N_STUBNAME="i18n"
|
||||
LAYOUTEX_STUBNAME="lx"
|
||||
IO_STUBNAME="io"
|
||||
TOOLUTIL_STUBNAME="tu"
|
||||
CTESTFW_STUBNAME="test"
|
||||
|
||||
|
||||
### To link your application with ICU:
|
||||
# 1. use LDFLAGS, CFLAGS, etc from above
|
||||
# 2. link with ${ICULIBS}
|
||||
# 3. optionally, add one or more of:
|
||||
# - ${ICULIBS_I18N} - i18n library, formatting, etc.
|
||||
# - ${ICULIBS_ICUIO} - ICU stdio equivalent library
|
||||
|
||||
ICULIBS_COMMON="-l${ICUPREFIX}uc${ICULIBSUFFIX}${ICULIBSUFFIX_VERSION}"
|
||||
ICULIBS_DATA="-l${ICUPREFIX}${DATA_STUBNAME}${ICULIBSUFFIX}${ICULIBSUFFIX_VERSION}"
|
||||
ICULIBS_I18N="-l${ICUPREFIX}${I18N_STUBNAME}${ICULIBSUFFIX}${ICULIBSUFFIX_VERSION}"
|
||||
ICULIBS_TOOLUTIL="-l${ICUPREFIX}tu${ICULIBSUFFIX}${ICULIBSUFFIX_VERSION}"
|
||||
ICULIBS_CTESTFW="-l${ICUPREFIX}ctestfw${ICULIBSUFFIX}${ICULIBSUFFIX_VERSION}"
|
||||
ICULIBS_ICUIO="-l${ICUPREFIX}io${ICULIBSUFFIX}${ICULIBSUFFIX_VERSION}"
|
||||
ICULIBS_OBSOLETE="-l${ICUPREFIX}obsolete${ICULIBSUFFIX}${ICULIBSUFFIX_VERSION}"
|
||||
ICULIBS_LAYOUTEX="-l${ICUPREFIX}lx${ICULIBSUFFIX}${ICULIBSUFFIX_VERSION}"
|
||||
ICULIBS_BASE="-L${libdir}"
|
||||
|
||||
# for icu-config to test with
|
||||
ICULIBS_COMMON_LIB_NAME="${LIBICU}${COMMON_STUBNAME}${ICULIBSUFFIX}${ICULIBSUFFIX_VERSION}.${SO}"
|
||||
ICULIBS_COMMON_LIB_NAME_A="${LIBICU}${COMMON_STUBNAME}${ICULIBSUFFIX}.${A}"
|
||||
|
||||
# ICULIBS is the set of libraries your application should link
|
||||
# with usually. Many applications will want to add ${ICULIBS_I18N} as well.
|
||||
ICULIBS="${ICULIBS_BASE} ${ICULIBS_I18N} ${ICULIBS_COMMON} ${ICULIBS_DATA} "
|
||||
|
||||
# Proper echo newline handling is needed in icu-config
|
||||
ECHO_N="-n"
|
||||
ECHO_C=""
|
||||
# Not currently being used but good to have for proper tab handling
|
||||
ECHO_T=""
|
||||
|
||||
##################################################################
|
||||
#
|
||||
# *2* access to ICU tools
|
||||
#
|
||||
##################################################################
|
||||
# Environment variable to set a runtime search path
|
||||
# (Overridden when necessary in -mh files)
|
||||
LDLIBRARYPATH_ENVVAR="LD_LIBRARY_PATH"
|
||||
|
||||
# Versioned target for a shared library
|
||||
## FINAL_SO_TARGET = ${SO_TARGET}.${SO_TARGET_VERSION}
|
||||
## MIDDLE_SO_TARGET = ${SO_TARGET}.${SO_TARGET_VERSION_MAJOR}
|
||||
|
||||
# Access to important ICU tools.
|
||||
# Use as follows: ${INVOKE} ${GENRB} arguments ..
|
||||
INVOKE="${LDLIBRARYPATH_ENVVAR}=${libdir}:$$${LDLIBRARYPATH_ENVVAR} ${LEAK_CHECKER}"
|
||||
GENCCODE="${sbindir}/genccode"
|
||||
ICUPKG="${sbindir}/icupkg"
|
||||
GENCMN="${sbindir}/gencmn"
|
||||
GENRB="${bindir}/genrb"
|
||||
PKGDATA="${bindir}/pkgdata"
|
||||
|
||||
# moved here because of dependencies
|
||||
pkgdatadir="${datadir}/${PACKAGE}${ICULIBSUFFIX}/${VERSION}"
|
||||
pkglibdir="${libdir}/${PACKAGE}${ICULIBSUFFIX}/${VERSION}"
|
||||
|
||||
##################################################################
|
||||
#
|
||||
# *3* Information about the host
|
||||
#
|
||||
##################################################################
|
||||
|
||||
# Information about the host that 'configure' was run on.
|
||||
host="x86_64-w64-mingw32"
|
||||
host_alias="x86_64-w64-mingw32"
|
||||
host_cpu="x86_64"
|
||||
host_vendor="w64"
|
||||
host_os="mingw32"
|
||||
# Our platform canonical name (as determined by configure)
|
||||
# this is a #define value (i.e. U_XXXX or XXXX)
|
||||
platform="U_MINGW"
|
||||
|
||||
##################################################################
|
||||
#
|
||||
# *4* compiler flags and misc. options
|
||||
#
|
||||
##################################################################
|
||||
AR="ar"
|
||||
# initial tab keeps it out of the shell version.
|
||||
ARFLAGS=" ${ARFLAGS}"
|
||||
CC="gcc"
|
||||
CPP="gcc -E"
|
||||
CFLAGS=""
|
||||
CPPFLAGS="-I${prefix}/include"
|
||||
CXXFLAGS="-std=c++11"
|
||||
CXX="g++"
|
||||
DEFAULT_MODE="dll"
|
||||
DEFS="-DPACKAGE_NAME=\"ICU\" -DPACKAGE_TARNAME=\"International\ Components\ for\ Unicode\" -DPACKAGE_VERSION=\"73.1\" -DPACKAGE_STRING=\"ICU\ 73.1\" -DPACKAGE_BUGREPORT=\"http://icu-project.org/bugs\" -DPACKAGE_URL=\"http://icu-project.org\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DSIZEOF_VOID_P=8 -DHAVE_LIBM=1 -DHAVE_GETTIMEOFDAY=1 -DHAVE_LIBPTHREAD=1 -DHAVE_INTTYPES_H=1 -DHAVE_DIRENT_H=1 -DHAVE_WCHAR_H=1 -DSIZEOF_WCHAR_T=2 "
|
||||
# use a consistent INSTALL
|
||||
INSTALL="${SHELL} ${pkgdatadir}/install-sh -c"
|
||||
INSTALL_DATA="${INSTALL} -m 644"
|
||||
INSTALL_PROGRAM="${INSTALL}"
|
||||
INSTALL_SCRIPT="${INSTALL}"
|
||||
LDFLAGS="${RPATHLDFLAGS}"
|
||||
LIBS="-lpthread -lm "
|
||||
LIB_M=""
|
||||
LIB_VERSION="73.1"
|
||||
LIB_VERSION_MAJOR="73"
|
||||
MKINSTALLDIRS="${SHELL} ${pkgdatadir}/mkinstalldirs"
|
||||
RANLIB="ranlib"
|
||||
RMV="rm -rf"
|
||||
SHELL="/bin/sh"
|
||||
SHLIB_c="${CC} ${DEFS} ${CPPFLAGS} ${CFLAGS} ${LDFLAGS} -shared"
|
||||
SHLIB_cc="${CXX} ${DEFS} ${CPPFLAGS} ${CXXFLAGS} ${LDFLAGS} -shared"
|
||||
U_IS_BIG_ENDIAN="0"
|
||||
includedir="${prefix}/include"
|
||||
infodir="${datarootdir}/info"
|
||||
localstatedir="${prefix}/var"
|
||||
mandir="${datarootdir}/man"
|
||||
oldincludedir="/usr/include"
|
||||
program_transform_name="s,x,x,"
|
||||
sharedstatedir="${prefix}/com"
|
||||
sysconfdir="${prefix}/etc"
|
||||
INSTALL_L="${INSTALL_DATA}"
|
||||
|
||||
# for derivative builds - don't bother with VERBOSE/NONVERBOSE SILENT_COMPILE
|
||||
|
||||
##################################################################
|
||||
#
|
||||
# *5* packaging options and directories
|
||||
#
|
||||
##################################################################
|
||||
|
||||
# The basename of the ICU data file (i.e. icudt21b )
|
||||
ICUDATA_CHAR="l"
|
||||
ICUDATA_NAME="icudt73l"
|
||||
|
||||
# Defaults for pkgdata's mode and directories
|
||||
# The default data dir changes depending on what packaging mode
|
||||
# is being used
|
||||
if [ "x$PKGDATA_MODE" = "x" ];
|
||||
then
|
||||
PKGDATA_MODE="dll"
|
||||
fi
|
||||
|
||||
case "$PKGDATA_MODE" in
|
||||
common)
|
||||
ICUDATA_DIR="${pkgdatadir}"
|
||||
ICUPKGDATA_DIR="${ICUDATA_DIR}"
|
||||
;;
|
||||
dll)
|
||||
ICUDATA_DIR="${pkgdatadir}"
|
||||
ICUPKGDATA_DIR="${libdir}"
|
||||
;;
|
||||
*)
|
||||
ICUDATA_DIR="${pkgdatadir}"
|
||||
ICUPKGDATA_DIR="${ICUDATA_DIR}"
|
||||
;;
|
||||
|
||||
esac
|
||||
|
||||
GENCCODE_ASSEMBLY=""
|
||||
|
||||
##################################################################
|
||||
#
|
||||
# *6* Inclusion of platform make fragment (mh-* file)
|
||||
#
|
||||
##################################################################
|
||||
# The mh- file ("make fragment") for the platform is included here.
|
||||
# It may override the above settings.
|
||||
# It is put last so that the mh-file can override anything.
|
||||
# The selfcheck is just a sanity check that this makefile is
|
||||
# parseable. The mh fragment is only included if this does not occur.
|
||||
|
||||
# Following from mh-mingw64
|
||||
## -*-makefile-*-
|
||||
## Copyright (C) 2016 and later: Unicode, Inc. and others.
|
||||
## License & terms of use: http://www.unicode.org/copyright.html
|
||||
## Cygwin64/MinGW64 specific setup
|
||||
## Copyright (c) 2012-2014, International Business Machines Corporation and
|
||||
## others. All Rights Reserved.
|
||||
|
||||
# TODO: Finish the rest of this port. This platform port is incomplete.
|
||||
|
||||
# On Windows we generally have the DLLs in the bin directory rather than the lib directory.
|
||||
# This setting moves the ICU DLLs into the bin folder for MinGW/MSYS2 when "make install" is run.
|
||||
# If you prefer to have the DLLs in the lib folder, then set this to NO instead.
|
||||
MINGW_MOVEDLLSTOBINDIR="YES"
|
||||
|
||||
# This file is similar to mh-mingw
|
||||
# Any changes made here may also need to be made in mh-mingw
|
||||
|
||||
## Commands to generate dependency files
|
||||
GEN_DEPS_c="${CC} -E -MM ${DEFS} ${CPPFLAGS}"
|
||||
GEN_DEPS_cc="${CXX} -E -MM ${DEFS} ${CPPFLAGS}"
|
||||
|
||||
## Flags to create/use a static library
|
||||
## Make sure that the static libraries can be built and used
|
||||
CPPFLAGS="${CPPFLAGS} -DU_STATIC_IMPLEMENTATION"
|
||||
## Make sure that the static libraries can be built
|
||||
STATICCPPFLAGS="-DU_STATIC_IMPLEMENTATION"
|
||||
|
||||
## ICU requires a minimum target of Windows 7, and MinGW does not set this by default.
|
||||
## https://msdn.microsoft.com/en-us/library/aa383745.aspx
|
||||
CPPFLAGS="${CPPFLAGS} -DWINVER=0x0601 -D_WIN32_WINNT=0x0601"
|
||||
|
||||
## Flags for position independent code
|
||||
SHAREDLIBCFLAGS=""
|
||||
SHAREDLIBCXXFLAGS=""
|
||||
SHAREDLIBCPPFLAGS="-DPIC"
|
||||
|
||||
## Additional flags when building libraries and with threads
|
||||
THREADSCFLAGS="-mthreads"
|
||||
THREADSCXXFLAGS="-mthreads"
|
||||
LIBCPPFLAGS=""
|
||||
|
||||
## Add 'd' suffix to the names of binary files with Debug configuration
|
||||
|
||||
# Commands to link. Link with C++ in case static libraries are used.
|
||||
LINK_c="${CXX} ${CXXFLAGS} ${LDFLAGS}"
|
||||
#LINK.cc= ${CXX} ${CXXFLAGS} ${LDFLAGS}
|
||||
|
||||
## Shared library options
|
||||
LD_SOOPTIONS=""
|
||||
|
||||
## Commands to make a shared library
|
||||
|
||||
## Compiler switch to embed a runtime search path
|
||||
LD_RPATH=""
|
||||
LD_RPATH_PRE="-Wl,-rpath,"
|
||||
|
||||
## Compiler switch to embed a library name
|
||||
## LD_SONAME =
|
||||
|
||||
## Shared object suffix
|
||||
SO="dll"
|
||||
## Non-shared intermediate object suffix
|
||||
STATIC_O="ao"
|
||||
|
||||
SO_TARGET_VERSION_SUFFIX="${SO_TARGET_VERSION_MAJOR}"
|
||||
SO_TARGET_VERSION_SUFFIX=""
|
||||
|
||||
STATIC_PREFIX_WHEN_USED=""
|
||||
STATIC_PREFIX=""
|
||||
|
||||
# Static library prefix and file extension
|
||||
LIBSICU="${LIBPREFIX}${STATIC_PREFIX}${ICUPREFIX}"
|
||||
A="a"
|
||||
|
||||
## An import library is needed for z/OS and MSVC
|
||||
IMPORT_LIB_EXT=".dll.a"
|
||||
|
||||
LIBPREFIX="lib"
|
||||
|
||||
# Change the stubnames so that poorly working FAT disks and installation programs can work.
|
||||
# This is also for backwards compatibility.
|
||||
DATA_STUBNAME="dt"
|
||||
I18N_STUBNAME="in"
|
||||
LIBICU="${LIBPREFIX}${STATIC_PREFIX_WHEN_USED}${ICUPREFIX}"
|
||||
|
||||
## copied from Makefile.inc
|
||||
# for icu-config to test with
|
||||
ICULIBS_COMMON_LIB_NAME="${LIBICU}${COMMON_STUBNAME}${ICULIBSUFFIX}${ICULIBSUFFIX_VERSION}.${SO}"
|
||||
ICULIBS_COMMON_LIB_NAME_A="${LIBICU}${COMMON_STUBNAME}${ICULIBSUFFIX}.${A}"
|
||||
|
||||
ICULIBS_DATA="-l${ICUPREFIX}${DATA_STUBNAME}${ICULIBSUFFIX}"
|
||||
ICULIBS_DT=""-l${ICUPREFIX}${DATA_STUBNAME}${ICULIBSUFFIX}""
|
||||
ICULIBS_I18N=""-l${ICUPREFIX}${I18N_STUBNAME}${ICULIBSUFFIX}""
|
||||
ICULIBS_LX=""-l${STATIC_PREFIX_WHEN_USED}${ICUPREFIX}${LAYOUTEX_STUBNAME}${ICULIBSUFFIX}""
|
||||
ICULIBS_IO=""-l${ICUPREFIX}${IO_STUBNAME}${ICULIBSUFFIX}""
|
||||
ICULIBS_UC=""-l${ICUPREFIX}${COMMON_STUBNAME}${ICULIBSUFFIX}""
|
||||
ICULIBS_CTESTFW=""-l${STATIC_PREFIX_WHEN_USED}${ICUPREFIX}${CTESTFW_STUBNAME}${ICULIBSUFFIX}""
|
||||
ICULIBS_TOOLUTIL=""-l${ICUPREFIX}tu${ICULIBSUFFIX}""
|
||||
|
||||
# ICULIBS is the set of libraries your application should link
|
||||
# with usually. Many applications will want to add ${ICULIBS_I18N} as well.
|
||||
ICULIBS="${ICULIBS_BASE} ${ICULIBS_I18N} ${ICULIBS_COMMON} ${ICULIBS_DATA} "
|
||||
|
||||
## Compilation rules
|
||||
|
||||
## Dependency rules
|
||||
|
||||
## Versioned target for a shared library.
|
||||
## Since symbolic links don't work the same way on Windows,
|
||||
## we only use the version major number.
|
||||
#FINAL_SO_TARGET=${basename $(SO_TARGET})${SO_TARGET_VERSION}.${SO}
|
||||
## FINAL_SO_TARGET=${basename $(SO_TARGET})${SO_TARGET_VERSION_MAJOR}.${SO}
|
||||
## MIDDLE_SO_TARGET=${FINAL_SO_TARGET}
|
||||
|
||||
## Special pkgdata information that is needed
|
||||
PKGDATA_VERSIONING="-r ${SO_TARGET_VERSION_MAJOR}"
|
||||
|
||||
## Versioned libraries rules
|
||||
#%${SO_TARGET_VERSION_MAJOR}.${SO}: %${SO_TARGET_VERSION}.${SO}
|
||||
# ${RM} $@ && cp ${<F} $@
|
||||
|
||||
# Environment variable to set a runtime search path
|
||||
LDLIBRARYPATH_ENVVAR="PATH"
|
||||
|
||||
# The type of assembly to write for generating an object file
|
||||
GENCCODE_ASSEMBLY="-a gcc-mingw64"
|
||||
|
||||
# These are needed to allow the pkgdata GNU make files to work
|
||||
PKGDATA_DEFS="-DU_MAKE=\"${MAKE}\""
|
||||
|
||||
## End Cygwin64/MinGW64 specific setup
|
||||
|
||||
## -*-sh-*-
|
||||
## BEGIN of icu-config-bottom.
|
||||
## Copyright (C) 2016 and later: Unicode, Inc. and others.
|
||||
## License & terms of use: http://www.unicode.org/copyright.html
|
||||
## Copyright (c) 2002-2013, International Business Machines Corporation and
|
||||
## others. All Rights Reserved.
|
||||
|
||||
# For MinGW do we want the common DLL to go into the bin location?
|
||||
if [ "$MINGW_MOVEDLLSTOBINDIR" = "YES" ]; then
|
||||
ICUUC_FILE="${bindir}/${ICULIBS_COMMON_LIB_NAME}"
|
||||
else
|
||||
ICUUC_FILE="${libdir}/${ICULIBS_COMMON_LIB_NAME}"
|
||||
fi
|
||||
|
||||
ICUUC_FILE_A="${libdir}/${ICULIBS_COMMON_LIB_NAME_A}"
|
||||
|
||||
# echo ENABLE RPATH $ENABLE_RPATH and RPATHLDFLAGS=${RPATH_LDFLAGS}
|
||||
if [ "x$PKGDATA_MODE" = "x" ]; then
|
||||
PKGDATA_MODE=dll
|
||||
fi
|
||||
|
||||
}
|
||||
|
||||
## The actual code of icu-config goes here.
|
||||
|
||||
ME=`basename "$0"`
|
||||
|
||||
allflags()
|
||||
{
|
||||
echo " --noverify Don't verify that ICU is actually installed."
|
||||
echo " --bindir Print binary directory path (bin)"
|
||||
echo " --cc Print C compiler used [CC]"
|
||||
echo " --cflags Print C compiler flags [CFLAGS]"
|
||||
echo " --cflags-dynamic Print additional C flags for"
|
||||
echo " building shared libraries."
|
||||
echo " --cppflags Print C Preprocessor flags [CPPFLAGS]"
|
||||
echo " --cppflags-dynamic Print additional C Preprocessor flags for"
|
||||
echo " building shared libraries."
|
||||
echo " --cppflags-searchpath Print only -I include directives (-Iinclude)"
|
||||
echo " --cxx Print C++ compiler used [CXX]"
|
||||
echo " --cxxflags Print C++ compiler flags [CXXFLAGS]"
|
||||
echo " --cxxflags-dynamic Print additional C++ flags for"
|
||||
echo " building shared libraries."
|
||||
echo " --detect-prefix Attempt to detect prefix based on PATH"
|
||||
echo " --exec-prefix Print prefix for executables (/bin)"
|
||||
echo " --exists Return with 0 status if ICU exists else fail"
|
||||
echo " --help, -?, --usage Print this message"
|
||||
echo " --icudata Print shortname of ICU data file (icudt21l)"
|
||||
echo " --icudata-install-dir Print path to install data to - use as --install option to pkgdata(1)"
|
||||
echo " --icudata-mode Print default ICU pkgdata mode (dll) - use as --mode option to pkgdata(1)."
|
||||
echo " --icudatadir Print path to packaged archive data. Can set as [ICU_DATA]"
|
||||
echo " --invoke Print commands to invoke an ICU program"
|
||||
echo " --invoke=<prog> Print commands to invoke an ICU program named <prog> (ex: genrb)"
|
||||
echo " --ldflags Print -L search path and -l libraries to link with ICU [LDFLAGS]. This is for the data, uc (common), and i18n libraries only. "
|
||||
echo " --ldflags-libsonly Same as --ldflags, but only the -l directives"
|
||||
echo " --ldflags-searchpath Print only -L (search path) directive"
|
||||
echo " --ldflags-system Print only system libs ICU links with (-lpthread, -lm)"
|
||||
echo " --ldflags-icuio Print ICU icuio link directive. Use in addition to --ldflags "
|
||||
echo " --ldflags-obsolete Print ICU obsolete link directive. Use in addition to --ldflags. (requires icuapps/obsolete to be built and installed.) "
|
||||
echo " --mandir Print manpage (man) path"
|
||||
echo " --prefix Print PREFIX to icu install (/usr/local)"
|
||||
echo " --prefix=XXX Set prefix to XXX for remainder of command"
|
||||
echo " --sbindir Print system binary path (sbin) "
|
||||
echo " --shared-datadir Print shared data (share) path. This is NOT the ICU data dir."
|
||||
echo " --shlib-c Print the command to compile and build C shared libraries with ICU"
|
||||
echo " --shlib-cc Print the command to compile and build C++ shared libraries with ICU"
|
||||
echo " --sysconfdir Print system config (etc) path"
|
||||
echo " --unicode-version Print version of Unicode data used in ICU ($UNICODE_VERSION)"
|
||||
echo " --version Print ICU version ($VERSION)"
|
||||
echo " --incfile Print path to Makefile.inc"
|
||||
echo " --incpkgdatafile Print path to pkgdata.inc (for -O option of pkgdata)"
|
||||
echo " --install Print path to install-sh"
|
||||
echo " --mkinstalldirs Print path to mkinstalldirs"
|
||||
}
|
||||
|
||||
## Print the normal usage message
|
||||
shortusage()
|
||||
{
|
||||
echo "usage: ${ME} " `allflags | cut -c-25 | sed -e 's%.*%[ & ]%'`
|
||||
}
|
||||
|
||||
|
||||
usage()
|
||||
{
|
||||
echo "${ME}: icu-config: ICU configuration helper script"
|
||||
echo
|
||||
echo "The most commonly used options will be --cflags, --cxxflags, --cppflags, and --ldflags."
|
||||
echo 'Example (in make): CPFLAGS=$(shell icu-config --cppflags)'
|
||||
echo ' LDFLAGS=$(shell icu-config --ldflags)'
|
||||
echo " (etc).."
|
||||
echo
|
||||
echo "Usage:"
|
||||
allflags
|
||||
|
||||
echo
|
||||
echo " [Brackets] show MAKE variable equivalents, (parenthesis) show example output"
|
||||
echo
|
||||
echo "Copyright (c) 2002-2013, International Business Machines Corporation and others. All Rights Reserved."
|
||||
echo
|
||||
echo "NOTE: Please consider using the pkg-config (.pc) files instead of icu-config."
|
||||
echo " See: <https://unicode-org.github.io/icu/userguide/howtouseicu> "
|
||||
}
|
||||
|
||||
## Check the sanity of current variables
|
||||
sanity()
|
||||
{
|
||||
if [ ! -f "${ICUUC_FILE}" -a ! -f "${ICUUC_FILE_A}" ] && [ ${IGNORE_ICUUC_FILE_CHECK} = "no" ] && [ ${SANITY} = "sane" ];
|
||||
then
|
||||
echo "### $ME: Can't find ${ICUUC_FILE} - ICU prefix is wrong." 1>&2
|
||||
echo "### Try the --prefix= option " 1>&2
|
||||
echo "### or --detect-prefix" 1>&2
|
||||
echo "### (If you want to disable this check, use the --noverify option)" 1>&2
|
||||
echo "### $ME: Exitting." 1>&2
|
||||
exit 2
|
||||
fi
|
||||
}
|
||||
|
||||
## Main starts here.
|
||||
|
||||
if [ $# -lt 1 ]; then
|
||||
shortusage
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# For certain options (e.g. --detect-prefix) don't check for icuuc library file.
|
||||
|
||||
IGNORE_ICUUC_FILE_CHECK="no";
|
||||
|
||||
SANITY="sane"
|
||||
|
||||
case "$1" in
|
||||
--noverify)
|
||||
SANITY="nosanity"
|
||||
shift
|
||||
;;
|
||||
esac
|
||||
|
||||
case "$1" in
|
||||
*prefix*)
|
||||
IGNORE_ICUUC_FILE_CHECK="yes"
|
||||
;;
|
||||
esac
|
||||
|
||||
# Load our variables from autoconf
|
||||
# ALWAYS load twice because of dependencies
|
||||
loaddefs
|
||||
loaddefs
|
||||
|
||||
if [ $# -gt 0 -a $1 = "--selfcheck" ];
|
||||
then
|
||||
echo "passed"
|
||||
exit
|
||||
# EXIT for self check
|
||||
fi
|
||||
|
||||
sanity
|
||||
|
||||
while [ $# -gt 0 ];
|
||||
do
|
||||
arg="$1"
|
||||
var=`echo $arg | sed -e 's/^[^=]*=//'`
|
||||
# echo "### processing $arg" 1>&2
|
||||
case "$arg" in
|
||||
|
||||
# undocumented.
|
||||
--debug)
|
||||
set -x
|
||||
;;
|
||||
|
||||
--noverify)
|
||||
echo "### $ME: Error: --noverify must be the first argument." 1>&2
|
||||
exit 1
|
||||
;;
|
||||
|
||||
--so)
|
||||
echo $SO
|
||||
;;
|
||||
|
||||
--bindir)
|
||||
echo $bindir
|
||||
;;
|
||||
|
||||
--libdir)
|
||||
echo $libdir
|
||||
;;
|
||||
|
||||
--exists)
|
||||
sanity
|
||||
;;
|
||||
|
||||
--sbindir)
|
||||
echo $sbindir
|
||||
;;
|
||||
|
||||
--mkinstalldirs)
|
||||
echo ${MKINSTALLDIRS}
|
||||
;;
|
||||
|
||||
--install)
|
||||
echo ${INSTALL}
|
||||
;;
|
||||
|
||||
--invoke=*)
|
||||
QUOT="\""
|
||||
CMD="${var}"
|
||||
|
||||
# If it's not a locally executable command (1st choice) then
|
||||
# search for it in the ICU directories.
|
||||
if [ ! -x ${CMD} ]; then
|
||||
if [ -x ${bindir}/${var} ]; then
|
||||
CMD="${bindir}/${var}"
|
||||
fi
|
||||
if [ -x ${sbindir}/${var} ]; then
|
||||
CMD="${sbindir}/${var}"
|
||||
fi
|
||||
fi
|
||||
|
||||
echo "env ${QUOT}${LDLIBRARYPATH_ENVVAR}=${libdir}:"'${'"${LDLIBRARYPATH_ENVVAR}"'}'${QUOT} ${CMD}
|
||||
;;
|
||||
|
||||
--invoke)
|
||||
QUOT="\""
|
||||
echo "env ${QUOT}${LDLIBRARYPATH_ENVVAR}=${libdir}:"'${'"${LDLIBRARYPATH_ENVVAR}"'}'${QUOT}
|
||||
;;
|
||||
|
||||
--cflags)
|
||||
echo $ECHO_N "${CFLAGS} ${ECHO_C}"
|
||||
;;
|
||||
|
||||
--cc)
|
||||
echo $ECHO_N "${CC} ${ECHO_C}"
|
||||
;;
|
||||
|
||||
--cxx)
|
||||
echo $ECHO_N "${CXX} ${ECHO_C}"
|
||||
;;
|
||||
|
||||
--cxxflags)
|
||||
echo $ECHO_N "${CXXFLAGS} ${ECHO_C}"
|
||||
;;
|
||||
|
||||
--cppflags)
|
||||
# Don't echo the -I. - it's unneeded.
|
||||
echo $ECHO_N "${CPPFLAGS} ${ECHO_C}" | sed -e 's/-I. //'
|
||||
;;
|
||||
|
||||
--cppflags-searchpath)
|
||||
echo $ECHO_N "-I${prefix}/include ${ECHO_C}"
|
||||
;;
|
||||
|
||||
--cppflags-dynamic)
|
||||
echo $ECHO_N "${SHAREDLIBCPPFLAGS} ${ECHO_C}"
|
||||
;;
|
||||
|
||||
--cxxflags-dynamic)
|
||||
echo $ECHO_N "${SHAREDLIBCXXFLAGS} ${ECHO_C}"
|
||||
;;
|
||||
|
||||
--cflags-dynamic)
|
||||
echo $ECHO_N "${SHAREDLIBCFLAGS} ${ECHO_C}"
|
||||
;;
|
||||
|
||||
--ldflags-system)
|
||||
echo $ECHO_N "${LIBS} ${ECHO_C}"
|
||||
;;
|
||||
|
||||
--ldflags)
|
||||
echo $ECHO_N "${LDFLAGS} ${ICULIBS} ${ECHO_C}"
|
||||
# $RPATH_LDFLAGS
|
||||
;;
|
||||
|
||||
--ldflags-libsonly)
|
||||
echo $ECHO_N "${ICULIBS_I18N} ${ICULIBS_COMMON} ${ICULIBS_DATA} ${ECHO_C}"
|
||||
;;
|
||||
|
||||
--ldflags-icuio)
|
||||
echo $ECHO_N " ${ICULIBS_ICUIO} ${ECHO_C}"
|
||||
;;
|
||||
|
||||
--ldflags-obsolete)
|
||||
echo $ECHO_N "${ICULIBS_OBSOLETE} ${ECHO_C}"
|
||||
;;
|
||||
|
||||
--ldflags-toolutil)
|
||||
echo $ECHO_N " ${ICULIBS_TOOLUTIL} ${ECHO_C}"
|
||||
;;
|
||||
|
||||
--ldflags-layout)
|
||||
echo ${ME}: ERROR: the old layout engine has been removed. use HarfBuzz.
|
||||
exit 1
|
||||
;;
|
||||
|
||||
--ldflags-searchpath)
|
||||
echo $ECHO_N "-L${libdir} ${ECHO_C}"
|
||||
;;
|
||||
|
||||
--detect-prefix)
|
||||
HERE=`echo $0 | sed -e "s/$ME//g"`
|
||||
if [ -f "${HERE}/../lib/${ICULIBS_COMMON_LIB_NAME}" -o -f "${HERE}/../lib/${ICULIBS_COMMON_LIB_NAME_A}" ]; then
|
||||
prefix="${HERE}/.."
|
||||
echo "## Using --prefix=${prefix}" 1>&2
|
||||
fi
|
||||
loaddefs
|
||||
loaddefs
|
||||
;;
|
||||
|
||||
--exec-prefix)
|
||||
echo $exec_prefix
|
||||
;;
|
||||
|
||||
--prefix)
|
||||
echo $prefix
|
||||
;;
|
||||
|
||||
--prefix=*)
|
||||
prefix=$var
|
||||
loaddefs
|
||||
loaddefs
|
||||
;;
|
||||
|
||||
--sysconfdir)
|
||||
echo $sysconfdir
|
||||
;;
|
||||
|
||||
--mandir)
|
||||
echo $mandir
|
||||
;;
|
||||
|
||||
--shared-datadir)
|
||||
echo $ECHO_N "${datadir} ${ECHO_C}"
|
||||
;;
|
||||
|
||||
--incfile)
|
||||
echo $ECHO_N "${pkglibdir}/Makefile.inc ${ECHO_C}"
|
||||
;;
|
||||
|
||||
--incpkgdatafile)
|
||||
echo $ECHO_N "${pkglibdir}/pkgdata.inc ${ECHO_C}"
|
||||
;;
|
||||
|
||||
--icudata)
|
||||
echo $ECHO_N "${ICUDATA_NAME} ${ECHO_C}"
|
||||
;;
|
||||
|
||||
--icudata-mode)
|
||||
echo $ECHO_N "${PKGDATA_MODE} ${ECHO_C}"
|
||||
;;
|
||||
|
||||
--icudata-install-dir)
|
||||
echo $ECHO_N "${ICUPKGDATA_DIR} ${ECHO_C}"
|
||||
;;
|
||||
|
||||
--icudatadir)
|
||||
echo $ECHO_N "${ICUDATA_DIR} ${ECHO_C}"
|
||||
;;
|
||||
|
||||
--shlib-c)
|
||||
echo $ECHO_N "${SHLIB_c} ${ECHO_C}"
|
||||
;;
|
||||
|
||||
--shlib-cc)
|
||||
echo $ECHO_N "${SHLIB_cc} ${ECHO_C}"
|
||||
;;
|
||||
|
||||
--version)
|
||||
echo $ECHO_N $VERSION
|
||||
;;
|
||||
|
||||
--unicode-version)
|
||||
echo $ECHO_N $UNICODE_VERSION
|
||||
;;
|
||||
|
||||
--host)
|
||||
echo $host
|
||||
exit 0
|
||||
;;
|
||||
|
||||
--help)
|
||||
usage
|
||||
exit 0
|
||||
;;
|
||||
|
||||
--usage)
|
||||
usage
|
||||
exit 0
|
||||
;;
|
||||
|
||||
# --enable-rpath=*)
|
||||
# ENABLE_RPATH=$var
|
||||
# loaddefs
|
||||
# ;;
|
||||
|
||||
-?)
|
||||
usage
|
||||
exit 0
|
||||
;;
|
||||
|
||||
*)
|
||||
echo ${ME}: ERROR Unknown Option $arg 1>&2
|
||||
echo 1>&2
|
||||
shortusage 1>&2
|
||||
echo "### $ME: Exitting." 1>&2
|
||||
exit 1;
|
||||
;;
|
||||
esac
|
||||
shift
|
||||
|
||||
# Reset the ignore icuuc file check flag
|
||||
if [ $IGNORE_ICUUC_FILE_CHECK = "yes" ]; then
|
||||
IGNORE_ICUUC_FILE_CHECK="no"
|
||||
sanity
|
||||
fi
|
||||
done
|
||||
echo
|
||||
# Check once before we quit (will check last used prefix)
|
||||
sanity
|
||||
## END of icu-config-bottom
|
||||
|
||||
exit 0
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Reference in New Issue
Block a user