From 27d330950f975322bd68edf836d7e3b91f76e57f Mon Sep 17 00:00:00 2001 From: Khaled Hosny Date: Thu, 17 Oct 2013 19:48:11 +0200 Subject: fdo#70393: move freetype to a subdir of external Change-Id: I533d855e30e46b937d27d185eabc0ca3a3473f4d Reviewed-on: https://gerrit.libreoffice.org/6304 Reviewed-by: David Tardon Tested-by: David Tardon --- external/Module_external.mk | 1 + external/freetype/ExternalPackage_freetype.mk | 22 ++++++++++++++++++++ external/freetype/ExternalProject_freetype.mk | 29 +++++++++++++++++++++++++++ external/freetype/Makefile | 7 +++++++ external/freetype/Module_freetype.mk | 22 ++++++++++++++++++++ external/freetype/README | 8 ++++++++ external/freetype/UnpackedTarball_freetype.mk | 20 ++++++++++++++++++ external/freetype/freetype-2.4.8.patch | 20 ++++++++++++++++++ 8 files changed, 129 insertions(+) create mode 100644 external/freetype/ExternalPackage_freetype.mk create mode 100644 external/freetype/ExternalProject_freetype.mk create mode 100644 external/freetype/Makefile create mode 100644 external/freetype/Module_freetype.mk create mode 100644 external/freetype/README create mode 100644 external/freetype/UnpackedTarball_freetype.mk create mode 100644 external/freetype/freetype-2.4.8.patch (limited to 'external') diff --git a/external/Module_external.mk b/external/Module_external.mk index a21badee7586..287398f49d0b 100644 --- a/external/Module_external.mk +++ b/external/Module_external.mk @@ -31,6 +31,7 @@ $(eval $(call gb_Module_add_moduledirs,external,\ $(call gb_Helper_optional,EXPAT,expat) \ $(call gb_Helper_optional,FIREBIRD,firebird) \ $(call gb_Helper_optional,FONTCONFIG,fontconfig) \ + $(call gb_Helper_optional,FREETYPE,freetype) \ $(call gb_Helper_optional,HARFBUZZ,harfbuzz) \ $(call gb_Helper_optional,LIBATOMIC_OPS,libatomic_ops) \ $(call gb_Helper_optional,LIBPNG,libpng) \ diff --git a/external/freetype/ExternalPackage_freetype.mk b/external/freetype/ExternalPackage_freetype.mk new file mode 100644 index 000000000000..87067ad18407 --- /dev/null +++ b/external/freetype/ExternalPackage_freetype.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_ExternalPackage_ExternalPackage,freetype,freetype)) + +$(eval $(call gb_ExternalPackage_use_external_project,freetype,freetype)) + +$(eval $(call gb_ExternalPackage_add_files,freetype,lib,\ + objs/.libs/libfreetype.a \ +)) + +$(eval $(call gb_ExternalPackage_add_files,freetype,bin,\ + builds/unix/freetype-config \ +)) + +# vim: set noet sw=4 ts=4: diff --git a/external/freetype/ExternalProject_freetype.mk b/external/freetype/ExternalProject_freetype.mk new file mode 100644 index 000000000000..ba22a64838f0 --- /dev/null +++ b/external/freetype/ExternalProject_freetype.mk @@ -0,0 +1,29 @@ +# -*- 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,freetype)) + +$(eval $(call gb_ExternalProject_register_targets,freetype,\ + build \ +)) + +$(call gb_ExternalProject_get_state_target,freetype,build) : + cd $(EXTERNAL_WORKDIR) \ + && CFLAGS="$(if $(debug),-g) $(gb_VISIBILITY_FLAGS)" \ + ./configure \ + --disable-shared \ + --without-zlib \ + --without-bzip2 \ + --prefix=$(OUTDIR) --includedir=$(call gb_UnpackedTarball_get_dir,freetype)/include \ + --build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM) \ + && chmod +x builds/unix/freetype-config \ + && $(MAKE) \ + && touch $@ + +# vim: set noet sw=4 ts=4: diff --git a/external/freetype/Makefile b/external/freetype/Makefile new file mode 100644 index 000000000000..ccb1c85a04da --- /dev/null +++ b/external/freetype/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/freetype/Module_freetype.mk b/external/freetype/Module_freetype.mk new file mode 100644 index 000000000000..e0965a0deb2b --- /dev/null +++ b/external/freetype/Module_freetype.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,freetype)) + +ifeq ($(OS),ANDROID) + +$(eval $(call gb_Module_add_targets,freetype,\ + ExternalPackage_freetype \ + ExternalProject_freetype \ + UnpackedTarball_freetype \ +)) + +endif + +# vim: set noet sw=4 ts=4: diff --git a/external/freetype/README b/external/freetype/README new file mode 100644 index 000000000000..c90f9509fb1a --- /dev/null +++ b/external/freetype/README @@ -0,0 +1,8 @@ +This "bundled" freetype is built only in an Android build + +FreeType 2 is a software font engine that is designed to be small, efficient, highly customizable, +and portable while capable of producing high-quality output (glyph images). It can be +used in graphics libraries, display servers, font conversion tools, text image generation +tools, and many other products as well. + +From [http://freetype.sourceforge.net/freetype2/index.html] \ No newline at end of file diff --git a/external/freetype/UnpackedTarball_freetype.mk b/external/freetype/UnpackedTarball_freetype.mk new file mode 100644 index 000000000000..600185108de9 --- /dev/null +++ b/external/freetype/UnpackedTarball_freetype.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,freetype)) + +$(eval $(call gb_UnpackedTarball_set_tarball,freetype,$(FREETYPE_TARBALL),,freetype)) + +$(eval $(call gb_UnpackedTarball_set_patchlevel,freetype,3)) + +$(eval $(call gb_UnpackedTarball_add_patches,freetype,\ + external/freetype/freetype-2.4.8.patch \ +)) + +# vim: set noet sw=4 ts=4: diff --git a/external/freetype/freetype-2.4.8.patch b/external/freetype/freetype-2.4.8.patch new file mode 100644 index 000000000000..9ae69a3a6b45 --- /dev/null +++ b/external/freetype/freetype-2.4.8.patch @@ -0,0 +1,20 @@ +--- misc/build/freetype-2.4.8/builds/unix/configure ++++ misc/build/freetype-2.4.8/builds/unix/configure +@@ -3619,7 +3619,7 @@ + + if test "x$GCC" = xyes; then + XX_CFLAGS="-Wall" +- XX_ANSIFLAGS="-pedantic -ansi" ++ XX_ANSIFLAGS= + else + case "$host" in + *-dec-osf*) +@@ -10039,7 +10039,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~ -- cgit