diff --git a/.gitignore b/.gitignore index 1d3f4215ede..3d234e091dd 100644 --- a/.gitignore +++ b/.gitignore @@ -34,6 +34,8 @@ icu4c/source/config.status icu4c/source/config/Makefile.inc icu4c/source/config/icu-config icu4c/source/config/icu-config.1 +icu4c/source/config/icu.pc +icu4c/source/config/icu.pc.out icu4c/source/config/icucross.mk icu4c/source/config/pkgdata.inc icu4c/source/config/pkgdataMakefile diff --git a/icu4c/source/Makefile.in b/icu4c/source/Makefile.in index a51ce32dc10..73e77ee5590 100644 --- a/icu4c/source/Makefile.in +++ b/icu4c/source/Makefile.in @@ -43,7 +43,7 @@ DOCZIP = icu-docs.zip CLEANFILES = *~ ## Files built (autoconfed) and installed -INSTALLED_BUILT_FILES = $(top_builddir)/config/Makefile.inc $(top_builddir)/config/pkgdata.inc $(top_builddir)/config/icu-config @platform_make_fragment@ $(EXTRA_DATA:%=$(DESTDIR)$(pkglibdir)/%) +INSTALLED_BUILT_FILES = $(top_builddir)/config/Makefile.inc $(top_builddir)/config/pkgdata.inc $(top_builddir)/config/icu-config @platform_make_fragment@ $(EXTRA_DATA:%=$(DESTDIR)$(pkglibdir)/%) $(top_builddir)/config/icu.pc.out $(top_builddir)/config/icu.pc ## Files built (autoconfed) but not installed LOCAL_BUILT_FILES = icudefs.mk config/icucross.mk @@ -136,6 +136,8 @@ install-icu: $(INSTALLED_BUILT_FILES) $(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.out $(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 @@ -169,7 +171,7 @@ clean-local: $(RMV) Doxyfile doc $(DOCZIP) distclean-local: clean-local - $(RMV) $(top_builddir)/config/Makefile.inc $(top_builddir)/config/pkgdata.inc $(top_builddir)/config/icu-config + $(RMV) $(top_builddir)/config/Makefile.inc $(top_builddir)/config/pkgdata.inc $(top_builddir)/config/icu-config $(top_builddir)/config/icu.pc $(top_builddir)/config/icu.pc.out $(RMV) config.cache config.log config.status $(top_builddir)/config/icucross.mk autom4te.cache $(RMV) Makefile config/Makefile icudefs.mk $(LIBDIR) $(BINDIR) @@ -198,6 +200,18 @@ config/icucross.mk: $(top_builddir)/icudefs.mk $(top_builddir)/Makefile echo "PKGDATA_INVOKE=$(LDLIBRARYPATH_ENVVAR)=$(LIBRARY_PATH_PREFIX)"'$$(cross_buildroot)/stubdata:$$(cross_buildroot)/tools/ctestfw:$$(TOOLLIBDIR):$$$$'"$(LDLIBRARYPATH_ENVVAR) "'$$'"(PKGDATA_INVOKE_OPTS)" ;\ echo ) >> $@ + +config/icu.pc: $(srcdir)/config/icu.pc.in + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + +config/icu.pc.out: config/icu.pc config/icu-config + @cat config/icu.pc > $@ + @echo "Libs:" '-L$${libdir}' $(shell config/icu-config --noverify --ldflags-libsonly) >> $@ + @echo "Libs.private: " $(shell config/icu-config --noverify --ldflags-system) >> $@ +# @echo "Cflags: " $(shell config/icu-config --noverify --cppflags) >> $@ + @echo $@ updated. + Makefile: $(srcdir)/Makefile.in icudefs.mk $(top_builddir)/config.status cd $(top_builddir) \ && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status diff --git a/icu4c/source/config/icu.pc.in b/icu4c/source/config/icu.pc.in new file mode 100644 index 00000000000..9ca2648bbe1 --- /dev/null +++ b/icu4c/source/config/icu.pc.in @@ -0,0 +1,32 @@ +# Copyright (C) 2010, International Business Machines Corporation. All Rights Reserved. + +prefix = @prefix@ +exec_prefix = @exec_prefix@ +bindir = @bindir@ +libdir = @libdir@ +includedir = @includedir@ +datarootdir = @datarootdir@ +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} +SHAREDLIBCFLAGS=-fPIC +pkglibdir=${libdir}/@PACKAGE@${ICULIBSUFFIX}/@VERSION@ +pkgdatadir=${datadir}/@PACKAGE@${ICULIBSUFFIX}/@VERSION@ +ICUDATA_NAME = icudt@LIB_VERSION_MAJOR@@ICUDATA_CHAR@ +ICUPKGDATA_DIR=@libdir@ +ICUDATA_DIR=${pkgdatadir} + +Name: @PACKAGE@ +Description: International Components for Unicode +URL: http://icu-project.org +Version: @VERSION@ +# end of icu.pc.in +Cflags: -I${includedir} diff --git a/icu4c/source/configure b/icu4c/source/configure index 5ed9d132d83..56e8f418f62 100755 --- a/icu4c/source/configure +++ b/icu4c/source/configure @@ -11453,7 +11453,7 @@ then fi # output the Makefiles -ac_config_files="$ac_config_files icudefs.mk Makefile data/pkgdataMakefile config/Makefile.inc config/pkgdataMakefile data/Makefile stubdata/Makefile common/Makefile i18n/Makefile layout/Makefile layoutex/Makefile io/Makefile extra/Makefile extra/uconv/Makefile extra/uconv/pkgdataMakefile extra/scrptrun/Makefile tools/Makefile tools/ctestfw/Makefile tools/toolutil/Makefile tools/makeconv/Makefile tools/genrb/Makefile tools/genccode/Makefile tools/gencmn/Makefile tools/gencnval/Makefile tools/genctd/Makefile tools/gentest/Makefile tools/gennorm2/Makefile tools/genbrk/Makefile tools/gensprep/Makefile tools/icuinfo/Makefile tools/icupkg/Makefile tools/icuswap/Makefile tools/pkgdata/Makefile tools/tzcode/Makefile tools/gencfu/Makefile test/Makefile test/compat/Makefile test/testdata/Makefile test/testdata/pkgdataMakefile test/hdrtst/Makefile test/intltest/Makefile test/cintltst/Makefile test/iotest/Makefile test/letest/Makefile test/perf/Makefile test/perf/collationperf/Makefile test/perf/ubrkperf/Makefile test/perf/charperf/Makefile test/perf/convperf/Makefile test/perf/normperf/Makefile test/perf/strsrchperf/Makefile test/perf/unisetperf/Makefile test/perf/usetperf/Makefile test/perf/ustrperf/Makefile test/perf/utfperf/Makefile test/perf/utrie2perf/Makefile samples/Makefile samples/date/Makefile samples/cal/Makefile samples/layout/Makefile common/unicode/platform.h" +ac_config_files="$ac_config_files icudefs.mk Makefile data/pkgdataMakefile config/Makefile.inc config/icu.pc config/pkgdataMakefile data/Makefile stubdata/Makefile common/Makefile i18n/Makefile layout/Makefile layoutex/Makefile io/Makefile extra/Makefile extra/uconv/Makefile extra/uconv/pkgdataMakefile extra/scrptrun/Makefile tools/Makefile tools/ctestfw/Makefile tools/toolutil/Makefile tools/makeconv/Makefile tools/genrb/Makefile tools/genccode/Makefile tools/gencmn/Makefile tools/gencnval/Makefile tools/genctd/Makefile tools/gentest/Makefile tools/gennorm2/Makefile tools/genbrk/Makefile tools/gensprep/Makefile tools/icuinfo/Makefile tools/icupkg/Makefile tools/icuswap/Makefile tools/pkgdata/Makefile tools/tzcode/Makefile tools/gencfu/Makefile test/Makefile test/compat/Makefile test/testdata/Makefile test/testdata/pkgdataMakefile test/hdrtst/Makefile test/intltest/Makefile test/cintltst/Makefile test/iotest/Makefile test/letest/Makefile test/perf/Makefile test/perf/collationperf/Makefile test/perf/ubrkperf/Makefile test/perf/charperf/Makefile test/perf/convperf/Makefile test/perf/normperf/Makefile test/perf/strsrchperf/Makefile test/perf/unisetperf/Makefile test/perf/usetperf/Makefile test/perf/ustrperf/Makefile test/perf/utfperf/Makefile test/perf/utrie2perf/Makefile samples/Makefile samples/date/Makefile samples/cal/Makefile samples/layout/Makefile common/unicode/platform.h" cat >confcache <<\_ACEOF # This file is a shell script that caches the results of configure @@ -12055,6 +12055,7 @@ do "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; "data/pkgdataMakefile") CONFIG_FILES="$CONFIG_FILES data/pkgdataMakefile" ;; "config/Makefile.inc") CONFIG_FILES="$CONFIG_FILES config/Makefile.inc" ;; + "config/icu.pc") CONFIG_FILES="$CONFIG_FILES config/icu.pc" ;; "config/pkgdataMakefile") CONFIG_FILES="$CONFIG_FILES config/pkgdataMakefile" ;; "data/Makefile") CONFIG_FILES="$CONFIG_FILES data/Makefile" ;; "stubdata/Makefile") CONFIG_FILES="$CONFIG_FILES stubdata/Makefile" ;; diff --git a/icu4c/source/configure.in b/icu4c/source/configure.in index 5a781b36db9..e3cff806512 100644 --- a/icu4c/source/configure.in +++ b/icu4c/source/configure.in @@ -1262,6 +1262,7 @@ AC_CONFIG_FILES([icudefs.mk \ Makefile \ data/pkgdataMakefile \ config/Makefile.inc \ + config/icu.pc \ config/pkgdataMakefile \ data/Makefile \ stubdata/Makefile \