Project import
diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..ce35055 --- /dev/null +++ b/Makefile
@@ -0,0 +1,132 @@ +# +# Copyright (c) 2010-2012 Nest Labs, Inc. +# All rights reserved. +# +# This document is the property of Nest. It is considered +# confidential and proprietary information. +# +# This document may not be reproduced or transmitted in any form, +# in whole or in part, without the express written permission of +# Nest. +# +# Description: +# This file is the makefile for freetype, a free, high-quality, +# and portable font engine. +# + + +include pre.mak + +PackageName := freetype + +PackageExtension := tar.bz2 +PackageSeparator := - + +PackagePatchArgs := -p1 + +PackageArchive := $(PackageName).$(PackageExtension) +PackageSourceDir := $(PackageName)$(PackageSeparator)$(PackageVersion) + +PackageBuildMakefile = $(call GenerateBuildPaths,Makefile) + +CleanPaths += $(PackageLicenseFile) + +SOURCEDIRS = $(PackageSourceDir) +$(PackageSourceDir)_RULE_TARGET = $(BuildDirectory)/configure + +all: $(PackageDefaultGoal) + +# Generate the package license contents. + +$(PackageSourceDir)/docs/LICENSE.TXT: $(BuildDirectory)/source + +$(PackageLicenseFile): $(PackageSourceDir)/docs/LICENSE.TXT + $(copy-result) + +# Extract the source from the archive and apply patches, if any. + +$(PackageSourceDir): $(PackageArchive) $(PackagePatchPaths) + $(expand-and-patch-package) + +# Prepare the sources. + +$(BuildDirectory)/source: | $(PackageSourceDir) $(BuildDirectory) + $(Verbose)touch $@ + +# Patch the sources, if necessary. + +$(BuildDirectory)/patch: $(BuildDirectory)/source + $(Verbose)touch $@ + +# Generate the package build makefile. +# +# Freetype is NOT a good non-colocated source and build directory +# citizen. If you do not specify --srcdir, freetype will smash this +# make file and litter this directory with a number of build objects +# we do not want there. + +# Configure the source for building. + +$(BuildDirectory)/configure: $(BuildDirectory)/source | $(PackageSourceDir) $(BuildDirectory) + $(Verbose)cd $(BuildDirectory) && \ + $(CURDIR)/$(PackageSourceDir)/configure \ + CC="$(CC)" CXX="$(CXX)" AR=$(AR) RANLIB=$(RANLIB) STRIP=$(STRIP) \ + INSTALL="$(INSTALL) $(INSTALLFLAGS)" \ + CPPFLAGS="$(CPPOPTFLAGS) $(call ToolGenerateIncludeArgument,$(LinuxIncludePath))" \ + --srcdir=$(CURDIR)/$(PackageSourceDir) \ + --build=$(HostTuple) \ + --host=$(TargetTuple) \ + --prefix=$(addprefix $(LibPrefixConfigOption),/usr) \ + --sysconfdir=$(addprefix $(LibPrefixConfigOption),/etc) \ + --localstatedir=$(addprefix $(LibPrefixConfigOption),/var) \ + --without-harfbuzz \ + --without-png \ + --without-zlib \ + --without-bzip2 \ + --disable-static + $(Verbose)touch $@ + +# Build the source. +# +# We have to unset MAKEFLAGS since they confuse the package build otherwise. + +$(BuildDirectory)/build: $(BuildDirectory)/configure + $(Verbose)unset MAKEFLAGS && \ + $(MAKE) $(JOBSFLAG) -C $(BuildDirectory) all + $(Verbose)touch $@ + +# Stage the build to a temporary installation area. +# +# We have to unset MAKEFLAGS since they confuse the package build otherwise. +# +# We explictly remove 'libfreetype.la' because some packages that depend +# on libfreetype use libtool. If libtool finds a '*.la' file for a +# library, it uses the value of 'libdir=<dir>' it finds. In our case, +# since '--prefix=/usr' this value is '/usr/lib'. It then resolves +# '-lfreetype' to '/usr/lib/libfreetype.so'. In a cross-compilation +# environment, this is likely to be neither the right architecture nor +# the right version to link against. In short, we lose. +# +# We could also handle this by removing DESTDIR and setting the prefix +# to $(ResultDirectory); however, that results in libtool hard-coding +# $(ResultDirectory) as the RPATH in the linked executables which is +# NOT what we want either. We lose again. +# +# By removing the '*.la' file, we win by ensuring neither a misdirected +# link nor an RPATH. + +$(BuildDirectory)/stage: $(BuildDirectory)/build | $(ResultDirectory) + $(Verbose)unset MAKEFLAGS && \ + $(MAKE) $(JOBSFLAG) -C $(BuildDirectory) $(call GenerateLibraryDestinationArgument,$(ResultDirectory)) install + $(Verbose)$(RM) $(RMFLAGS) $(call GenerateResultPaths,,usr/lib/libfreetype.la) + $(Verbose)touch $@ + +.PHONY: stage +stage: $(BuildDirectory)/stage + +clean: + $(Verbose)$(RM) $(RMFLAGS) -r $(PackageSourceDir) + $(Verbose)$(RM) $(RMFLAGS) -r $(BuildDirectory) + $(Verbose)$(RM) $(RMFLAGS) -r $(ResultDirectory) + +include post.mak
diff --git a/freetype.tar.bz2 b/freetype.tar.bz2 new file mode 100644 index 0000000..3cdf364 --- /dev/null +++ b/freetype.tar.bz2 Binary files differ
diff --git a/freetype.url b/freetype.url new file mode 100644 index 0000000..0dff7eb --- /dev/null +++ b/freetype.url
@@ -0,0 +1 @@ +http://sourceforge.net/projects/freetype/files/freetype2/2.6/freetype-2.6.tar.bz2
diff --git a/freetype.version b/freetype.version new file mode 100644 index 0000000..5154b3f --- /dev/null +++ b/freetype.version
@@ -0,0 +1 @@ +2.6