Opened 13 years ago

Closed 12 years ago

Last modified 12 years ago

#545 closed bug (fixed)

Static library dependencies are not (always?) resolved

Reported by: axeld Owned by: bonefish
Priority: normal Milestone: R1
Component: Build System Version:
Keywords: Cc: diver
Blocked By: Blocking:
Has a Patch: no Platform: All

Description (last modified by bonefish)

When I change an object in a static library (like memory_manager.c in src/add-ons/kernel/drivers/graphics/common/), the libgraphicscommon.a is not rebuilt when I build a driver (for example radeon.driver or intel_extreme) that uses it.

Change History (5)

comment:1 Changed 13 years ago by diver

Cc: diver added

comment:2 Changed 12 years ago by bonefish

Description: modified (diff)
Platform: All

Is there a particular method to reproduce it? With hrev20147 it works for me at least:

$ jam -q radeon.driver
...patience...
...patience...
...found 2041 target(s)...
...updating 144 target(s)...
[...]
Link generated/objects/haiku/x86/release/add-ons/kernel/drivers/graphics/radeon/radeon.driver
Chmod1 generated/objects/haiku/x86/release/add-ons/kernel/drivers/graphics/radeon/radeon.driver
SetType1 generated/objects/haiku/x86/release/add-ons/kernel/drivers/graphics/radeon/radeon.driver
MimeSet1 generated/objects/haiku/x86/release/add-ons/kernel/drivers/graphics/radeon/radeon.driver
SetVersion1 generated/objects/haiku/x86/release/add-ons/kernel/drivers/graphics/radeon/radeon.driver
...updated 144 target(s)...
$ touch src/add-ons/kernel/drivers/graphics/common/memory_manager.c
$ jam -q radeon.driver
...patience...
...patience...
...found 2041 target(s)...
...updating 3 target(s)...
Cc generated/objects/haiku/x86/release/add-ons/kernel/drivers/graphics/common/memory_manager.o
Archive generated/objects/haiku/x86/release/add-ons/kernel/drivers/graphics/common/libgraphicscommon.a
Ranlib generated/objects/haiku/x86/release/add-ons/kernel/drivers/graphics/common/libgraphicscommon.a
Link generated/objects/haiku/x86/release/add-ons/kernel/drivers/graphics/radeon/radeon.driver
Chmod1 generated/objects/haiku/x86/release/add-ons/kernel/drivers/graphics/radeon/radeon.driver
SetType1 generated/objects/haiku/x86/release/add-ons/kernel/drivers/graphics/radeon/radeon.driver
MimeSet1 generated/objects/haiku/x86/release/add-ons/kernel/drivers/graphics/radeon/radeon.driver
SetVersion1 generated/objects/haiku/x86/release/add-ons/kernel/drivers/graphics/radeon/radeon.driver
...updated 3 target(s)...

comment:3 Changed 12 years ago by axeld

Resolution: fixed
Status: newclosed

After Marcus' changes (which remove the archive before building it), the bug seems to be gone.

comment:4 Changed 12 years ago by bonefish

I don't really see how the Marcus' change and this bug would be related. The reported problem is a dependency problem that apparently doesn't cause the action to be invoked in a case where it should. Marcus just changed what happens in the action (which wouldn't be invoked anyway).

comment:5 Changed 12 years ago by axeld

Probably, the only actual problem ever existed is that "ar" didn't update the archive correctly on changes. At least that would not affect the dependencies.

Note: See TracTickets for help on using tickets.