wxgtk32: init at 3.2.1

+163
+158
pkgs/development/libraries/wxwidgets/wxGTK32.nix
···
··· 1 + { lib 2 + , stdenv 3 + , expat 4 + , fetchFromGitHub 5 + , fetchurl 6 + , gnome2 7 + , gst_all_1 8 + , gtk3 9 + , libGL 10 + , libGLU 11 + , libSM 12 + , libXinerama 13 + , libXtst 14 + , libXxf86vm 15 + , libpng 16 + , libtiff 17 + , libjpeg_turbo 18 + , zlib 19 + , pcre2 20 + , pkg-config 21 + , xorgproto 22 + , compat28 ? false 23 + , compat30 ? true 24 + , unicode ? true 25 + , withMesa ? lib.elem stdenv.hostPlatform.system lib.platforms.mesaPlatforms 26 + , withWebKit ? stdenv.isDarwin 27 + , webkitgtk 28 + , setfile 29 + , AGL 30 + , Carbon 31 + , Cocoa 32 + , Kernel 33 + , QTKit 34 + , AVFoundation 35 + , AVKit 36 + , WebKit 37 + }: 38 + let 39 + catch = fetchFromGitHub { 40 + owner = "wxWidgets"; 41 + repo = "Catch"; 42 + rev = "5f5e4cecd1cafc85e109471356dec29e778d2160"; 43 + hash = "sha256-fB/E17tiAicAkq88Je/YFYohJ6EHJOO54oQaqiR/OzY="; 44 + }; 45 + 46 + nanosvg = fetchFromGitHub { 47 + owner = "wxWidgets"; 48 + repo = "nanosvg"; 49 + rev = "ccdb1995134d340a93fb20e3a3d323ccb3838dd0"; 50 + hash = "sha256-ymziU0NgGqxPOKHwGm0QyEdK/8jL/QYk5UdIQ3Tn8jw="; 51 + }; 52 + in 53 + stdenv.mkDerivation rec { 54 + pname = "wxwidgets"; 55 + version = "3.2.1"; 56 + 57 + src = fetchFromGitHub { 58 + owner = "wxWidgets"; 59 + repo = "wxWidgets"; 60 + rev = "v${version}"; 61 + hash = "sha256-k6td/8pF7ad7+gVm7L0jX79fHKwR7/qrOBpSFggyaI0="; 62 + }; 63 + 64 + nativeBuildInputs = [ pkg-config ]; 65 + 66 + buildInputs = [ 67 + gst_all_1.gst-plugins-base 68 + gst_all_1.gstreamer 69 + libpng 70 + libtiff 71 + libjpeg_turbo 72 + zlib 73 + pcre2 74 + ] ++ lib.optionals stdenv.isLinux [ 75 + gtk3 76 + libSM 77 + libXinerama 78 + libXtst 79 + libXxf86vm 80 + xorgproto 81 + ] 82 + ++ lib.optional withMesa libGLU 83 + ++ lib.optional (withWebKit && stdenv.isLinux) webkitgtk 84 + ++ lib.optional (withWebKit && stdenv.isDarwin) WebKit 85 + ++ lib.optionals stdenv.isDarwin [ 86 + expat 87 + setfile 88 + Carbon 89 + Cocoa 90 + Kernel 91 + QTKit 92 + AVFoundation 93 + AVKit 94 + WebKit 95 + ]; 96 + 97 + propagatedBuildInputs = lib.optional stdenv.isDarwin AGL; 98 + 99 + configureFlags = [ 100 + "--disable-precomp-headers" 101 + # This is the default option, but be explicit 102 + "--disable-monolithic" 103 + "--enable-mediactrl" 104 + "--with-nanosvg" 105 + (if compat28 then "--enable-compat28" else "--disable-compat28") 106 + (if compat30 then "--enable-compat30" else "--disable-compat30") 107 + ] ++ lib.optional unicode "--enable-unicode" 108 + ++ lib.optional withMesa "--with-opengl" 109 + ++ lib.optionals stdenv.isDarwin [ 110 + "--with-osx_cocoa" 111 + "--with-libiconv" 112 + ] ++ lib.optionals withWebKit [ 113 + "--enable-webview" 114 + "--enable-webviewwebkit" 115 + ]; 116 + 117 + SEARCH_LIB = "${libGLU.out}/lib ${libGL.out}/lib"; 118 + 119 + preConfigure = '' 120 + cp -r ${catch}/* 3rdparty/catch/ 121 + cp -r ${nanosvg}/* 3rdparty/nanosvg/ 122 + '' + lib.optionalString stdenv.isDarwin '' 123 + substituteInPlace configure \ 124 + --replace 'ac_cv_prog_SETFILE="/Developer/Tools/SetFile"' 'ac_cv_prog_SETFILE="${setfile}/bin/SetFile"' 125 + substituteInPlace configure \ 126 + --replace "-framework System" "-lSystem" 127 + ''; 128 + 129 + postInstall = " 130 + pushd $out/include 131 + ln -s wx-*/* . 132 + popd 133 + "; 134 + 135 + enableParallelBuilding = true; 136 + 137 + passthru = { 138 + inherit compat28 compat30 unicode; 139 + }; 140 + 141 + meta = with lib; { 142 + homepage = "https://www.wxwidgets.org/"; 143 + description = "A Cross-Platform C++ GUI Library"; 144 + longDescription = '' 145 + wxWidgets gives you a single, easy-to-use API for writing GUI applications 146 + on multiple platforms that still utilize the native platform's controls 147 + and utilities. Link with the appropriate library for your platform and 148 + compiler, and your application will adopt the look and feel appropriate to 149 + that platform. On top of great GUI functionality, wxWidgets gives you: 150 + online help, network programming, streams, clipboard and drag and drop, 151 + multithreading, image loading and saving in a variety of popular formats, 152 + database support, HTML viewing and printing, and much more. 153 + ''; 154 + license = licenses.wxWindows; 155 + maintainers = with maintainers; [ tfmoraes ]; 156 + platforms = platforms.unix; 157 + }; 158 + }
+5
pkgs/top-level/all-packages.nix
··· 22368 wxGTK31-gtk2 = wxGTK31.override { withGtk2 = true; }; 22369 wxGTK31-gtk3 = wxGTK31.override { withGtk2 = false; }; 22370 22371 wxSVG = callPackage ../development/libraries/wxSVG { 22372 wxGTK = wxGTK30-gtk3; 22373 inherit (darwin.apple_sdk.frameworks) Cocoa;
··· 22368 wxGTK31-gtk2 = wxGTK31.override { withGtk2 = true; }; 22369 wxGTK31-gtk3 = wxGTK31.override { withGtk2 = false; }; 22370 22371 + wxGTK32 = callPackage ../development/libraries/wxwidgets/wxGTK32.nix { 22372 + inherit (darwin.stubs) setfile; 22373 + inherit (darwin.apple_sdk.frameworks) AGL Carbon Cocoa Kernel QTKit AVFoundation AVKit WebKit; 22374 + }; 22375 + 22376 wxSVG = callPackage ../development/libraries/wxSVG { 22377 wxGTK = wxGTK30-gtk3; 22378 inherit (darwin.apple_sdk.frameworks) Cocoa;