open-src/lib/freetype/Makefile
changeset 325 ab2a98db8d31
parent 255 32600afcc112
child 330 dc6f3d380708
--- a/open-src/lib/freetype/Makefile	Fri Feb 22 14:58:31 2008 -0800
+++ b/open-src/lib/freetype/Makefile	Fri Feb 22 15:07:27 2008 -0800
@@ -2,7 +2,7 @@
 #
 # Freetype 2.x Makefile
 #
-# Copyright 2007 Sun Microsystems, Inc.  All rights reserved.
+# Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
 # Use subject to license terms.
 #
 # Permission is hereby granted, free of charge, to any person obtaining a
@@ -30,7 +30,7 @@
 # or other dealings in this Software without prior written authorization
 # of the copyright holder.
 #
-# @(#)Makefile	1.69	07/11/27
+# @(#)Makefile	1.70	08/02/21
 #
 
 PWD:sh=pwd
@@ -41,33 +41,49 @@
 BUILD_TYPES_SET=yes
 
 # Version number (used in path names)
-FT_VERS=2.1.10
+FT_VERS=2.3.5
 
 # Source tarball
 SOURCE_TARBALL_NAME=freetype-$(FT_VERS).tar.bz2
 
 # Download site for source
-SOURCE_URL=http://savannah.nongnu.org/download/freetype/$(SOURCE_TARBALL_NAME)
+SOURCE_URL=http://download.savannah.gnu.org/releases/freetype/$(SOURCE_TARBALL_NAME)
 SOURCE_URL_SET=yes
 
 # Patches to apply to source after unpacking, in order
-SOURCE_PATCHES= freetype-$(FT_VERS).patch 6425531.patch 6542352.patch \
-	freetype-$(FT_VERS).hint.patch 6539893.patch,-p1 CVE-2007-2754.patch \
-	freetype-config.patch
+SOURCE_PATCHES= \
+	freetype-config.patch \
+	freetype-2.3.5.ttobjs.h.patch \
+	freetype-2.3.5.ttinterp.h.patch \
+	freetype-2.3.5.ttinterp.c.patch \
+	freetype-2.3.5.ttobjs.c.patch \
+	freetype-2.3.5.ttgload.c.patch \
+	CVE-2007-2754.patch \
+	freetype-2.3.5.ftoption.h.patch \
+	freetype-2.3.5.freetype.h.patch \
+	freetype-2.3.5.configure.patch
 
 # Directory created by unpacking source
 SOURCE_DIR=$(BUILD_DIR)/freetype-$(FT_VERS)
 
 # Where to install freetype files
-FT_prefix=/usr
+FT_prefix=$(PROTODIR)/usr
+FT_bindir=$(FT_prefix)/bin$(LIBSUBDIR)
+FT_libdir=$(FT_prefix)/lib$(LIBSUBDIR)
 
 # Command line options to GNU autoconf configure script
-FT_CFG=--enable-shared=yes --enable-static=no --prefix=$(FT_prefix) \
-	--libdir=$(FT_prefix)/lib$(LIBSUBDIR) \
-	--bindir=$(FT_prefix)/bin$(LIBSUBDIR)
+FT_CFG= --prefix=$(FT_prefix) \
+	--libdir=$(FT_libdir) \
+	--bindir=$(FT_bindir) \
+	--localstatedir=/var \
+	--enable-shared \
+	--disable-static \
+	--disable-libtool-lock \
+	--with-zlib \
+	--with-pic
 
 # Library built in tree
-FT_LIB=$(SOURCE_DIR)/objs/.libs/libfreetype.so.6.3.8
+FT_LIB=$(FT_DIR)/objs/.libs/libfreetype.so.6.3.16
 
 # What to build
 BUILD_TARGETS=$(GNUMAKE) $(FT_LIB)
@@ -78,28 +94,53 @@
 ### Include common rulesets
 include $(TOP)/common/Makefile.inc
 
