From 801ce7d5fb724f52e73c0654a312a58f2e92f4ca Mon Sep 17 00:00:00 2001 From: Karn Kallio Date: Sat, 25 Dec 2010 15:13:07 +0000 Subject: [PATCH] Add Concurrent Clean to NixPkgs. svn path=/nixpkgs/trunk/; revision=25276 --- ...port-do-not-rebuild-equal-timestamps.patch | 17 +++++++ pkgs/development/compilers/clean/default.nix | 50 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 3 files changed, 69 insertions(+) create mode 100644 pkgs/development/compilers/clean/chroot-build-support-do-not-rebuild-equal-timestamps.patch create mode 100644 pkgs/development/compilers/clean/default.nix diff --git a/pkgs/development/compilers/clean/chroot-build-support-do-not-rebuild-equal-timestamps.patch b/pkgs/development/compilers/clean/chroot-build-support-do-not-rebuild-equal-timestamps.patch new file mode 100644 index 000000000000..3e0fbe6b996d --- /dev/null +++ b/pkgs/development/compilers/clean/chroot-build-support-do-not-rebuild-equal-timestamps.patch @@ -0,0 +1,17 @@ +The clean command line compiler clm checks modules for freshness by comparing timestamps. +However, in chroot builds all files installed have the same timestamp. This leads to clm +trying to rebuild the library modules distributed with the Clean install every time a user +compiles any file. This patch changes the freshness check to use less than instead of less +than or equal to in order to avoid this. + +--- clean-upstream/src/tools/clm/clm.c 2010-12-10 06:12:17.000000000 -0430 ++++ clean/src/tools/clm/clm.c 2010-12-25 10:29:09.840675925 -0430 +@@ -250,7 +250,7 @@ + || (t1.dwHighDateTime==t2.dwHighDateTime && (unsigned)(t1.dwLowDateTime)<=(unsigned)(t2.dwLowDateTime))) + #else + typedef unsigned long FileTime; +-# define FILE_TIME_LE(t1,t2) (t1<=t2) ++# define FILE_TIME_LE(t1,t2) (t1