diff options
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/libjpeg-turbo')
-rw-r--r-- | nixpkgs/pkgs/development/libraries/libjpeg-turbo/default.nix | 35 | ||||
-rw-r--r-- | nixpkgs/pkgs/development/libraries/libjpeg-turbo/mingw-boolean.patch | 19 |
2 files changed, 54 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/libraries/libjpeg-turbo/default.nix b/nixpkgs/pkgs/development/libraries/libjpeg-turbo/default.nix new file mode 100644 index 000000000000..0f71d941d38d --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/libjpeg-turbo/default.nix @@ -0,0 +1,35 @@ +{ stdenv, fetchurl, cmake, nasm, enableStatic ? false }: + +stdenv.mkDerivation rec { + + pname = "libjpeg-turbo"; + version = "2.0.3"; + + src = fetchurl { + url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.gz"; + sha256 = "1ds16bnj17v6hzd43w8pzijz3imd9am4hw75ir0fxm240m8dwij2"; + }; + + patches = + stdenv.lib.optional (stdenv.hostPlatform.libc or null == "msvcrt") + ./mingw-boolean.patch; + + outputs = [ "bin" "dev" "out" "man" "doc" ]; + + nativeBuildInputs = [ cmake nasm ]; + + cmakeFlags = [ + "-DENABLE_STATIC=${if enableStatic then "1" else "0"}" + ]; + + doInstallCheck = true; + installCheckTarget = "test"; + + meta = with stdenv.lib; { + homepage = "http://libjpeg-turbo.virtualgl.org/"; + description = "A faster (using SIMD) libjpeg implementation"; + license = licenses.ijg; # and some parts under other BSD-style licenses + maintainers = [ maintainers.vcunat ]; + platforms = platforms.all; + }; +} diff --git a/nixpkgs/pkgs/development/libraries/libjpeg-turbo/mingw-boolean.patch b/nixpkgs/pkgs/development/libraries/libjpeg-turbo/mingw-boolean.patch new file mode 100644 index 000000000000..9b9483d63987 --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/libjpeg-turbo/mingw-boolean.patch @@ -0,0 +1,19 @@ +Ported to updated libjpeg-turbo from +https://github.com/msys2/MINGW-packages/blob/master/mingw-w64-libjpeg-turbo/jpeg-typedefs.patch +--- a/jmorecfg.h 2012-02-10 06:47:55 +0300 ++++ b/jmorecfg.h 2012-05-03 10:29:13 +0400 +@@ -224,7 +224,13 @@ + * Defining HAVE_BOOLEAN before including jpeglib.h should make it work. + */ + +-#ifndef HAVE_BOOLEAN ++#if defined(_WIN32) && !defined(HAVE_BOOLEAN) ++#ifndef __RPCNDR_H__ ++typedef unsigned char boolean; ++#endif ++#define HAVE_BOOLEAN ++#endif ++#if !defined(HAVE_BOOLEAN) && !defined(__RPCNDR_H__) + typedef int boolean; + #endif + #ifndef FALSE /* in case these macros already exist */ |