From 3f493ef624d33f023a714dd6a9ca3d1b6e6b3ef2 Mon Sep 17 00:00:00 2001 From: Marcus Overhagen Date: Sat, 17 Feb 2007 22:42:16 +0000 Subject: [PATCH] Force recreation of *.a archives to avoid build errors caused by stale dependencies after renaming or deleting object files. This will avoid link error like the one that was caused by the recent mesa update. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20148 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- build/jam/KernelRules | 3 +++ build/jam/OverriddenJamRules | 8 ++++++++ 2 files changed, 11 insertions(+) diff --git a/build/jam/KernelRules b/build/jam/KernelRules index ca0589844e..a7ba9ea487 100644 --- a/build/jam/KernelRules +++ b/build/jam/KernelRules @@ -154,5 +154,8 @@ rule KernelStaticLibraryObjects actions KernelStaticLibraryObjects { + # Force recreation of the archive to avoid build errors caused by + # stale dependencies after renaming or deleting object files. + $(RM) "$(1)" $(HAIKU_AR) -r "$(1)" "$(2)" ; } diff --git a/build/jam/OverriddenJamRules b/build/jam/OverriddenJamRules index ec964ffce4..e81a82800e 100644 --- a/build/jam/OverriddenJamRules +++ b/build/jam/OverriddenJamRules @@ -357,6 +357,14 @@ actions C++ $(C++) -c "$(2)" $(C++FLAGS) $(CCDEFS) $(CCHDRS) -o "$(1)" ; } +actions together Archive +{ + # Force recreation of the archive to avoid build errors caused by + # stale dependencies after renaming or deleting object files. + $(RM) $(<) + $(AR) $(<) $(>) +} + rule Library { local lib = $(1) ;