-
Notifications
You must be signed in to change notification settings - Fork 58
Implement ahc-ar
#649
Comments
Blocked by haskell/cabal#6823. So, for now, we can't name the custom |
Just figured it out; specifying |
@TerrorJack Which parts of |
Only the functionality used by |
@TerrorJack Right. Since we are deviating from Shall we deviate from the "original" archiving style w.r.t flags also? We know we always call I am also thinking: is there any good reason to keep the traditional Is that what you had in mind? |
@gkaracha Nope; what I had in mind is:
|
Is your feature request related to a problem? Please describe.
When using
ahc-cabal
to compile library components, it callsar
to make the static library archives from the object files. Later at link time,ahc-ld
would decode the objects in the archives before further linking logic.Relying on system
ar
introduces a hidden dependency on gnuar
; the defaultar
ondarwin
doesn't support the.rsp
files passed to it, which results in boot failures, as seen in #345. It's possible to workaround the issue by installing gnubinutils
ondarwin
, but that's a heavyweight change in the user environment we'd like to avoid.The more ideal solution is implementing a simple
ahc-ar
program and specify it as thear
program in theahc-cabal
default configuration flags. There are additional benefits besides fixingdarwin
support, see below.Describe the solution you'd like
ahc-ar
which recombines multiple object files into a single one, and output the combined object file as the "archive" file. Cabal doesn't care whether.a
is a real archive and it's going to be handled byahc-ld
anyway. This will increase some compile time in exchange for shorter link time.ahc-ld
and TH loader logic, handle.a
files just like regular.o
filesahc-cabal
useahc-ar
as the defaultar
programThe text was updated successfully, but these errors were encountered: