Re: Bug#184446: marked as done (libstdc++5-dev has i486 specific asm code)
Daniel Jacobowitz writes:
> On Sun, Apr 13, 2003 at 02:03:03AM -0500, Debian Bug Tracking System wrote:
> > * On i386, build libstdc++ optimized for i486 and above. The library
> > in /usr/lib is built for i386. Closes: #184446, #185662.
>
> Does it really? The i486-specific code was in a _header_, not in the
> library.
maybe the solution is ugly, but it should work. the macros are
predefined by gcc. more ugly things are used in debian/rules2 to make
sure that the libstdc++ build for i486 uses the i486 header, although
the compiler is built for i386.
gcc-3.2 always used the i486 header. so maybe you are right, that the
same workaround needs to be applied to the 3.2 header.
debian/rules.d/binary-libstdcxx.mk:
: # construct an atomicity.h file suiteable for i386 and above.
( \
echo '// Debian generated file bits/atomicity.h'; \
echo '#ifndef _DEBIAN_BITS_ATOMICITY_H'; \
echo '#define _DEBIAN_BITS_ATOMICITY_H 1'; \
echo '#if defined(__i486) || defined(__i586) || defined(__i686) || defined(__k6) || defined(__athlon) || defined(__pentium4) || defined(_x86_64)'; \
cat $(srcdir)/libstdc++-v3/config/cpu/i486/atomicity.h; \
echo '#else'; \
cat $(srcdir)/libstdc++-v3/config/cpu/generic/atomicity.h; \
echo '#endif /* _DEBIAN_BITS_ATOMICITY_H */'; \
) > $(d_dev)/$(cxx_inc_dir)/$(DEB_TARGET_GNU_TYPE)/bits/atomicity.h
Reply to: