Re: [PATCH] libc: Replace i386/sys/fenv.h symlink with an #include shim
Corinna Vinschen via Newlib <[email protected]>
| Newsgroups | gmane.comp.lib.newlib |
|---|---|
| Message-ID | <[email protected]> |
On Mar 23 15:38, Corinna Vinschen via Newlib wrote: > On Mar 13 19:11, David Macek via Newlib wrote: > > > > More to the point, how big of an issue would be to duplicate the file? > > > > > > I'm not hot on duplicating an identical file, it just raises maintenance > > > cost. I'm currently looking into a solution to share the file without > > > duplicating it. > > > > Something like a Makefile rule? > > A bit more complicated in fact. I added a new topic branch called > topic/shared_arch_headers to the upstream repo, containing a single > patch > > a8cd2849ed0c Add build mechanism to share common header files between > machines Update: I split this patch into seven patches and force pushed them onto topic/shared_arch_headers: 3835c015d09d Add build mechanism to share common header files between machines e8e95bf6436a configure.host: define shared ix86 and x86_64 directory 718f3955449f fenv: add missing declarations to x86 fenv.h a0d06f6c50ed fenv: Move shared x86 sys/fenv.h from x86_64 to shared_x86 c06e30d3d961 fenv: move shared x86 fenv.c to libm/machine/shared_x86 7803e212adcd fenv: drop Cygwin-specific implementation in favor of newlib code 3b79d7e1c31f Cygwin: don't call _feinitialise from _dll_crt0 Please fetch this change and reset your branch to this new state. This should very much simplify reviewing the changes. > This patch introduces a new way to share header files between > architectures, not share by other architectures. > > I tried to change this in a generic way. The fenv stuff in this patch > is basically just the first user of this new mechanism. > > As a side-effect, this also allows to remove Cygwin's own fenv code > finally, which was already pretty much the same as newlib's x86 code > anyway. The major exception was the call to _feinitialise in Cygwin DLL > startup. Given that the newlib fenv code is auto-initializing, this can > go away. Cygwin just has to keep the _feinitialise entry point for > backward compatibility for apps built in a certain time frame. > > David, Joel, anybody else interested in this stuff, please inspect > this patch on the topic/shared_arch_headers branch thorougly. I will > not push this quickly, since we're in the process of releasing Cygwin > 3.2.0. I don't want to destabilise the release without need :) Thanks, Corinna