forked from mirrors/nixpkgs
tix: fix build on darwin
This commit is contained in:
parent
a86e1f5dac
commit
56d9b43336
|
@ -1,4 +1,10 @@
|
||||||
{ lib, stdenv, fetchurl, tcl, tk, fetchpatch } :
|
{ lib
|
||||||
|
, stdenv
|
||||||
|
, fetchurl
|
||||||
|
, fetchpatch
|
||||||
|
, tcl
|
||||||
|
, tk
|
||||||
|
}:
|
||||||
|
|
||||||
tcl.mkTclDerivation {
|
tcl.mkTclDerivation {
|
||||||
version = "8.4.3";
|
version = "8.4.3";
|
||||||
|
@ -13,6 +19,8 @@ tcl.mkTclDerivation {
|
||||||
url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/dev-tcltk/tix/files/tix-8.4.3-tcl8.5.patch?id=56bd759df1d0c750a065b8c845e93d5dfa6b549d";
|
url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/dev-tcltk/tix/files/tix-8.4.3-tcl8.5.patch?id=56bd759df1d0c750a065b8c845e93d5dfa6b549d";
|
||||||
sha256 = "0wzqmcxxq0rqpnjgxz10spw92yhfygnlwv0h8pcx2ycnqiljz6vj";
|
sha256 = "0wzqmcxxq0rqpnjgxz10spw92yhfygnlwv0h8pcx2ycnqiljz6vj";
|
||||||
})
|
})
|
||||||
|
# Remove duplicated definition of XLowerWindow
|
||||||
|
./duplicated-xlowerwindow.patch
|
||||||
] ++ lib.optional (tcl.release == "8.6")
|
] ++ lib.optional (tcl.release == "8.6")
|
||||||
(fetchpatch {
|
(fetchpatch {
|
||||||
name = "tix-8.4.3-tcl8.6.patch";
|
name = "tix-8.4.3-tcl8.6.patch";
|
||||||
|
|
49
pkgs/development/libraries/tix/duplicated-xlowerwindow.patch
Normal file
49
pkgs/development/libraries/tix/duplicated-xlowerwindow.patch
Normal file
|
@ -0,0 +1,49 @@
|
||||||
|
This is duplicated code from Tk.
|
||||||
|
It causes errors during build since XLowerWindow is not only a function but also "defined" in tkIntXlibDecls.h.
|
||||||
|
|
||||||
|
See
|
||||||
|
https://github.com/tcltk/tk/blob/71dcaddc69769cbd3e2c4b5edb5810f974579527/generic/tkIntXlibDecls.h#L396
|
||||||
|
and
|
||||||
|
https://github.com/tcltk/tk/blob/71dcaddc69769cbd3e2c4b5edb5810f974579527/generic/tkIntXlibDecls.h#L1487
|
||||||
|
|
||||||
|
--- a/unix/tixUnixWm.c 2005-03-25 13:15:53.000000000 -0700
|
||||||
|
+++ b/unix/tixUnixWm.c 2021-03-20 07:31:52.000000000 -0700
|
||||||
|
@@ -24,38 +24,3 @@
|
||||||
|
{
|
||||||
|
return TCL_OK;
|
||||||
|
}
|
||||||
|
-
|
||||||
|
-#ifdef MAC_OSX_TK
|
||||||
|
-#include "tkInt.h"
|
||||||
|
-/*
|
||||||
|
- *----------------------------------------------------------------------
|
||||||
|
- *
|
||||||
|
- * XLowerWindow --
|
||||||
|
- *
|
||||||
|
- * Change the stacking order of a window.
|
||||||
|
- *
|
||||||
|
- * Results:
|
||||||
|
- * None.
|
||||||
|
- *
|
||||||
|
- * Side effects:
|
||||||
|
- * Changes the stacking order of the specified window.
|
||||||
|
- *
|
||||||
|
- *----------------------------------------------------------------------
|
||||||
|
- */
|
||||||
|
-
|
||||||
|
-int
|
||||||
|
-XLowerWindow(
|
||||||
|
- Display* display, /* Display. */
|
||||||
|
- Window window) /* Window. */
|
||||||
|
-{
|
||||||
|
- TkWindow *winPtr = *((TkWindow **) window);
|
||||||
|
-
|
||||||
|
- display->request++;
|
||||||
|
- if (Tk_IsTopLevel(winPtr) && !Tk_IsEmbedded(winPtr)) {
|
||||||
|
- TkWmRestackToplevel(winPtr, Below, NULL);
|
||||||
|
- } else {
|
||||||
|
- /* TODO: this should generate damage */
|
||||||
|
- }
|
||||||
|
- return 0;
|
||||||
|
-}
|
||||||
|
-#endif
|
Loading…
Reference in a new issue