diff options
author | Eelco Dolstra <eelco.dolstra@logicblox.com> | 2013-06-25 18:42:56 +0200 |
---|---|---|
committer | Eelco Dolstra <eelco.dolstra@logicblox.com> | 2013-06-25 18:42:56 +0200 |
commit | 552fd3d599851336aa21ef073d1f7836566e454f (patch) | |
tree | b2ebdeaa32426d12e21020410a0eb1a12881f8f6 /pkgs/development/libraries/freetype | |
parent | cc61d31902d67b94333f53a5ab5772330bbc21cc (diff) | |
parent | 9dc35999602bc3bf2d7358a9ff79b9530e8d1975 (diff) | |
download | nixpkgs-552fd3d599851336aa21ef073d1f7836566e454f.tar nixpkgs-552fd3d599851336aa21ef073d1f7836566e454f.tar.gz nixpkgs-552fd3d599851336aa21ef073d1f7836566e454f.tar.bz2 nixpkgs-552fd3d599851336aa21ef073d1f7836566e454f.tar.lz nixpkgs-552fd3d599851336aa21ef073d1f7836566e454f.tar.xz nixpkgs-552fd3d599851336aa21ef073d1f7836566e454f.tar.zst nixpkgs-552fd3d599851336aa21ef073d1f7836566e454f.zip |
Merge remote-tracking branch 'origin/master' into multiple-outputs
Conflicts: pkgs/development/libraries/atk/default.nix pkgs/development/libraries/cairo/default.nix pkgs/development/libraries/freetype/default.nix pkgs/development/libraries/glib/default.nix pkgs/development/libraries/gmime/default.nix pkgs/development/libraries/pango/default.nix pkgs/servers/x11/xorg/default.nix pkgs/top-level/all-packages.nix
Diffstat (limited to 'pkgs/development/libraries/freetype')
-rw-r--r-- | pkgs/development/libraries/freetype/default.nix | 48 | ||||
-rw-r--r-- | pkgs/development/libraries/freetype/enable-validation.patch | 22 |
2 files changed, 63 insertions, 7 deletions
diff --git a/pkgs/development/libraries/freetype/default.nix b/pkgs/development/libraries/freetype/default.nix index 4c695ab3345..b2e39e41a0b 100644 --- a/pkgs/development/libraries/freetype/default.nix +++ b/pkgs/development/libraries/freetype/default.nix @@ -1,24 +1,52 @@ { stdenv, fetchurl, gnumake -, # FreeType supports sub-pixel rendering. This is patented by + # FreeType supports sub-pixel rendering. This is patented by # Microsoft, so it is disabled by default. This option allows it to # be enabled. See http://www.freetype.org/patents.html. - useEncumberedCode ? false +, useEncumberedCode ? false +, useInfinality ? true }: +assert !(useEncumberedCode && useInfinality); # probably wouldn't make sense + +let + + version = "2.4.11"; + + infinality = rec { + inherit useInfinality; + vers = "20130104"; + subvers = "04"; + sha256 = "0dqglig34lfcw0w6sm6vmich0pcvq303vyh8jzqapvxgvrpr2156"; + + base_URL = "http://www.infinality.net/fedora/linux/zips"; + url = "${base_URL}/freetype-infinality-${version}-${vers}_${subvers}-x86_64.tar.bz2"; + }; + +in + stdenv.mkDerivation rec { - name = "freetype-2.4.10"; + name = "freetype-${version}"; src = fetchurl { url = "mirror://sourceforge/freetype/${name}.tar.bz2"; - sha256 = "0bwrkqpygayfc1rf6rr1nb8l3svgn1fmjz8davg2hnf46cn293hc"; + sha256 = "0gxyzxqpyf8g85y6g1zc1wqrh71prbbk8xfw4m8rwzb4ck5hp7gg"; }; outputs = [ "dev" "out" ]; configureFlags = "--disable-static --bindir=$(dev)/bin"; - NIX_CFLAGS_COMPILE = stdenv.lib.optionalString useEncumberedCode - "-DFT_CONFIG_OPTION_SUBPIXEL_RENDERING=1"; + infinality_patch = if useInfinality + then fetchurl { inherit (infinality) url sha256; } + else null; + + NIX_CFLAGS_COMPILE = with stdenv.lib; + " -fno-strict-aliasing" # from Gentoo, see https://bugzilla.redhat.com/show_bug.cgi?id=506840 + + optionalString useEncumberedCode " -DFT_CONFIG_OPTION_SUBPIXEL_RENDERING=1" + + optionalString useInfinality " -DTT_CONFIG_OPTION_SUBPIXEL_HINTING=1"; + + patches = [ ./enable-validation.patch ] # from Gentoo + ++ stdenv.lib.optional useInfinality [ infinality_patch ]; # The asm for armel is written with the 'asm' keyword. CFLAGS = stdenv.lib.optionalString stdenv.isArm "-std=gnu99"; @@ -28,6 +56,8 @@ stdenv.mkDerivation rec { enableParallelBuilding = true; + doCheck = true; + postInstall = '' mkdir $dev/lib @@ -42,9 +72,13 @@ stdenv.mkDerivation rec { configureFlags = "--disable-static CC_BUILD=gcc"; }; + passthru = { inherit infinality; }; # for fontconfig + meta = { description = "A font rendering engine"; homepage = http://www.freetype.org/; - license = "GPLv2+"; # or the FreeType License (BSD + advertising clause) + license = if useEncumberedCode then "unfree" + else "GPLv2+"; # or the FreeType License (BSD + advertising clause) + platforms = stdenv.lib.platforms.all; }; } diff --git a/pkgs/development/libraries/freetype/enable-validation.patch b/pkgs/development/libraries/freetype/enable-validation.patch new file mode 100644 index 00000000000..44f3bf6e1c9 --- /dev/null +++ b/pkgs/development/libraries/freetype/enable-validation.patch @@ -0,0 +1,22 @@ +Enables gxvalid and otvalid modules for use with ftvalid. + +--- 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 @@ + AUX_MODULES += cache + + # 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. + # |