From 577e785181be148e46b067c57efcaa78448e4e09 Mon Sep 17 00:00:00 2001 From: Giulio Cocconi Date: Sun, 26 May 2024 10:05:01 +0200 Subject: [PATCH 1/2] gnu-smalltalk: fix-build --- .../compilers/gnu-smalltalk/default.nix | 2 ++ .../compilers/gnu-smalltalk/fix_mkorder.patch | 21 +++++++++++++++++++ 2 files changed, 23 insertions(+) create mode 100644 pkgs/development/compilers/gnu-smalltalk/fix_mkorder.patch diff --git a/pkgs/development/compilers/gnu-smalltalk/default.nix b/pkgs/development/compilers/gnu-smalltalk/default.nix index 1caf96c715cb..de54a49c7fd1 100644 --- a/pkgs/development/compilers/gnu-smalltalk/default.nix +++ b/pkgs/development/compilers/gnu-smalltalk/default.nix @@ -25,6 +25,8 @@ in stdenv.mkDerivation rec { sha256 = "1k2ssrapfzhngc7bg1zrnd9n2vyxp9c9m70byvsma6wapbvib6l1"; }; + patches = [ ./fix_mkorder.patch ]; + # The dependencies and their justification are explained at # http://smalltalk.gnu.org/download nativeBuildInputs = [ pkg-config ]; diff --git a/pkgs/development/compilers/gnu-smalltalk/fix_mkorder.patch b/pkgs/development/compilers/gnu-smalltalk/fix_mkorder.patch new file mode 100644 index 000000000000..7b6fae2d5f03 --- /dev/null +++ b/pkgs/development/compilers/gnu-smalltalk/fix_mkorder.patch @@ -0,0 +1,21 @@ +--- a/packages/gtk/mkorder.awk ++++ b/packages/gtk/mkorder.awk +@@ -33,6 +33,9 @@ + paths[1] = "." + n_paths = 1 + n_prefixes = split(_prefixes, prefixes) ++ ++ ignored_files = [ "glib/gwin32.h" ] ++ + split(_libs, libs) + split(_files, files) + for (i = 1; (i in libs); i++) +@@ -60,7 +63,7 @@ + + function process_file(name, file) { + file = find_file(name) +- if (file in processed) ++ if ((name in ignored_files) or (file in processed)) + return + processed[file] = 1 + if (file == "") From 7619c9693e023375b37c91a0634817189e711447 Mon Sep 17 00:00:00 2001 From: Giulio Cocconi Date: Sun, 26 May 2024 17:58:11 +0200 Subject: [PATCH 2/2] gnu-smalltalk: Numbered the patch --- .../{fix_mkorder.patch => 0000-fix_mkorder.patch} | 0 pkgs/development/compilers/gnu-smalltalk/default.nix | 6 +++++- 2 files changed, 5 insertions(+), 1 deletion(-) rename pkgs/development/compilers/gnu-smalltalk/{fix_mkorder.patch => 0000-fix_mkorder.patch} (100%) diff --git a/pkgs/development/compilers/gnu-smalltalk/fix_mkorder.patch b/pkgs/development/compilers/gnu-smalltalk/0000-fix_mkorder.patch similarity index 100% rename from pkgs/development/compilers/gnu-smalltalk/fix_mkorder.patch rename to pkgs/development/compilers/gnu-smalltalk/0000-fix_mkorder.patch diff --git a/pkgs/development/compilers/gnu-smalltalk/default.nix b/pkgs/development/compilers/gnu-smalltalk/default.nix index de54a49c7fd1..c6d910903120 100644 --- a/pkgs/development/compilers/gnu-smalltalk/default.nix +++ b/pkgs/development/compilers/gnu-smalltalk/default.nix @@ -25,7 +25,11 @@ in stdenv.mkDerivation rec { sha256 = "1k2ssrapfzhngc7bg1zrnd9n2vyxp9c9m70byvsma6wapbvib6l1"; }; - patches = [ ./fix_mkorder.patch ]; + patches = [ + # The awk script incorrectly parsed `glib/glib.h` and was trying to find `glib/gwin32.h`, + # that isn't included since we're building only for linux. + ./0000-fix_mkorder.patch + ]; # The dependencies and their justification are explained at # http://smalltalk.gnu.org/download