packages: icu/icu.spec, icu/icu-config (NEW), icu/pkgconfig.patch (NEW) - a...
glen
glen at pld-linux.org
Sun Sep 20 15:34:01 CEST 2009
Author: glen Date: Sun Sep 20 13:34:01 2009 GMT
Module: packages Tag: HEAD
---- Log message:
- add pkgconfig support from fedora; rel 1
---- Files affected:
packages/icu:
icu.spec (1.38 -> 1.39) , icu-config (NONE -> 1.1) (NEW), pkgconfig.patch (NONE -> 1.1) (NEW)
---- Diffs:
================================================================
Index: packages/icu/icu.spec
diff -u packages/icu/icu.spec:1.38 packages/icu/icu.spec:1.39
--- packages/icu/icu.spec:1.38 Tue Sep 1 22:15:50 2009
+++ packages/icu/icu.spec Sun Sep 20 15:33:56 2009
@@ -1,17 +1,21 @@
# $Revision$, $Date$
+%define ver %(echo %{version} | tr . _)
Summary: International Components for Unicode
Summary(pl.UTF-8): Międzynarodowe komponenty dla unikodu
Name: icu
Version: 4.2.1
-%define ver %(echo %{version} | tr . _)
-Release: 0.1
+Release: 1
License: MIT-like
Group: Libraries
-Source0: http://download.icu-project.org/files/icu4c/%{version}/icu4c-%{ver}-src.tgz
+Source0: http://download.icu-project.org/files/icu4c/%{version}/%{name}4c-%{ver}-src.tgz
# Source0-md5: e3738abd0d3ce1870dc1fd1f22bba5b1
+Patch0: pkgconfig.patch
+Source1: %{name}-config
URL: http://www.icu-project.org/
+BuildRequires: autoconf
BuildRequires: automake
BuildRequires: libstdc++-devel
+BuildRequires: libtool
Requires: libicu = %{version}-%{release}
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
@@ -75,10 +79,11 @@
%prep
%setup -q -n %{name}
+%patch0 -p1
%build
cd source
-cp -f /usr/share/automake/config.* .
+%{__autoconf}
%configure \
--sbindir=%{_bindir} \
--disable-samples
@@ -91,6 +96,10 @@
%{__make} -C source install \
DESTDIR=$RPM_BUILD_ROOT
+install -p %{SOURCE1} $RPM_BUILD_ROOT%{_bindir}/%{name}-config
+sed -i 's/\$(THREADSCXXFLAGS)//' $RPM_BUILD_ROOT%{_libdir}/pkgconfig/icu.pc
+sed -i 's/\$(THREADSCPPFLAGS)/-D_REENTRANT/' $RPM_BUILD_ROOT%{_libdir}/pkgconfig/icu.pc
+
# help rpm to generate deps
chmod +x $RPM_BUILD_ROOT%{_libdir}/lib*.so.*.*
@@ -124,6 +133,7 @@
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/icu-config
%attr(755,root,root) %{_libdir}/libicu*.so
+%{_pkgconfigdir}/icu.pc
%{_includedir}/unicode
%{_includedir}/layout
%dir %{_libdir}/%{name}
@@ -144,6 +154,9 @@
All persons listed below can be reached at <cvs_login>@pld-linux.org
$Log$
+Revision 1.39 2009/09/20 13:33:56 glen
+- add pkgconfig support from fedora; rel 1
+
Revision 1.38 2009/09/01 20:15:50 qboosh
- made install-sh script executable
================================================================
Index: packages/icu/icu-config
diff -u /dev/null packages/icu/icu-config:1.1
--- /dev/null Sun Sep 20 15:34:02 2009
+++ packages/icu/icu-config Sun Sep 20 15:33:56 2009
@@ -0,0 +1,387 @@
+#!/bin/sh
+## -*-sh-*-
+#set -x
+# BEGIN of icu-config-top
+#******************************************************************************
+# Copyright (C) 1999-2004, 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.
+
+
+### END of icu-config-top
+
+## Zero out prefix.
+exec_prefix=`pkg-config --variable=exec_prefix icu`
+execprefix=$exec_prefix
+prefix=`pkg-config --variable=prefix icu`
+
+
+loaddefs()
+{
+LDLIBRARYPATH_ENVVAR="LD_LIBRARY_PATH"
+bindir=`pkg-config --variable=bindir icu`
+sbindir=`pkg-config --variable=sbindir icu`
+libdir=`pkg-config --variable=libdir icu`
+sysconfdir=`pkg-config --variable=sysconfdir icu`
+mandir=`pkg-config --variable=mandir icu`
+datadir=`pkg-config --variable=datadir icu`
+pkglibdir=`pkg-config --variable=pkglibdir icu`
+ICULIBS_COMMON_LIB_NAME=`pkg-config --variable=ICULIBS_COMMON_LIB_NAME icu`
+UNICODE_VERSION=`pkg-config --variable=UNICODE_VERSION icu`
+VERSION=`pkg-config --modversion icu`
+SO=`pkg-config --variable=SO icu`
+
+## -*-sh-*-
+## BEGIN of icu-config-bottom.
+## Copyright (c) 2002-2004, International Business Machines Corporation and
+## others. All Rights Reserved.
+
+ICUUC_FILE=${libdir}/${ICULIBS_COMMON_LIB_NAME}
+
+# 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 " --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-layout Print ICU layout engine link directive. Use in addition to --ldflags"
+ 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 (for -O option of pkgdata)"
+}
+
+## 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, International Business Machines Corporation and others. All Rights Reserved."
+}
+
+## Check the sanity of current variables
+sanity()
+{
+ if [ ! -f ${ICUUC_FILE} ];
+ then
+ echo "### $ME: Can't find ${ICUUC_FILE} - ICU prefix is wrong." 1>&2
+ echo "### Try the --prefix= or --exec-prefix= options " 1>&2
+ echo "### or --detect-prefix"
+ echo "### $ME: Exitting." 1>&2
+ exit 2
+ fi
+}
+
+## Main starts here.
+
+if [ $# -lt 1 ]; then
+ shortusage
+ exit 1
+fi
+
+
+# Load our variables from autoconf
+# ALWAYS load twice because of dependencies
+loaddefs
+loaddefs
+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
+ ;;
+
+ --so)
+ echo $SO
+ ;;
+
+ --bindir)
+ echo $bindir
+ ;;
+
+ --libdir)
+ echo $libdir
+ ;;
+
+ --exists)
+ sanity
+ ;;
+
+ --sbindir)
+ echo $sbindir
+ ;;
+
+ --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)
+ pkg-config --variable=CFLAGS icu
+ ;;
+
+ --cc)
+ echo cc
+ ;;
+
+ --cxx)
+ echo c++
+ ;;
+
+ --cxxflags)
+ pkg-config --variable=CXXFLAGS icu
+ ;;
+
+ --cppflags)
+ # Don't echo the -I. - it's unneeded.
+ CPPFLAGS=`pkg-config --variable=CPPFLAGS icu`
+ echo $CPPFLAGS | sed -e 's/-I. //'
+ ;;
+
+ --cppflags-searchpath)
+ echo -I${prefix}/include
+ ;;
+
+ --cppflags-dynamic)
+ pkg-config --variable=SHAREDLIBCPPFLAGS icu
+ ;;
+
+ --cxxflags-dynamic)
+ pkg-config --variable=SHAREDLIBCXXFLAGS icu
+ ;;
+
+ --cflags-dynamic)
+ pkg-config --variable=SHAREDLIBCFLAGS icu
+ ;;
+
+ --ldflags-system)
+ pkg-config --variable=ICULIBS_SYSTEMLIBS icu
+ ;;
+
+ --ldflags)
+ pkg-config --libs icu
+# $RPATH_LDFLAGS
+ ;;
+
+ --ldflags-libsonly)
+ pkg-config --variable=ICULIBS_LIBSONLY icu
+ ;;
+
+ --ldflags-icuio)
+ pkg-config --variable=ICULIBS_ICUIO icu
+ ;;
+
+ --ldflags-obsolete)
+ pkg-config --variable=ICULIBS_OBSOLETE icu
+ ;;
+
+ --ldflags-toolutil)
+ pkg-config --variable=ICULIBS_TOOLUTIL icu
+ ;;
+
+ --ldflags-layout)
+ pkg-config --variable=ICULIBS_LAYOUT icu
+ ;;
+
+ --ldflags-searchpath)
+ echo -L${libdir}
+ ;;
+
+ --detect-prefix)
+ HERE=`echo $0 | sed -e "s/$ME//g"`
+ if [ -f $HERE/../lib/${ICULIBS_COMMON_LIB_NAME} ]; then
+ prefix=$HERE/..
+ echo "## Using --prefix=${prefix}" 1>&2
+ fi
+ loaddefs
+ loaddefs
+ sanity
+ ;;
+
+ --exec-prefix)
+ echo $exec_prefix
+ ;;
+
+ --prefix)
+ echo $prefix
+ ;;
+
+ --prefix=*)
+ prefix=$var
+ loaddefs
+ loaddefs
+ sanity
+ ;;
+
+ --sysconfdir)
+ echo $sysconfdir
+ ;;
+
+ --mandir)
+ echo $mandir
+ ;;
+
+ --shared-datadir)
+ echo $datadir
+ ;;
+
+ --incfile)
+ echo $pkglibdir/Makefile.inc
+ ;;
+
+ --icudata)
+ pkg-config --variable=ICUDATA_NAME icu
+ ;;
+
+ --icudata-mode)
+ echo $PKGDATA_MODE
+ ;;
+
+ --icudata-install-dir)
+ pkg-config --variable=ICUPKGDATA_DIR icu
+ ;;
+
+ --icudatadir)
+ pkg-config --variable=ICUDATA_DIR icu
+ ;;
+
+ --shlib-c)
+ pkg-config --variable=SHLIB_c icu
+ ;;
+
+ --shlib-cc)
+ pkg-config --variable=SHLIB_cc icu
+ ;;
+
+ --version)
+ echo $VERSION
+ ;;
+
+ --unicode-version)
+ echo $UNICODE_VERSION
+ ;;
+
+ --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
+done
+
+# Check once before we quit (will check last used prefix)
+sanity
+## END of icu-config-bottom
+
+exit 0
+
================================================================
Index: packages/icu/pkgconfig.patch
diff -u /dev/null packages/icu/pkgconfig.patch:1.1
--- /dev/null Sun Sep 20 15:34:02 2009
+++ packages/icu/pkgconfig.patch Sun Sep 20 15:33:56 2009
@@ -0,0 +1,70 @@
+--- icu/source/configure.in.orig 2006-05-02 12:10:31.000000000 +0100
++++ icu/source/configure.in 2006-05-02 15:06:07.000000000 +0100
+@@ -1117,6 +1117,7 @@
+ Makefile \
+ data/pkgdataMakefile \
+ config/Makefile.inc \
++ config/icu.pc \
+ config/pkgdataMakefile \
+ data/Makefile \
+ stubdata/Makefile \
+--- /dev/null 2006-04-29 13:38:37.035974750 +0100
++++ icu/source/config/icu.pc.in 2006-05-02 15:03:14.000000000 +0100
+@@ -0,0 +1,46 @@
++prefix = @prefix@
++bindir = @bindir@
++exec_prefix = @exec_prefix@
++libdir = @libdir@
++includedir = @includedir@
++datadir = @datadir@
++sbindir = @sbindir@
++mandir = @mandir@
++sysconfdir = @sysconfdir@
++CFLAGS = @CFLAGS@
++CXXFLAGS = @CXXFLAGS@
++DEFS = @DEFS@
++UNICODE_VERSION=@UNICODE_VERSION@
++ICUPREFIX=icu
++ICULIBSUFFIX=@ICULIBSUFFIX@
++LIBICU=lib${ICUPREFIX}
++LIBCPPFLAGS=-D_REENTRANT
++CPPFLAGS=@CPPFLAGS@ ${LIBCPPFLAGS} -I${prefix}/include
++SHAREDLIBCPPFLAGS=-DPIC
++SHAREDLIBCXXFLAGS=-fPIC
++SHAREDLIBCFLAGS=-fPIC
++pkglibdir=${libdir}/@PACKAGE@${ICULIBSUFFIX}/@VERSION@
++pkgdatadir=${datadir}/@PACKAGE@${ICULIBSUFFIX}/@VERSION@
++ICUDATA_NAME = icudt at LIB_VERSION_MAJOR@@ICUDATA_CHAR@
++ICUPKGDATA_DIR=@libdir@
++ICUDATA_DIR=${pkgdatadir}
++SO=so
++ICULIBS_COMMON_LIB_NAME=${LIBICU}uc${ICULIBSUFFIX}.${SO}
++SHLIB_cc=cxx ${DEFS} ${CPPFLAGS} ${CXXFLAGS} @LDFLAGS@ -shared
++SHLIB_c=cc ${DEFS} ${CPPFLAGS} ${CFLAGS} @LDFLAGS@ -shared
++ICULIBS_LAYOUT = -l${ICUPREFIX}le${ICULIBSUFFIX} -l${ICUPREFIX}lx${ICULIBSUFFIX}
++ICULIBS_TOOLUTIL = -l${ICUPREFIX}tu${ICULIBSUFFIX}
++ICULIBS_OBSOLETE = -l${ICUPREFIX}obsolete${ICULIBSUFFIX}
++ICULIBS_ICUIO = -l${ICUPREFIX}io${ICULIBSUFFIX}
++ICULIBS_I18N = -l${ICUPREFIX}i18n${ICULIBSUFFIX}
++ICULIBS_COMMON = -l${ICUPREFIX}uc${ICULIBSUFFIX}
++ICULIBS_DATA = -l${ICUPREFIX}data${ICULIBSUFFIX}
++ICULIBS_LIBSONLY = ${ICULIBS_I18N} ${ICULIBS_COMMON} ${ICULIBS_DATA}
++ICULIBS_SYSTEMLIBS = @LIBS@
++ICULIBS_BASE = @LIBS@ -L${libdir}
++ICULIBS = ${ICULIBS_BASE} ${ICULIBS_I18N} ${ICULIBS_COMMON} ${ICULIBS_DATA}
++
++Name: @PACKAGE@
++Description: International Components for Unicode
++Version: @VERSION@
++Libs: @LDFLAGS@ ${ICULIBS} @LIBS@
+--- icu/source/Makefile.in.orig 2006-05-02 12:10:31.000000000 +0100
++++ icu/source/Makefile.in 2006-05-02 15:18:15.000000000 +0100
+@@ -126,6 +126,8 @@
+ $(INSTALL_DATA) @platform_make_fragment@ $(DESTDIR)$(pkgdatadir)/config/@platform_make_fragment_name@
+ $(INSTALL_SCRIPT) $(top_srcdir)/mkinstalldirs $(DESTDIR)$(pkgdatadir)/mkinstalldirs
+ $(INSTALL_SCRIPT) $(top_srcdir)/install-sh $(DESTDIR)$(pkgdatadir)/install-sh
++ @$(MKINSTALLDIRS) $(DESTDIR)$(libdir)/pkgconfig
++ $(INSTALL_DATA) $(top_srcdir)/config/icu.pc $(DESTDIR)$(libdir)/pkgconfig/icu.pc
+ $(INSTALL_DATA) $(top_srcdir)/../license.html $(DESTDIR)$(pkgdatadir)/license.html
+ $(INSTALL_SCRIPT) $(top_builddir)/config/icu-config $(DESTDIR)$(bindir)/icu-config
+ $(INSTALL_DATA) $(top_builddir)/config/Makefile.inc $(DESTDIR)$(pkglibdir)/Makefile.inc
================================================================
---- CVS-web:
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/icu/icu.spec?r1=1.38&r2=1.39&f=u
More information about the pld-cvs-commit
mailing list