You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
61 lines
2.8 KiB
61 lines
2.8 KiB
Allows testing of AVX512 changes in a chroot (normally as root) |
|
without build issues. |
|
|
|
commit d7e06450b9d730d7b62ba52f611585810fa902df |
|
Author: Carlos O'Donell <carlos@redhat.com> |
|
Date: Tue Jul 16 17:55:43 2013 -0400 |
|
|
|
BZ #15711: Avoid circular dependency for syscall.h |
|
|
|
The generated header is compiled with `-ffreestanding' to avoid any |
|
circular dependencies against the installed implementation headers. |
|
Such a dependency would require the implementation header to be |
|
installed before the generated header could be built (See bug 15711). |
|
In current practice the generated header dependencies do not include |
|
any of the implementation headers removed by the use of `-ffreestanding'. |
|
|
|
--- |
|
|
|
2013-07-15 Carlos O'Donell <carlos@redhat.com> |
|
|
|
[BZ #15711] |
|
* sysdeps/unix/sysv/linux/Makefile ($(objpfx)bits/syscall%h): |
|
Avoid system header dependency with -ffreestanding. |
|
($(objpfx)bits/syscall%d): Likewise. |
|
|
|
diff --git a/sysdeps/unix/sysv/linux/Makefile b/sysdeps/unix/sysv/linux/Makefile |
|
index f580635..94916a2 100644 |
|
--- a/sysdeps/unix/sysv/linux/Makefile |
|
+++ b/sysdeps/unix/sysv/linux/Makefile |
|
@@ -50,6 +50,13 @@ tests += tst-clone |
|
# be the condition for those options to use in a C #if condition. |
|
# abi-includes may be defined to a list of headers to include |
|
# in the generated header, if the default does not suffice. |
|
+# |
|
+# The generated header is compiled with `-ffreestanding' to avoid any |
|
+# circular dependencies against the installed implementation headers. |
|
+# Such a dependency would require the implementation header to be |
|
+# installed before the generated header could be built (See bug 15711). |
|
+# In current practice the generated header dependencies do not include |
|
+# any of the implementation headers removed by the use of `-ffreestanding'. |
|
|
|
$(objpfx)bits/syscall%h $(objpfx)bits/syscall%d: ../sysdeps/unix/sysv/linux/sys/syscall.h |
|
$(make-target-directory) |
|
@@ -64,7 +71,7 @@ $(objpfx)bits/syscall%h $(objpfx)bits/syscall%d: ../sysdeps/unix/sysv/linux/sys/ |
|
echo ''; \ |
|
$(if $(abi-variants), \ |
|
$(foreach v,$(abi-variants),\ |
|
- $(CC) -E -MD -MP -MF $(@:.h=.d)-t$(v) -MT '$(@:.d=.h) $(@:.h=.d)' \ |
|
+ $(CC) -ffreestanding -E -MD -MP -MF $(@:.h=.d)-t$(v) -MT '$(@:.d=.h) $(@:.h=.d)' \ |
|
-x c $(sysincludes) $< $(abi-$(v)-options) \ |
|
-D_LIBC -dM | \ |
|
sed -n 's@^#define __NR_\([^ ]*\) .*$$@#define SYS_\1 __NR_\1@p' | \ |
|
@@ -75,7 +82,7 @@ $(objpfx)bits/syscall%h $(objpfx)bits/syscall%d: ../sysdeps/unix/sysv/linux/sys/ |
|
$(if $(abi-$(v)-condition),echo '#endif';) \ |
|
rm -f $(@:.d=.h).new$(v); \ |
|
), \ |
|
- $(CC) -E -MD -MP -MF $(@:.h=.d)-t$(v) -MT '$(@:.d=.h) $(@:.h=.d)' \ |
|
+ $(CC) -ffreestanding -E -MD -MP -MF $(@:.h=.d)-t$(v) -MT '$(@:.d=.h) $(@:.h=.d)' \ |
|
-x c $(sysincludes) $< \ |
|
-D_LIBC -dM | \ |
|
sed -n 's@^#define __NR_\([^ ]*\) .*$$@#define SYS_\1 __NR_\1@p' | \
|
|
|