Install libm.a as linker script [BZ #20539]
Commit Message
2016-12-09 18:38 GMT+03:00 Andreas Schwab <schwab@suse.de>:
> On Dez 07 2016, Andrew Senkevich <andrew.n.senkevich@gmail.com> wrote:
>
>> +$(inst_libdir)/libm.a: $(common-objpfx)format.lds \
>> + $(libm) \
>> + $(libmvec) \
>> + $(+force)
>> + (echo '/* GNU ld script'; echo '*/';\
>> + cat $<; \
>> + echo 'GROUP ( $(libdir)/libm-$(lib-version).a $(libdir)/libmvec.a )' \
>> + ) > $@.new
>> + cp $(objpfx)libm.a $(inst_libdir)/libm-$(lib-version).a
>
> A rule should only create the target, nothing else.
Is the following update Ok?
before-compile += $(objpfx)libm-test.c
@@ -208,6 +207,10 @@ $(objpfx)libm-test.stmp: $(ulps-file)
libm-test.inc gen-libm-test.pl \
$(PERL) gen-libm-test.pl -u $< -o "$(objpfx)"
$(SHELL) gen-libm-have-vector-test.sh > $(objpfx)libm-have-vector-test.h
@echo > $@
+
+$(objpfx)copy-libm.a.stmp: $(objpfx)libm.a
+ cp $(objpfx)libm.a $(inst_libdir)/libm-$(lib-version).a
+ @echo > $@
endif
libm-test-fast-math-cflags = -fno-builtin -D__FAST_MATH__ -DTEST_FAST_MATH
--
WBR,
Andrew
Comments
On Dez 09 2016, Andrew Senkevich <andrew.n.senkevich@gmail.com> wrote:
> 2016-12-09 18:38 GMT+03:00 Andreas Schwab <schwab@suse.de>:
>> On Dez 07 2016, Andrew Senkevich <andrew.n.senkevich@gmail.com> wrote:
>>
>>> +$(inst_libdir)/libm.a: $(common-objpfx)format.lds \
>>> + $(libm) \
>>> + $(libmvec) \
>>> + $(+force)
>>> + (echo '/* GNU ld script'; echo '*/';\
>>> + cat $<; \
>>> + echo 'GROUP ( $(libdir)/libm-$(lib-version).a $(libdir)/libmvec.a )' \
>>> + ) > $@.new
>>> + cp $(objpfx)libm.a $(inst_libdir)/libm-$(lib-version).a
>>
>> A rule should only create the target, nothing else.
>
> Is the following update Ok?
There is no neeed to go through a stamp file, just depend on
$(inst_libdir)/libm-$(lib-version).a, and add a rule which copies
$(objpfx)libm.a there.
Andreas.
@@ -144,14 +144,13 @@ $(inst_libdir)/libm.so: $(common-objpfx)format.lds \
mv -f $@.new $@
$(inst_libdir)/libm.a: $(common-objpfx)format.lds \
- $(libm) \
- $(libmvec) \
+ $(objpfx)copy-libm.a.stmp \
+ $(objpfx)../mathvec/libmvec.a \
$(+force)
(echo '/* GNU ld script'; echo '*/';\
cat $<; \
echo 'GROUP ( $(libdir)/libm-$(lib-version).a $(libdir)/libmvec.a )' \
) > $@.new
- cp $(objpfx)libm.a $(inst_libdir)/libm-$(lib-version).a
mv -f $@.new $@
endif
@@ -193,7 +192,7 @@ libm-vec-test-wrappers = $(addsuffix -wrappers,
$(libm-vec-tests))
test-extras += $(libm-vec-test-wrappers)
extra-test-objs += $(addsuffix .o, $(libm-vec-test-wrappers))
libm-tests-generated = libm-test-ulps.h libm-have-vector-test.h libm-test.c
-generated += $(libm-tests-generated) libm-test.stmp
+generated += $(libm-tests-generated) libm-test.stmp copy-libm.a.stmp
# This is needed for dependencies