+# GNU make wants bash
+SHELL = /bin/bash
+
 ### Rules specific to this directory:
 
 # Run configure script (Freetype helpfully does this the first time you call
 # gmake - this isn't normal for autoconf programs)
 $(SOURCE_DIR)/config.mk: $(UNPACK_TARGET)
 	(cd $(SOURCE_DIR) ; \
-	 chmod a+x builds/unix/configure builds/unix/mkinstalldirs builds/unix/install-sh ; \
-	 CC=$(CC) CFLAGS="$(LIB_CFLAGS)" LD="$(CC) $(LIB_CFLAGS) $(LDFLAGS)" \
-	 LDFLAGS="$(LIB_LDFLAGS)" MAKE=$(GNUMAKE) CFG="$(FT_CFG)" \
-	 INSTALL="$(TOP)/common/install-sh -c" CPPROG="cp -p" \
-	 $(GNUMAKE) $(MFLAGS) )
+	chmod a+x builds/unix/configure builds/unix/mkinstalldirs builds/unix/install-sh ; \
+	    SHELL="/bin/bash" \
+	    MAKESHELL="/bin/bash" \
+	    CONFIG_SHELL="/bin/bash" \
+	    CC="$(CC)" \
+	    CXX="$(CXX)" \
+	    CPP="$(CC) -E $(LIB_CFLAGS)" \
+	    CXXCPP="$(CXX) -E $(CXXFLAGS)" \
+	    CFLAGS="$(LIB_CFLAGS)" \
+	    CXXFLAGS="$(LIB_CXXFLAGS)" \
+	    LDFLAGS="$(LIB_LDFLAGS)" \
+	    CFG="$(FT_CFG)" \
+	    LD="$(CC) $(LIB_CFLAGS) $(LIB_LDFLAGS)" \
+	    MAKE=$(GNUMAKE) GNUMAKE=$(GNUMAKE) CFG="$(FT_CFG)" \
+	    INSTALL="$(TOP)/common/install-sh -c" CPPROG="cp -p" \
+	    $(GNUMAKE) )
 
 # Build Freetype
 $(FT_LIB): $(SOURCE_DIR)/config.mk
-	(cd $(SOURCE_DIR) ; LD_OPTIONS="$(LIB_LDFLAGS)" $(GNUMAKE) )
+	(cd $(SOURCE_DIR) ; \
+	    SHELL="/bin/bash" \
+	    MAKESHELL="/bin/bash" \
+	    CONFIG_SHELL="/bin/bash" \
+	    CC="$(CC)" \
+	    CXX="$(CXX)" \
+	    CPP="$(CC) -E $(LIB_CFLAGS)" \
+	    CXXCPP="$(CXX) -E $(CXXFLAGS)" \
+	    CFLAGS="$(LIB_CFLAGS)" \
+	    CXXFLAGS="$(LIB_CXXFLAGS)" \
+	    LDFLAGS="$(LIB_LDFLAGS)" \
+	    MAKE=$(GNUMAKE) GNUMAKE=$(GNUMAKE) \
+	    LDFLAGS="$(LIB_LDFLAGS)" \
+	    CFG="$(FT_CFG)" \
+	    LD="$(CC) $(LIB_CFLAGS) $(LIB_LDFLAGS)" \
+	    INSTALL="$(TOP)/common/install-sh -c" \
+	    $(GNUMAKE) )
 
 install_gen: $(FT_LIB)
-	mkdir -p $(PROTODIR)$(FT_prefix)/bin$(ARCHLIBSUBDIR)
-	(cd $(SOURCE_DIR) ; $(GNUMAKE) prefix=$(PROTODIR)$(FT_prefix) libdir=$(PROTODIR)$(FT_prefix)/lib$(ARCHLIBSUBDIR) bindir=$(PROTODIR)$(FT_prefix)/bin$(ARCHLIBSUBDIR) install )
+	(cd $(SOURCE_DIR) ; $(GNUMAKE) prefix=$(FT_prefix) libdir=$(FT_libdir)$(ARCHLIBSUBDIR) bindir=$(FT_prefix)/bin$(ARCHLIBSUBDIR) install )
+	mkdir -p $(PROTODIR)/usr/bin$(ARCHLIBSUBDIR)
 
-install_64::
-	-/bin/rm -f $(PROTODIR)$(FT_prefix)/lib/64 $(PROTODIR)$(FT_prefix)/bin/64
-	ln -s $(SUBDIR64) $(PROTODIR)$(FT_prefix)/lib/64
-	ln -s $(SUBDIR64) $(PROTODIR)$(FT_prefix)/bin/64
-