From c9ef365954d380c2b1a262a27f0b8508f7c150f8 Mon Sep 17 00:00:00 2001 From: Jakub Bogusz Date: Tue, 28 Jan 2014 21:07:24 +0100 Subject: [PATCH] - more dynamic fixes (x86_64 builds now) --- dietlibc-dynamic.patch | 48 ++++++++++++++++++++++++++++++++++++++++++ dietlibc.spec | 3 +++ 2 files changed, 51 insertions(+) diff --git a/dietlibc-dynamic.patch b/dietlibc-dynamic.patch index d4a9f39..2bf946c 100644 --- a/dietlibc-dynamic.patch +++ b/dietlibc-dynamic.patch @@ -23,3 +23,51 @@ #include "../syscalls.s/open.S" #include "../syscalls.s/pause.S" #include "../syscalls.s/personality.S" +--- dietlibc-0.33/x86_64/clock_gettime.S.orig 2012-01-26 07:19:31.000000000 +0100 ++++ dietlibc-0.33/x86_64/clock_gettime.S 2014-01-28 20:34:23.670685222 +0100 +@@ -11,9 +11,16 @@ + .L1: + push %rsi + push %rdi ++#ifdef __PIC__ ++ movq __vdso@GOTPCREL(%rip), %rax ++ movq (%rax),%rdi ++ movq funcname@GOTPCREL(%rip), %rsi ++ call vdso_dlsym@PLT ++#else + movq __vdso(%rip),%rdi + movq $funcname, %rsi + call vdso_dlsym ++#endif + pop %rdi + pop %rsi + jmp .L2 +--- dietlibc-0.33/x86_64/gettimeofday.S.orig 2012-01-24 19:24:30.000000000 +0100 ++++ dietlibc-0.33/x86_64/gettimeofday.S 2014-01-28 20:35:10.746157117 +0100 +@@ -11,9 +11,16 @@ + .L1: + push %rsi + push %rdi ++#ifdef __PIC__ ++ movq __vdso@GOTPCREL(%rip), %rax ++ movq (%rax),%rdi ++ movq funcname@GOTPCREL(%rip), %rsi ++ call vdso_dlsym@PLT ++#else + movq __vdso(%rip),%rdi + movq $funcname, %rsi + call vdso_dlsym ++#endif + pop %rdi + pop %rsi + jmp .L2 +--- dietlibc-0.33/arm/dyn_syscalls.S.orig 2012-01-24 19:24:24.000000000 +0100 ++++ dietlibc-0.33/arm/dyn_syscalls.S 2014-01-28 20:58:27.842943864 +0100 +@@ -104,7 +104,6 @@ + #include "../syscalls.s/n_sigprocmask.S" + #include "../syscalls.s/n_sigsuspend.S" + #include "../syscalls.s/nanosleep.S" +-#include "../syscalls.s/nice.S" + #include "../syscalls.s/open.S" + #include "../syscalls.s/pause.S" + #include "../syscalls.s/personality.S" diff --git a/dietlibc.spec b/dietlibc.spec index 9c5406f..cee5767 100644 --- a/dietlibc.spec +++ b/dietlibc.spec @@ -130,6 +130,9 @@ statyczne. %{__sed} -i -e '/CFLAGS/ s/-Wextra//' Makefile %endif +# there is unconditional nice.c already; __nice.c breaks x86_64 build +%{__rm} lib/__nice.c + %build export OPTFLAGS="%{rpmcflags}%{?with_ssp: -fno-stack-protector} -fno-strict-aliasing -Wa,--noexecstack" CC="%{__cc}" -- 2.44.0