qt4: fix build on darwin (close #750)
This commit is contained in:
parent
8eea8bbd1f
commit
48a0d477db
@ -61,19 +61,23 @@ stdenv.mkDerivation rec {
|
|||||||
inherit gtk gdk_pixbuf;
|
inherit gtk gdk_pixbuf;
|
||||||
});
|
});
|
||||||
|
|
||||||
preConfigure =
|
preConfigure = ''
|
||||||
''
|
export LD_LIBRARY_PATH="`pwd`/lib:$LD_LIBRARY_PATH"
|
||||||
export LD_LIBRARY_PATH="`pwd`/lib:$LD_LIBRARY_PATH"
|
configureFlags+="
|
||||||
configureFlags+="
|
-docdir $out/share/doc/${name}
|
||||||
-docdir $out/share/doc/${name}
|
-plugindir $out/lib/qt4/plugins
|
||||||
-plugindir $out/lib/qt4/plugins
|
-importdir $out/lib/qt4/imports
|
||||||
-importdir $out/lib/qt4/imports
|
-examplesdir $out/share/doc/${name}/examples
|
||||||
-examplesdir $out/share/doc/${name}/examples
|
-demosdir $out/share/doc/${name}/demos
|
||||||
-demosdir $out/share/doc/${name}/demos
|
-datadir $out/share/${name}
|
||||||
-datadir $out/share/${name}
|
-translationdir $out/share/${name}/translations
|
||||||
-translationdir $out/share/${name}/translations
|
"
|
||||||
"
|
'' + optionalString stdenv.isDarwin ''
|
||||||
'';
|
export CXX=clang++
|
||||||
|
export CC=clang
|
||||||
|
sed -i 's/QMAKE_CC = gcc/QMAKE_CC = clang/' mkspecs/common/g++-base.conf
|
||||||
|
sed -i 's/QMAKE_CXX = g++/QMAKE_CXX = clang++/' mkspecs/common/g++-base.conf
|
||||||
|
'';
|
||||||
|
|
||||||
prefixKey = "-prefix ";
|
prefixKey = "-prefix ";
|
||||||
configureFlags =
|
configureFlags =
|
||||||
@ -97,12 +101,10 @@ stdenv.mkDerivation rec {
|
|||||||
'';
|
'';
|
||||||
|
|
||||||
propagatedBuildInputs =
|
propagatedBuildInputs =
|
||||||
[ libXrender libXrandr libXinerama libXcursor libXext libXfixes
|
[ libXrender libXrandr libXinerama libXcursor libXext libXfixes libXv libXi
|
||||||
libXv libXi libSM
|
libSM zlib libpng openssl dbus.libs freetype fontconfig glib ]
|
||||||
]
|
|
||||||
++ optional (stdenv.lib.lists.elem stdenv.system stdenv.lib.platforms.mesaPlatforms) mesa
|
++ optional (stdenv.lib.lists.elem stdenv.system stdenv.lib.platforms.mesaPlatforms) mesa
|
||||||
++ optional ((buildWebkit || buildMultimedia) && stdenv.isLinux ) alsaLib
|
++ optional ((buildWebkit || buildMultimedia) && stdenv.isLinux ) alsaLib
|
||||||
++ [ zlib libpng openssl dbus.libs freetype fontconfig glib ]
|
|
||||||
++ optionals (buildWebkit || buildMultimedia) [ gstreamer gst_plugins_base ];
|
++ optionals (buildWebkit || buildMultimedia) [ gstreamer gst_plugins_base ];
|
||||||
|
|
||||||
# The following libraries are only used in plugins
|
# The following libraries are only used in plugins
|
||||||
@ -117,6 +119,18 @@ stdenv.mkDerivation rec {
|
|||||||
# @vcunat has been unable to find a *reliable* fix
|
# @vcunat has been unable to find a *reliable* fix
|
||||||
enableParallelBuilding = false;
|
enableParallelBuilding = false;
|
||||||
|
|
||||||
|
NIX_CFLAGS_COMPILE = optionalString stdenv.isDarwin
|
||||||
|
"-I${glib}/include/glib-2.0 -I${glib}/lib/glib-2.0/include";
|
||||||
|
|
||||||
|
NIX_LDFLAGS = optionalString stdenv.isDarwin
|
||||||
|
"-lglib-2.0";
|
||||||
|
|
||||||
|
preBuild = optionalString stdenv.isDarwin ''
|
||||||
|
# resolve "extra qualification on member" error
|
||||||
|
sed -i 's/struct ::TabletProximityRec;/struct TabletProximityRec;/' \
|
||||||
|
src/gui/kernel/qt_cocoa_helpers_mac_p.h
|
||||||
|
'';
|
||||||
|
|
||||||
crossAttrs = let
|
crossAttrs = let
|
||||||
isMingw = stdenv.cross.config == "i686-pc-mingw32" ||
|
isMingw = stdenv.cross.config == "i686-pc-mingw32" ||
|
||||||
stdenv.cross.config == "x86_64-w64-mingw32";
|
stdenv.cross.config == "x86_64-w64-mingw32";
|
||||||
|
Loading…
x
Reference in New Issue
Block a user