about summary refs log tree commit diff
diff options
context:
space:
mode:
authorDmitry Kalinkin <dmitry.kalinkin@gmail.com>2017-12-31 14:27:37 -0500
committerDomen Kožar <domen@enlambda.com>2018-01-01 11:53:40 +0000
commit21db6f6af1e006e29a582ca234786a8027c319a1 (patch)
tree66b4ce1557adf7b349f02a96ff35adef953826a6
parente714179c36858c1a59b8b2da107c3374e489a228 (diff)
downloadnixlib-21db6f6af1e006e29a582ca234786a8027c319a1.tar
nixlib-21db6f6af1e006e29a582ca234786a8027c319a1.tar.gz
nixlib-21db6f6af1e006e29a582ca234786a8027c319a1.tar.bz2
nixlib-21db6f6af1e006e29a582ca234786a8027c319a1.tar.lz
nixlib-21db6f6af1e006e29a582ca234786a8027c319a1.tar.xz
nixlib-21db6f6af1e006e29a582ca234786a8027c319a1.tar.zst
nixlib-21db6f6af1e006e29a582ca234786a8027c319a1.zip
mupdf: enable on darwin
-rw-r--r--pkgs/applications/misc/mupdf/darwin.patch35
-rw-r--r--pkgs/applications/misc/mupdf/default.nix20
2 files changed, 49 insertions, 6 deletions
diff --git a/pkgs/applications/misc/mupdf/darwin.patch b/pkgs/applications/misc/mupdf/darwin.patch
new file mode 100644
index 000000000000..e0c7d6a7a676
--- /dev/null
+++ b/pkgs/applications/misc/mupdf/darwin.patch
@@ -0,0 +1,35 @@
+diff --git a/Makerules b/Makerules
+--- a/Makerules
++++ b/Makerules
+@@ -81,22 +81,10 @@ HAVE_GLUT ?= yes
+ SYS_GLUT_CFLAGS := -Wno-deprecated-declarations
+ SYS_GLUT_LIBS := -framework GLUT -framework OpenGL
+ 
+-CC = xcrun cc
+-AR = xcrun ar
+-LD = xcrun ld
+-RANLIB_CMD = xcrun ranlib $@
+-
+-# Linux uses pkg-config for system libraries.
+-else ifeq "$(OS)" "Linux"
+-
+ HAVE_PTHREAD := yes
+ SYS_PTHREAD_CFLAGS :=
+ SYS_PTHREAD_LIBS := -lpthread
+ 
+-HAVE_GLUT := yes
+-SYS_GLUT_CFLAGS :=
+-SYS_GLUT_LIBS := -lglut -lGL
+-
+ ifeq "$(shell pkg-config --exists 'libcrypto <= 1.0.1t' && echo yes)" "yes"
+ HAVE_LIBCRYPTO := yes
+ SYS_LIBCRYPTO_CFLAGS := -DHAVE_LIBCRYPTO $(shell pkg-config --cflags libcrypto)
+@@ -113,7 +101,7 @@ SYS_CURL_CFLAGS += $(shell pkg-config --cflags openssl)
+ SYS_CURL_DEPS += $(shell pkg-config --libs openssl)
+ endif
+ endif
+-SYS_CURL_DEPS += -lpthread -lrt
++SYS_CURL_DEPS += -lpthread
+ 
+ ifeq "$(shell pkg-config --exists x11 xext && echo yes)" "yes"
+ HAVE_X11 := yes
diff --git a/pkgs/applications/misc/mupdf/default.nix b/pkgs/applications/misc/mupdf/default.nix
index c1bc55b77c3c..75d8463cf7f8 100644
--- a/pkgs/applications/misc/mupdf/default.nix
+++ b/pkgs/applications/misc/mupdf/default.nix
@@ -1,5 +1,5 @@
-{ stdenv, lib, fetchurl, fetchpatch, pkgconfig
-, freetype, harfbuzz, openjpeg, jbig2dec, libjpeg
+{ stdenv, lib, fetchurl, fetchpatch, pkgconfig, freetype, harfbuzz, openjpeg
+, jbig2dec, libjpeg , darwin
 , enableX11 ? true, libX11, libXext, libXi, libXrandr
 , enableCurl ? true, curl, openssl
 , enableGL ? true, freeglut, mesa_glu
@@ -29,10 +29,13 @@ in stdenv.mkDerivation rec {
       url = "https://git.archlinux.org/svntogit/community.git/plain/trunk/0001-mupdf-openjpeg.patch?h=packages/mupdf&id=a910cd33a2b311712f83710dc042fbe80c104306";
       sha256 = "05i9v2ia586jyjqdb7g68ss4vkfwgp6cwhagc8zzggsba83azyqk";
     })
+  ]
 
-    ./mupdf-1.12-shared_libs-1.patch
+  # Use shared libraries to decrease size
+  ++ stdenv.lib.optional (!stdenv.isDarwin) ./mupdf-1.12-shared_libs-1.patch
 
-  ];
+  ++ stdenv.lib.optional stdenv.isDarwin ./darwin.patch
+  ;
 
   postPatch = ''
     sed -i "s/__OPENJPEG__VERSION__/${openJpegVersion}/" source/fitz/load-jpx.c
@@ -43,7 +46,12 @@ in stdenv.mkDerivation rec {
   buildInputs = [ freetype harfbuzz openjpeg jbig2dec libjpeg freeglut mesa_glu ]
                 ++ lib.optionals enableX11 [ libX11 libXext libXi libXrandr ]
                 ++ lib.optionals enableCurl [ curl openssl ]
-                ++ lib.optionals enableGL [ freeglut mesa_glu ];
+                ++ lib.optionals enableGL (
+                  if stdenv.isDarwin then
+                    with darwin.apple_sdk.frameworks; [ GLUT OpenGL ]
+                  else
+                    [ freeglut mesa_glu ])
+                ;
   outputs = [ "bin" "dev" "out" "man" "doc" ];
 
   preConfigure = ''
@@ -86,6 +94,6 @@ in stdenv.mkDerivation rec {
     description = "Lightweight PDF, XPS, and E-book viewer and toolkit written in portable C";
     license = licenses.agpl3Plus;
     maintainers = with maintainers; [ viric vrthra fpletz ];
-    platforms = platforms.linux;
+    platforms = platforms.unix;
   };
 }