uboot: (firmwareOdroidC2/C4) don't invoke patch tool, use patches = [] instead
https://github.com/NixOS/nixpkgs/blob/master/pkgs/stdenv/generic/setup.sh#L948 this can do it nicely. Signed-off-by: Anton Arapov <anton@deadbeef.mx>
This commit is contained in:
commit
56de2bcd43
30691 changed files with 3076956 additions and 0 deletions
33
pkgs/development/libraries/liboil/default.nix
Normal file
33
pkgs/development/libraries/liboil/default.nix
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
{lib, stdenv, fetchurl, pkg-config }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "liboil";
|
||||
version = "0.3.17";
|
||||
|
||||
src = fetchurl {
|
||||
url = "${meta.homepage}/download/liboil-${version}.tar.gz";
|
||||
sha256 = "0sgwic99hxlb1av8cm0albzh8myb7r3lpcwxfm606l0bkc3h4pqh";
|
||||
};
|
||||
|
||||
patches = [ ./x86_64-cpuid.patch ];
|
||||
|
||||
outputs = [ "out" "dev" "devdoc" ];
|
||||
outputBin = "dev"; # oil-bugreport
|
||||
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
|
||||
# fix "argb_paint_i386.c:53:Incorrect register `%rax' used with `l' suffix"
|
||||
# errors
|
||||
configureFlags = lib.optional stdenv.isDarwin "--build=x86_64";
|
||||
|
||||
# fixes a cast in inline asm: easier than patching
|
||||
buildFlags = lib.optional stdenv.isDarwin "CFLAGS=-fheinous-gnu-extensions";
|
||||
|
||||
meta = with lib; {
|
||||
description = "A library of simple functions that are optimized for various CPUs";
|
||||
homepage = "https://liboil.freedesktop.org";
|
||||
license = licenses.bsd2;
|
||||
maintainers = with maintainers; [ lovek323 ];
|
||||
platforms = platforms.all;
|
||||
};
|
||||
}
|
||||
38
pkgs/development/libraries/liboil/x86_64-cpuid.patch
Normal file
38
pkgs/development/libraries/liboil/x86_64-cpuid.patch
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
From 705916007fba0a845229a02dc6474cb523eff150 Mon Sep 17 00:00:00 2001
|
||||
From: David Schleef <ds@schleef.org>
|
||||
Date: Tue, 20 Jul 2010 21:05:26 +0000
|
||||
Subject: x86: Fix cpuid function on x86-64
|
||||
|
||||
Fixes: #28956.
|
||||
---
|
||||
diff --git a/liboil/liboilcpu-x86.c b/liboil/liboilcpu-x86.c
|
||||
index e7a1978..ef4d3f2 100644
|
||||
--- a/liboil/liboilcpu-x86.c
|
||||
+++ b/liboil/liboilcpu-x86.c
|
||||
@@ -162,13 +162,10 @@ get_cpuid (uint32_t op, uint32_t *a, uint32_t *b, uint32_t *c, uint32_t *d)
|
||||
static void
|
||||
get_cpuid (uint32_t op, uint32_t *a, uint32_t *b, uint32_t *c, uint32_t *d)
|
||||
{
|
||||
+ *a = op;
|
||||
__asm__ (
|
||||
- " pushq %%rbx\n"
|
||||
" cpuid\n"
|
||||
- " mov %%ebx, %%esi\n"
|
||||
- " popq %%rbx\n"
|
||||
- : "=a" (*a), "=S" (*b), "=c" (*c), "=d" (*d)
|
||||
- : "0" (op));
|
||||
+ : "+a" (*a), "=b" (*b), "=c" (*c), "=d" (*d));
|
||||
}
|
||||
#endif
|
||||
|
||||
@@ -185,7 +182,7 @@ oil_cpu_detect_cpuid (void)
|
||||
{
|
||||
uint32_t eax, ebx, ecx, edx;
|
||||
uint32_t level;
|
||||
- char vendor[13] = { 0 };
|
||||
+ char vendor[13+4] = { 0 };
|
||||
int ret;
|
||||
|
||||
oil_fault_check_enable ();
|
||||
--
|
||||
cgit v0.9.0.2-2-gbebe
|
||||
Loading…
Add table
Add a link
Reference in a new issue