diff --git a/freetype-2.10.0-internal-outline.patch b/freetype-2.10.0-internal-outline.patch new file mode 100644 index 0000000000000000000000000000000000000000..0f69ff93502e565960f9b612a2b6733cd03fccc8 --- /dev/null +++ b/freetype-2.10.0-internal-outline.patch @@ -0,0 +1,72 @@ +--- freetype-2.10.0/include/freetype/ftoutln.h ++++ freetype-2.10.0/include/freetype/ftoutln.h +@@ -165,6 +165,15 @@ FT_BEGIN_HEADER + FT_Int numContours, + FT_Outline *anoutline ); + ++ /* ++ * Kept downstream for ABI compatibility only. ++ * It just throws error now. Remove once soname has been bumped. ++ */ ++ FT_EXPORT( FT_Error ) ++ FT_Outline_New_Internal( FT_Memory memory, ++ FT_UInt numPoints, ++ FT_Int numContours, ++ FT_Outline *anoutline ); + + /************************************************************************** + * +@@ -192,6 +201,13 @@ FT_BEGIN_HEADER + FT_Outline_Done( FT_Library library, + FT_Outline* outline ); + ++ /* ++ * Kept downstream for ABI compatibility only. ++ * It just throws error now. Remove once soname has been bumped. ++ */ ++ FT_EXPORT( FT_Error ) ++ FT_Outline_Done_Internal( FT_Memory memory, ++ FT_Outline* outline ); + + /************************************************************************** + * +--- freetype-2.10.0/src/base/ftoutln.c ++++ freetype-2.10.0/src/base/ftoutln.c +@@ -291,6 +291,19 @@ + + /* documentation is in ftoutln.h */ + ++ /* ++ * Kept downstream for ABI compatibility only. ++ * It just throws error now. Remove once soname has been bumped. ++ */ ++ FT_EXPORT_DEF( FT_Error ) ++ FT_Outline_New_Internal( FT_Memory memory, ++ FT_UInt numPoints, ++ FT_Int numContours, ++ FT_Outline *anoutline ) ++ { ++ return FT_THROW( Unimplemented_Feature ); ++ } ++ + FT_EXPORT_DEF( FT_Error ) + FT_Outline_New( FT_Library library, + FT_UInt numPoints, +@@ -423,6 +436,17 @@ + + /* documentation is in ftoutln.h */ + ++ /* ++ * Kept downstream for ABI compatibility only. ++ * It just throws error now. Remove once soname has been bumped. ++ */ ++ FT_EXPORT_DEF( FT_Error ) ++ FT_Outline_Done_Internal( FT_Memory memory, ++ FT_Outline* outline ) ++ { ++ return FT_THROW( Unimplemented_Feature ); ++ } ++ + FT_EXPORT_DEF( FT_Error ) + FT_Outline_Done( FT_Library library, + FT_Outline* outline ) diff --git a/freetype-2.10.1-debughook.patch b/freetype-2.10.1-debughook.patch new file mode 100644 index 0000000000000000000000000000000000000000..4421401202d8016c073d1b2be626075909d5009b --- /dev/null +++ b/freetype-2.10.1-debughook.patch @@ -0,0 +1,13 @@ +diff --git a/include/freetype/ftmodapi.h b/include/freetype/ftmodapi.h +index 8d039c4f3..88488bfe8 100644 +--- a/include/freetype/ftmodapi.h ++++ b/include/freetype/ftmodapi.h +@@ -623,7 +623,7 @@ FT_BEGIN_HEADER + * it is bytecode interpreter's execution context, `TT_ExecContext`, + * which is declared in FreeType's internal header file `tttypes.h`. + */ +- typedef FT_Error ++ typedef void + (*FT_DebugHook_Func)( void* arg ); + + diff --git a/freetype-2.10.1.tar.gz b/freetype-2.10.1.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..dc4eee6da08bdf2681ecbc3828f5b4ce31851863 Binary files /dev/null and b/freetype-2.10.1.tar.gz differ diff --git a/freetype-2.2.1-enable-valid.patch b/freetype-2.2.1-enable-valid.patch new file mode 100644 index 0000000000000000000000000000000000000000..e1615aaa44cef5dc679856e97250ad5c4859663a --- /dev/null +++ b/freetype-2.2.1-enable-valid.patch @@ -0,0 +1,20 @@ +--- freetype-2.2.1/modules.cfg.orig 2006-07-07 21:01:09.000000000 -0400 ++++ freetype-2.2.1/modules.cfg 2006-07-07 21:01:54.000000000 -0400 +@@ -110,7 +110,7 @@ + + # TrueType GX/AAT table validation. Needs `ftgxval.c' below. + # +-# AUX_MODULES += gxvalid ++AUX_MODULES += gxvalid + + # Support for streams compressed with gzip (files with suffix .gz). + # +@@ -124,7 +124,7 @@ + + # OpenType table validation. Needs `ftotval.c' below. + # +-# AUX_MODULES += otvalid ++AUX_MODULES += otvalid + + # Auxiliary PostScript driver component to share common code. + # diff --git a/freetype-2.3.0-enable-spr.patch b/freetype-2.3.0-enable-spr.patch new file mode 100644 index 0000000000000000000000000000000000000000..a234782a39bdef5db253e93bc451adeeda7b4c2b --- /dev/null +++ b/freetype-2.3.0-enable-spr.patch @@ -0,0 +1,11 @@ +--- freetype-2.3.0/include/freetype/config/ftoption.h.spf 2007-01-18 14:27:34.000000000 -0500 ++++ freetype-2.3.0/include/freetype/config/ftoption.h 2007-01-18 14:27:48.000000000 -0500 +@@ -92,7 +92,7 @@ + * macro is not defined, FreeType offers alternative LCD rendering + * technology that produces excellent output without LCD filtering. + */ +-/* #define FT_CONFIG_OPTION_SUBPIXEL_RENDERING */ ++#define FT_CONFIG_OPTION_SUBPIXEL_RENDERING + + + /************************************************************************** diff --git a/freetype-2.6.5-libtool.patch b/freetype-2.6.5-libtool.patch new file mode 100644 index 0000000000000000000000000000000000000000..4e0c2cb963a1b24fdb01ccbff5e2d2dfc26e2f69 --- /dev/null +++ b/freetype-2.6.5-libtool.patch @@ -0,0 +1,11 @@ +--- freetype-2.8/builds/unix/freetype-config.in.orig 2017-03-30 12:20:23.000000001 +0200 ++++ freetype-2.8/builds/unix/freetype-config.in 2017-05-16 13:25:39.223041128 +0200 +@@ -205,7 +205,7 @@ if test "$echo_libs" = "yes" ; then + fi + + if test "$echo_libtool" = "yes" ; then +- echo ${SYSROOT}$libdir/libfreetype.la ++ echo "" + fi + + # EOF diff --git a/freetype-2.8-multilib.patch b/freetype-2.8-multilib.patch new file mode 100644 index 0000000000000000000000000000000000000000..3ffd146b6a488a6cef84cff620e1d8886230b291 --- /dev/null +++ b/freetype-2.8-multilib.patch @@ -0,0 +1,65 @@ +--- freetype-2.9/builds/unix/freetype-config.in ++++ freetype-2.9/builds/unix/freetype-config.in +@@ -13,45 +13,25 @@ LC_ALL=C + export LC_ALL + + +-# if `pkg-config' is available, use values from `freetype2.pc' +-%PKG_CONFIG% --atleast-pkgconfig-version 0.24 >/dev/null 2>&1 +-if test $? -eq 0 ; then +- # note that option `--variable' is not affected by the +- # PKG_CONFIG_SYSROOT_DIR environment variable +- if test "x$SYSROOT" != "x" ; then +- PKG_CONFIG_SYSROOT_DIR="$SYSROOT" +- export PKG_CONFIG_SYSROOT_DIR +- fi +- +- prefix=`%PKG_CONFIG% --variable prefix freetype2` +- exec_prefix=`%PKG_CONFIG% --variable exec_prefix freetype2` +- +- includedir=`%PKG_CONFIG% --variable includedir freetype2` +- libdir=`%PKG_CONFIG% --variable libdir freetype2` +- +- version=`%PKG_CONFIG% --modversion freetype2` +- +- cflags=`%PKG_CONFIG% --cflags freetype2` +- dynamic_libs=`%PKG_CONFIG% --libs freetype2` +- static_libs=`%PKG_CONFIG% --static --libs freetype2` +-else +- prefix="%prefix%" +- exec_prefix="%exec_prefix%" +- +- includedir="%includedir%" +- libdir="%libdir%" +- +- version=%ft_version% +- +- cflags="-I${SYSROOT}$includedir/freetype2" +- dynamic_libs="-lfreetype" +- static_libs="%LIBSSTATIC_CONFIG%" +- if test "${SYSROOT}$libdir" != "/usr/lib" && +- test "${SYSROOT}$libdir" != "/usr/lib64" ; then +- libs_L="-L${SYSROOT}$libdir" +- fi ++# note that option `--variable' is not affected by the ++# PKG_CONFIG_SYSROOT_DIR environment variable ++if test "x$SYSROOT" != "x" ; then ++ PKG_CONFIG_SYSROOT_DIR="$SYSROOT" ++ export PKG_CONFIG_SYSROOT_DIR + fi + ++prefix=`pkgconf --variable prefix freetype2` ++exec_prefix=`pkgconf --variable exec_prefix freetype2` ++ ++includedir=`pkgconf --variable includedir freetype2` ++libdir=`pkgconf --variable libdir freetype2` ++ ++version=`pkgconf --modversion freetype2` ++ ++cflags=`pkgconf --cflags freetype2` ++dynamic_libs=`pkgconf --libs freetype2` ++static_libs=`pkgconf --static --libs freetype2` ++ + orig_prefix=$prefix + orig_exec_prefix=$exec_prefix + diff --git a/freetype-2.9.1.tar.bz2 b/freetype-2.9.1.tar.bz2 deleted file mode 100644 index 715f04da380954b620c041cb989644651082fbfe..0000000000000000000000000000000000000000 Binary files a/freetype-2.9.1.tar.bz2 and /dev/null differ diff --git a/freetype-doc-2.10.1.tar.gz b/freetype-doc-2.10.1.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..efef39e07c553f04d513724bb44578bcef0fafc6 Binary files /dev/null and b/freetype-doc-2.10.1.tar.gz differ diff --git a/freetype-doc-2.9.1.tar.bz2 b/freetype-doc-2.9.1.tar.bz2 deleted file mode 100644 index ea36a0b48e9e861003014fc9bfdbde614f85b5ec..0000000000000000000000000000000000000000 Binary files a/freetype-doc-2.9.1.tar.bz2 and /dev/null differ diff --git a/freetype.spec b/freetype.spec index 2c847ceb42c9e47f404129402d6884d863261162..ffabe2e4d37d4f0c8acdf0beb00aa96622e3e157 100644 --- a/freetype.spec +++ b/freetype.spec @@ -3,26 +3,29 @@ %{!?with_xfree86:%define with_xfree86 1} Name: freetype -Version: 2.9.1 -Release: 5 +Version: 2.10.1 +Release: 1 Summary: FreeType is a freely available software library to render fonts License: (FTL or GPLv2+) and BSD and MIT and Public Domain and zlib with acknowledgement URL: http://www.freetype.org -Source0: http://download.savannah.gnu.org/releases/freetype/freetype-%{version}.tar.bz2 -Source1: http://download.savannah.gnu.org/releases/freetype/freetype-doc-%{version}.tar.bz2 -Source2: http://download.savannah.gnu.org/releases/freetype/ft2demos-%{version}.tar.bz2 +Source0: http://download.savannah.gnu.org/releases/freetype/freetype-%{version}.tar.gz +Source1: http://download.savannah.gnu.org/releases/freetype/freetype-doc-%{version}.tar.gz +Source2: http://download.savannah.gnu.org/releases/freetype/ft2demos-%{version}.tar.gz Source3: ftconfig.h -Patch1: freetype-2.5.2-more-demos.patch +Patch6000: freetype-2.3.0-enable-spr.patch +Patch6001: freetype-2.2.1-enable-valid.patch +Patch6002: freetype-2.5.2-more-demos.patch +Patch6003: freetype-2.6.5-libtool.patch +Patch6004: freetype-2.8-multilib.patch +Patch6005: freetype-2.10.0-internal-outline.patch +Patch6006: freetype-2.10.1-debughook.patch BuildRequires: gcc libX11-devel libpng-devel zlib-devel bzip2-devel -Provides: %{name}-bytecode %{name}-demos -%if %{?_with_subpixel_rendering:1}%{!?_with_subpixel_rendering:0} -Provides: %{name}-subpixel -%endif - -Obsoletes: %{name}-demos +Provides: %{name}-bytecode %{name}-demos = %{version}-%{release} +Provides: %{name}-subpixel +Obsoletes: %{name}-demos < %{version}-%{release} freetype-freeworld < 2.9.1-2 %description FreeType is written in C, designed to be small,efficient, highly customizable, and portable while capable of producing high-quality @@ -46,21 +49,26 @@ Man pages and other related for freetype documents. %prep %setup -q -b 1 -a 2 +%patch6000 -p1 +%patch6001 -p1 pushd ft2demos-%{version} -%patch1 -p1 -b .more-demos +%patch6002 -p1 -b .more-demos popd +%patch6003 -p1 +%patch6004 -p1 +%patch6005 -p1 +%patch6006 -p1 + %build %configure --disable-static --with-zlib=yes --with-bzip2=yes --with-png=yes --enable-freetype-config --with-harfbuzz=no sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' builds/unix/libtool sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' builds/unix/libtool %make_build -%if %{with_xfree86} cd ft2demos-%{version} make TOP_DIR=".." -%endif %install %make_install gnulocaledir=$RPM_BUILD_ROOT%{_datadir}/locale @@ -69,13 +77,9 @@ make TOP_DIR=".." builds/unix/libtool --mode=install install -m 755 ft2demos-%{version}/bin/$ftdemo $RPM_BUILD_ROOT/%{_bindir} done } -%if %{with_xfree86} -{ - for ftdemo in ftdiff ftgamma ftgrid ftmulti ftstring fttimer ftview ; do - builds/unix/libtool --mode=install install -m 755 ft2demos-%{version}/bin/$ftdemo $RPM_BUILD_ROOT/%{_bindir} - done -} -%endif +for ftdemo in ftdiff ftgamma ftgrid ftmulti ftstring fttimer ftview ; do + builds/unix/libtool --mode=install install -m 755 ft2demos-%{version}/bin/$ftdemo $RPM_BUILD_ROOT/%{_bindir} +done %define wordsize %{__isa_bits} @@ -83,6 +87,8 @@ mv $RPM_BUILD_ROOT%{_includedir}/freetype2/freetype/config/ftconfig.h \ $RPM_BUILD_ROOT%{_includedir}/freetype2/freetype/config/ftconfig-%{wordsize}.h install -p -m 644 %{SOURCE3} $RPM_BUILD_ROOT%{_includedir}/freetype2/freetype/config/ftconfig.h +%delete_la_and_a + %triggerpostun -- freetype < 2.0.5-3 { # ttmkfdir updated - as of 2.0.5-3, on upgrades we need xfs to regenerate @@ -93,9 +99,7 @@ install -p -m 644 %{SOURCE3} $RPM_BUILD_ROOT%{_includedir}/freetype2/freetype/co exit 0 } -%post -p /sbin/ldconfig - -%postun -p /sbin/ldconfig +%ldconfig_scriptlets %files %defattr(-,root,root) @@ -104,14 +108,15 @@ install -p -m 644 %{SOURCE3} $RPM_BUILD_ROOT%{_includedir}/freetype2/freetype/co %{_bindir}/ft* %files devel +%defattr(-,root,root) %{_datadir}/aclocal/freetype2.m4 %{_includedir}/freetype2/* %{_libdir}/libfreetype.so %{_libdir}/pkgconfig/freetype2.pc %{_bindir}/freetype-config -%exclude %{_libdir}/*.{a,la} %files help +%defattr(-,root,root) %doc docs/design %doc docs/glyphs %doc docs/reference @@ -121,6 +126,12 @@ install -p -m 644 %{SOURCE3} $RPM_BUILD_ROOT%{_includedir}/freetype2/freetype/co %{_mandir}/man1/* %changelog +* Fri Apr 17 2020 songnannan - 2.10.1-1 +- Type:enhancement +- Id:NA +- SUG:NA +- DESC:update to 2.10.1 + * Tue Jan 14 2020 openEuler Buildteam - 2.9.1-5 - Type:enhancement - Id:NA diff --git a/ft2demos-2.10.1.tar.gz b/ft2demos-2.10.1.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..52be8a6f428483ebc71b96d130ded6b55f05492c Binary files /dev/null and b/ft2demos-2.10.1.tar.gz differ diff --git a/ft2demos-2.9.1.tar.bz2 b/ft2demos-2.9.1.tar.bz2 deleted file mode 100644 index 7891b3a5a9ab18867d06df7678dd87e0a47a0506..0000000000000000000000000000000000000000 Binary files a/ft2demos-2.9.1.tar.bz2 and /dev/null differ