summaryrefslogtreecommitdiffstats
path: root/external/fontconfig
diff options
context:
space:
mode:
authorKhaled Hosny <khaledhosny@eglug.org>2013-10-17 19:46:33 +0200
committerDavid Tardon <dtardon@redhat.com>2013-10-18 06:55:25 +0000
commit27a1ae650d17bb588108a20af2ecec6d061e596e (patch)
treeeebb51c07998fe250695336f7c01071920712e98 /external/fontconfig
parentfdo#70393: move firebird to a subdir of external (diff)
downloadcore-27a1ae650d17bb588108a20af2ecec6d061e596e.tar.gz
core-27a1ae650d17bb588108a20af2ecec6d061e596e.zip
fdo#70393: move fontconfig to a subdir of external
Change-Id: I467e83b4c1ca938f5cdc333d9af103bcd01832f2 Reviewed-on: https://gerrit.libreoffice.org/6303 Reviewed-by: David Tardon <dtardon@redhat.com> Tested-by: David Tardon <dtardon@redhat.com>
Diffstat (limited to 'external/fontconfig')
-rw-r--r--external/fontconfig/ExternalPackage_fontconfig.mk18
-rw-r--r--external/fontconfig/ExternalProject_fontconfig.mk34
-rw-r--r--external/fontconfig/Makefile7
-rw-r--r--external/fontconfig/Module_fontconfig.mk22
-rw-r--r--external/fontconfig/README6
-rw-r--r--external/fontconfig/UnpackedTarball_fontconfig.mk20
-rw-r--r--external/fontconfig/fontconfig-2.8.0.patch64
7 files changed, 171 insertions, 0 deletions
diff --git a/external/fontconfig/ExternalPackage_fontconfig.mk b/external/fontconfig/ExternalPackage_fontconfig.mk
new file mode 100644
index 000000000000..bee7f01d94af
--- /dev/null
+++ b/external/fontconfig/ExternalPackage_fontconfig.mk
@@ -0,0 +1,18 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_ExternalPackage_ExternalPackage,fontconfig,fontconfig))
+
+$(eval $(call gb_ExternalPackage_use_external_project,fontconfig,fontconfig))
+
+$(eval $(call gb_ExternalPackage_add_files,fontconfig,lib,\
+ src/.libs/libfontconfig.a \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/external/fontconfig/ExternalProject_fontconfig.mk b/external/fontconfig/ExternalProject_fontconfig.mk
new file mode 100644
index 000000000000..a956e70c0807
--- /dev/null
+++ b/external/fontconfig/ExternalProject_fontconfig.mk
@@ -0,0 +1,34 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_ExternalProject_ExternalProject,fontconfig))
+
+$(eval $(call gb_ExternalProject_use_externals,fontconfig,\
+ expat \
+ freetype \
+))
+
+$(eval $(call gb_ExternalProject_register_targets,fontconfig,\
+ build \
+))
+
+$(call gb_ExternalProject_get_state_target,fontconfig,build) :
+ $(call gb_ExternalProject_run,build,\
+ CFLAGS="$(if $(debug),-g) $(gb_VISIBILITY_FLAGS)" $(if $(filter ANDROID,$(OS)),LIBS="-lm") \
+ ./configure \
+ --disable-shared \
+ --with-arch=arm \
+ --with-expat-includes=$(call gb_UnpackedTarball_get_dir,expat)/lib \
+ --with-expat-lib=$(gb_StaticLibrary_WORKDIR) \
+ --with-freetype-config=$(OUTDIR)/bin/freetype-config \
+ --build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM) \
+ && $(MAKE) \
+ )
+
+# vim: set noet sw=4 ts=4:
diff --git a/external/fontconfig/Makefile b/external/fontconfig/Makefile
new file mode 100644
index 000000000000..ccb1c85a04da
--- /dev/null
+++ b/external/fontconfig/Makefile
@@ -0,0 +1,7 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+
+module_directory:=$(dir $(realpath $(firstword $(MAKEFILE_LIST))))
+
+include $(module_directory)/../solenv/gbuild/partial_build.mk
+
+# vim: set noet sw=4 ts=4:
diff --git a/external/fontconfig/Module_fontconfig.mk b/external/fontconfig/Module_fontconfig.mk
new file mode 100644
index 000000000000..1bfcbdb7878a
--- /dev/null
+++ b/external/fontconfig/Module_fontconfig.mk
@@ -0,0 +1,22 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_Module_Module,fontconfig))
+
+ifeq ($(OS),ANDROID)
+
+$(eval $(call gb_Module_add_targets,fontconfig,\
+ ExternalPackage_fontconfig \
+ ExternalProject_fontconfig \
+ UnpackedTarball_fontconfig \
+))
+
+endif
+
+# vim: set noet sw=4 ts=4:
diff --git a/external/fontconfig/README b/external/fontconfig/README
new file mode 100644
index 000000000000..220ee6078a65
--- /dev/null
+++ b/external/fontconfig/README
@@ -0,0 +1,6 @@
+This "bundled" fontconfig is built only in an Android build
+
+Fontconfig is a font configuration and customization library. It is designed to locate fonts
+within the system and select them according to requirements specified by applications.
+
+From [ http://packages.debian.org/squeeze/fontconfig ] \ No newline at end of file
diff --git a/external/fontconfig/UnpackedTarball_fontconfig.mk b/external/fontconfig/UnpackedTarball_fontconfig.mk
new file mode 100644
index 000000000000..413ffeffc7fa
--- /dev/null
+++ b/external/fontconfig/UnpackedTarball_fontconfig.mk
@@ -0,0 +1,20 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_UnpackedTarball_UnpackedTarball,fontconfig))
+
+$(eval $(call gb_UnpackedTarball_set_tarball,fontconfig,$(FONTCONFIG_TARBALL),,fontconfig))
+
+$(eval $(call gb_UnpackedTarball_set_patchlevel,fontconfig,3))
+
+$(eval $(call gb_UnpackedTarball_add_patches,fontconfig,\
+ external/fontconfig/fontconfig-2.8.0.patch \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/external/fontconfig/fontconfig-2.8.0.patch b/external/fontconfig/fontconfig-2.8.0.patch
new file mode 100644
index 000000000000..5c89a40381dd
--- /dev/null
+++ b/external/fontconfig/fontconfig-2.8.0.patch
@@ -0,0 +1,64 @@
+--- misc/build/fontconfig-2.8.0/config.sub
++++ misc/build/fontconfig-2.8.0/config.sub
+@@ -120,7 +120,7 @@
+ # Here we must recognize all the valid KERNEL-OS combinations.
+ maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
+ case $maybe_os in
+- nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \
++ nto-qnx* | linux-android* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \
+ uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \
+ storm-chaos* | os2-emx* | rtmk-nova*)
+ os=-$maybe_os
+@@ -1272,7 +1272,7 @@
+ | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
+ | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
+ | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
+- | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
++ | -udi* | -android* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
+ | -chorusos* | -chorusrdb* \
+ | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
+ | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \
+--- misc/build/fontconfig-2.8.0/configure
++++ misc/build/fontconfig-2.8.0/configure
+@@ -8718,7 +8718,7 @@
+ *Sun\ F*) # Sun Fortran 8.3
+ tmp_sharedflag='-G' ;;
+ esac
+- archive_cmds='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
++ archive_cmds='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags -o $lib'
+
+ if test "x$supports_anon_versioning" = xyes; then
+ archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~
+--- misc/build/fontconfig-2.8.0/fontconfig/fontconfig.h
++++ misc/build/fontconfig-2.8.0/fontconfig/fontconfig.h
+@@ -113,9 +113,9 @@
+ #define FC_DECORATIVE "decorative" /* Bool - true if style is a decorative variant */
+ #define FC_LCD_FILTER "lcdfilter" /* Int */
+
+-#define FC_CACHE_SUFFIX ".cache-"FC_CACHE_VERSION
+-#define FC_DIR_CACHE_FILE "fonts.cache-"FC_CACHE_VERSION
+-#define FC_USER_CACHE_FILE ".fonts.cache-"FC_CACHE_VERSION
++#define FC_CACHE_SUFFIX ".cache-" FC_CACHE_VERSION
++#define FC_DIR_CACHE_FILE "fonts.cache-" FC_CACHE_VERSION
++#define FC_USER_CACHE_FILE ".fonts.cache-" FC_CACHE_VERSION
+
+ /* Adjust outline rasterizer */
+ #define FC_CHAR_WIDTH "charwidth" /* Int */
+--- misc/build/fontconfig-2.8.0/src/fcxml.c
++++ misc/build/fontconfig-2.8.0/src/fcxml.c
+@@ -1123,6 +1123,7 @@
+ * Have to swap the decimal point to match the current locale
+ * if that locale doesn't use 0x2e
+ */
++#ifndef __ANDROID__
+ if ((dot = strchr (s, 0x2e)) &&
+ (locale_data = localeconv ()) &&
+ (locale_data->decimal_point[0] != 0x2e ||
+@@ -1158,6 +1158,7 @@
+ }
+ }
+ else
++#endif
+ v = strtod (s, end);
+ return v;
+ }