From 039cb6291de0358fe89fb455c219a0ab891060be Mon Sep 17 00:00:00 2001 From: Bastian Köcher Date: Fri, 1 Dec 2017 13:21:54 +0100 Subject: renderdoc: Fixes build with missing SWIG_PACKAGE --- .../graphics/renderdoc/custom_swig.patch | 32 ++++++++++++++++++++++ pkgs/applications/graphics/renderdoc/default.nix | 30 ++++++++++++++++++-- 2 files changed, 60 insertions(+), 2 deletions(-) create mode 100644 pkgs/applications/graphics/renderdoc/custom_swig.patch (limited to 'pkgs/applications/graphics') diff --git a/pkgs/applications/graphics/renderdoc/custom_swig.patch b/pkgs/applications/graphics/renderdoc/custom_swig.patch new file mode 100644 index 000000000000..e6ed05ea97a5 --- /dev/null +++ b/pkgs/applications/graphics/renderdoc/custom_swig.patch @@ -0,0 +1,32 @@ +diff --git a/qrenderdoc/CMakeLists.txt b/qrenderdoc/CMakeLists.txt +index 2df9ffa5..66bafaba 100644 +--- a/qrenderdoc/CMakeLists.txt ++++ b/qrenderdoc/CMakeLists.txt +@@ -65,16 +65,6 @@ include(ExternalProject) + # Need bison for swig + find_package(BISON) + +-# Compile our custom SWIG that will do scoped/strong enum classes +-ExternalProject_Add(custom_swig +- # using an URL to a zip directly so we don't clone the history etc +- URL ${RENDERDOC_SWIG_PACKAGE} +- BUILD_IN_SOURCE 1 +- CONFIGURE_COMMAND ./autogen.sh > /dev/null 2>&1 +- COMMAND CC=${CMAKE_C_COMPILER} CXX=${CMAKE_CXX_COMPILER} ./configure --with-pcre=yes --prefix=${CMAKE_BINARY_DIR} > /dev/null +- BUILD_COMMAND $(MAKE) > /dev/null 2>&1 +- INSTALL_COMMAND $(MAKE) install > /dev/null 2>&1) +- + # Lastly find PySide 2, optionally, for Qt5 Python bindings + list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}") + +@@ -186,9 +176,8 @@ foreach(in ${swig_interfaces}) + get_filename_component(swig_file ${in} NAME_WE) + + add_custom_command(OUTPUT ${swig_file}_python.cxx ${swig_file}.py +- COMMAND ${CMAKE_BINARY_DIR}/bin/swig -v -Wextra -Werror -O -c++ -python -modern -modernargs -enumclass -fastunpack -py3 -builtin -I${CMAKE_CURRENT_SOURCE_DIR} -I${CMAKE_SOURCE_DIR}/renderdoc/api/replay -outdir ${CMAKE_CURRENT_BINARY_DIR} -o ${CMAKE_CURRENT_BINARY_DIR}/${swig_file}_python.cxx ${CMAKE_CURRENT_SOURCE_DIR}/${in} ++ COMMAND $ENV{NIXOS_CUSTOM_SWIG} -v -Wextra -Werror -O -c++ -python -modern -modernargs -enumclass -fastunpack -py3 -builtin -I${CMAKE_CURRENT_SOURCE_DIR} -I${CMAKE_SOURCE_DIR}/renderdoc/api/replay -outdir ${CMAKE_CURRENT_BINARY_DIR} -o ${CMAKE_CURRENT_BINARY_DIR}/${swig_file}_python.cxx ${CMAKE_CURRENT_SOURCE_DIR}/${in} + DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${in} +- DEPENDS custom_swig + DEPENDS ${RDOC_REPLAY_FILES} + DEPENDS ${QRD_INTERFACE_FILES}) + diff --git a/pkgs/applications/graphics/renderdoc/default.nix b/pkgs/applications/graphics/renderdoc/default.nix index 2a5bbb9401a4..2bd3ab89161f 100644 --- a/pkgs/applications/graphics/renderdoc/default.nix +++ b/pkgs/applications/graphics/renderdoc/default.nix @@ -1,8 +1,26 @@ { stdenv, fetchFromGitHub, cmake, pkgconfig , qtbase, qtx11extras, qtsvg, makeWrapper, python3, bison -, autoconf, automake, pcre, vulkan-loader, xorg +, pcre, vulkan-loader, xorg, autoreconfHook }: +let + custom_swig = stdenv.mkDerivation { + name = "renderdoc-custom-swig"; + src = fetchFromGitHub { + owner = "baldurk"; + repo = "swig"; + rev = "renderdoc-modified-1"; + sha256 = "1whymd3vamwnp4jqfc9asls3dw9wsdi21xhm1d2a4vx9nql8if1x"; + }; + + nativeBuildInputs = [ autoreconfHook pcre ]; + + autoreconfPhase = '' + patchShebangs autogen.sh + ./autogen.sh + ''; + }; +in stdenv.mkDerivation rec { name = "renderdoc-${version}"; version = "0.91"; @@ -17,7 +35,8 @@ stdenv.mkDerivation rec { buildInputs = [ qtbase qtsvg xorg.libpthreadstubs xorg.libXdmcp qtx11extras vulkan-loader ]; - nativeBuildInputs = [ cmake makeWrapper pkgconfig python3 bison autoconf automake pcre ]; + + nativeBuildInputs = [ cmake makeWrapper pkgconfig python3 bison ]; cmakeFlags = [ "-DBUILD_VERSION_HASH=${src.rev}" @@ -28,6 +47,7 @@ stdenv.mkDerivation rec { # TODO: use this instead of preConfigure once placeholders land #"-DVULKAN_LAYER_FOLDER=${placeholder out}/share/vulkan/implicit_layer.d/" ]; + preConfigure = '' cmakeFlags+=" -DVULKAN_LAYER_FOLDER=$out/share/vulkan/implicit_layer.d/" ''; @@ -41,8 +61,14 @@ stdenv.mkDerivation rec { ln -s $out/bin/.bin/renderdoccmd $out/bin/renderdoccmd wrapProgram $out/bin/renderdoccmd --suffix LD_LIBRARY_PATH : $out/lib --suffix LD_LIBRARY_PATH : ${vulkan-loader}/lib ''; + + # Set path to custom swig binary + NIXOS_CUSTOM_SWIG = "${custom_swig}/bin/swig"; + enableParallelBuilding = true; + patches = [ ./custom_swig.patch ]; + meta = with stdenv.lib; { description = "A single-frame graphics debugger"; homepage = https://renderdoc.org/; -- cgit 1.4.1 From c8c5b022ecdee0b58d29a4ac601830a252ee482c Mon Sep 17 00:00:00 2001 From: dywedir Date: Fri, 29 Dec 2017 20:54:44 +0200 Subject: feh: 2.22.2 -> 2.23 --- pkgs/applications/graphics/feh/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'pkgs/applications/graphics') diff --git a/pkgs/applications/graphics/feh/default.nix b/pkgs/applications/graphics/feh/default.nix index b447fa7810f4..478e9d2b4530 100644 --- a/pkgs/applications/graphics/feh/default.nix +++ b/pkgs/applications/graphics/feh/default.nix @@ -6,11 +6,11 @@ with stdenv.lib; stdenv.mkDerivation rec { name = "feh-${version}"; - version = "2.22.2"; + version = "2.23"; src = fetchurl { url = "https://feh.finalrewind.org/${name}.tar.bz2"; - sha256 = "1kcflv4jb4250g94nqn28i98xqvvci8w7vqpfr62gxlp16z1za05"; + sha256 = "18922zv8ckm82r1ap1yn7plbk6djpj02za2ahng58sjj2fw3rpqn"; }; outputs = [ "out" "man" "doc" ]; -- cgit 1.4.1 From 80b1d7ea434436fc00bf12e4b20f0b79cd1b6829 Mon Sep 17 00:00:00 2001 From: Will Dietz Date: Fri, 29 Dec 2017 18:42:19 -0600 Subject: leocad: 17.02 -> 17.07 --- pkgs/applications/graphics/leocad/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'pkgs/applications/graphics') diff --git a/pkgs/applications/graphics/leocad/default.nix b/pkgs/applications/graphics/leocad/default.nix index 5f27cb446994..6387a3e3c1b3 100644 --- a/pkgs/applications/graphics/leocad/default.nix +++ b/pkgs/applications/graphics/leocad/default.nix @@ -7,13 +7,13 @@ set the variable LEOCAD_LIB=/path/to/libs/ or use option -l /path/to/libs/ stdenv.mkDerivation rec { name = "leocad-${version}"; - version = "17.02"; + version = "17.07"; src = fetchFromGitHub { owner = "leozide"; repo = "leocad"; rev = "v${version}"; - sha256 = "0d7l2il6r4swnmrmaf1bsrgpjgai5xwhwk2mkpcsddnk59790mmc"; + sha256 = "1j361pvxywi4nb2alhnnd4qpqrpg6503gbi17cadcdi434gbqbsd"; }; nativeBuildInputs = [ qmake4Hook ]; -- cgit 1.4.1 From 022ead1f542f18bd856f9d5cbe85d39e229e10b4 Mon Sep 17 00:00:00 2001 From: Yegor Timoshenko Date: Sat, 30 Dec 2017 01:02:04 +0000 Subject: leocad: only builds on Linux (hardcoded into qmake project) --- pkgs/applications/graphics/leocad/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'pkgs/applications/graphics') diff --git a/pkgs/applications/graphics/leocad/default.nix b/pkgs/applications/graphics/leocad/default.nix index 6387a3e3c1b3..4b5c4517deab 100644 --- a/pkgs/applications/graphics/leocad/default.nix +++ b/pkgs/applications/graphics/leocad/default.nix @@ -26,6 +26,6 @@ stdenv.mkDerivation rec { description = "CAD program for creating virtual LEGO models"; homepage = http://www.leocad.org/; license = licenses.gpl2; - inherit (qt4.meta) platforms; + platforms = platforms.linux; }; } -- cgit 1.4.1