···17 # Note: the order in which desktop manager modules are imported here
18 # determines the default: later modules (if enabled) are preferred.
19 # E.g., if KDE is enabled, it supersedes xterm.
20- imports = [ ./none.nix ./xterm.nix ./xfce.nix ./kde4.nix ./e17.nix ./e18.nix ./gnome3.nix ./xbmc.nix ];
0002122 options = {
23
···17 # Note: the order in which desktop manager modules are imported here
18 # determines the default: later modules (if enabled) are preferred.
19 # E.g., if KDE is enabled, it supersedes xterm.
20+ imports = [
21+ ./none.nix ./xterm.nix ./xfce.nix ./kde4.nix
22+ ./e17.nix ./e18.nix ./gnome3.nix ./xbmc.nix
23+ ];
2425 options = {
26
···1+From a0955f351c7eb1022da7ae36970ffef3b00c8aff Mon Sep 17 00:00:00 2001
2+From: Adam Harvey <aharvey@php.net>
3+Date: Sat, 7 Dec 2013 19:39:40 -0800
4+Subject: [PATCH] Switch to using freetype-config for freetype detection.
5+6+This fixes GD compilation against libfreetype 2.5.1 and later after they made
7+the rather interesting decision to change their include directory layout in a
8+point release.
9+10+The original suggestion in the bug was to use pkg-config, but my inclination is
11+to use freetype-config instead: we should be able to get the same configuration
12+information without actually needing pkg-config installed, since pkg-config is
13+by no means guaranteed to exist on many Unices and distros, whereas
14+freetype-config should always be present if a libfreetype build environment is
15+installed. Let's try it out and see what happens.
16+17+Fixes bug #64405 (Use freetype-config for determining freetype2 dir(s)).
18+19+diff --git a/ext/gd/config.m4 b/ext/gd/config.m4
20+index 0e35ece..732e14c 100644
21+--- a/ext/gd/config.m4
22++++ b/ext/gd/config.m4
23+@@ -193,30 +193,25 @@ AC_DEFUN([PHP_GD_FREETYPE2],[
24+ if test "$PHP_FREETYPE_DIR" != "no"; then
25+26+ for i in $PHP_FREETYPE_DIR /usr/local /usr; do
27+- if test -f "$i/include/freetype2/freetype/freetype.h"; then
28++ if test -f "$i/bin/freetype-config"; then
29+ FREETYPE2_DIR=$i
30+- FREETYPE2_INC_DIR=$i/include/freetype2
31++ FREETYPE2_CONFIG="$i/bin/freetype-config"
32+ break
33+ fi
34+ done
35+36+ if test -z "$FREETYPE2_DIR"; then
37+- AC_MSG_ERROR([freetype.h not found.])
38++ AC_MSG_ERROR([freetype-config not found.])
39+ fi
40+41+- PHP_CHECK_LIBRARY(freetype, FT_New_Face,
42+- [
43+- PHP_ADD_LIBRARY_WITH_PATH(freetype, $FREETYPE2_DIR/$PHP_LIBDIR, GD_SHARED_LIBADD)
44+- PHP_ADD_INCLUDE($FREETYPE2_DIR/include)
45+- PHP_ADD_INCLUDE($FREETYPE2_INC_DIR)
46+- AC_DEFINE(USE_GD_IMGSTRTTF, 1, [ ])
47+- AC_DEFINE(HAVE_LIBFREETYPE,1,[ ])
48+- AC_DEFINE(ENABLE_GD_TTF,1,[ ])
49+- ],[
50+- AC_MSG_ERROR([Problem with freetype.(a|so). Please check config.log for more information.])
51+- ],[
52+- -L$FREETYPE2_DIR/$PHP_LIBDIR
53+- ])
54++ FREETYPE2_CFLAGS=`$FREETYPE2_CONFIG --cflags`
55++ FREETYPE2_LIBS=`$FREETYPE2_CONFIG --libs`
56++
57++ PHP_EVAL_INCLINE($FREETYPE2_CFLAGS)
58++ PHP_EVAL_LIBLINE($FREETYPE2_LIBS, GD_SHARED_LIBADD)
59++ AC_DEFINE(USE_GD_IMGSTRTTF, 1, [ ])
60++ AC_DEFINE(HAVE_LIBFREETYPE,1,[ ])
61++ AC_DEFINE(ENABLE_GD_TTF,1,[ ])
62+ else
63+ AC_MSG_RESULT([If configure fails try --with-freetype-dir=<DIR>])
64+ fi
···8# (icu is a ~30 MB dependency, the rest is very small in comparison)
910stdenv.mkDerivation rec {
11- name = "harfbuzz-0.9.28";
1213 src = fetchurl {
14 url = "http://www.freedesktop.org/software/harfbuzz/release/${name}.tar.bz2";
15- sha256 = "0j70ppl2qrfx8yzdl8ki63wcxgrlhkyl31p1a6bhmbqqh32zfrx5";
16 };
1718 configureFlags = [
···8# (icu is a ~30 MB dependency, the rest is very small in comparison)
910stdenv.mkDerivation rec {
11+ name = "harfbuzz-0.9.32";
1213 src = fetchurl {
14 url = "http://www.freedesktop.org/software/harfbuzz/release/${name}.tar.bz2";
15+ sha256 = "1d4x9fcy2p9g67pb4nfzx6p4008dzn7g25lva9pv71rd9rs82323";
16 };
1718 configureFlags = [