summaryrefslogtreecommitdiff
path: root/pkg/efivar
diff options
context:
space:
mode:
authorMichael Forney <mforney@mforney.org>2016-12-11 16:04:20 -0800
committerMichael Forney <mforney@mforney.org>2016-12-13 23:10:30 -0800
commit293f5a93b77d92fd65db7f3d0df654f102e46cfb (patch)
tree6ecd1170e3dd793862dd852814dc1b4cd5e44260 /pkg/efivar
parent9a506a6834df01a26795cea222b410f206efa9fa (diff)
Move to flat package hierarchy
Note to self: never try to move submodules again To migrate your existing submodules (more or less): set -x set -e mkdir .git/modules/pkg for old in */*/src ; do new="pkg/${old#*/}" if ! [ -f "$old/.git" ] || [ "${old%%/*}" = pkg ] ; then continue fi git -C ".git/modules/$old" config core.worktree "../../../../../$new" rmdir "$new" mv "$old" "$new" sed -e "s,$old,$new," "$new/.git" > "$new/.git.tmp" mv "$new/.git.tmp" "$new/.git" mkdir ".git/modules/${new%/src}" mv ".git/modules/$old" ".git/modules/$new" rm "${old%/src}"/*.ninja mv "${old%/src}"/*.tar.{gz,xz,bz2} "${new%/src}/" rmdir "${old%/src}" || true done sed -e 's,^\[submodule "[^/]*/,[submodule "pkg/,' .git/config > .git/config.tmp mv .git/config.tmp .git/config
Diffstat (limited to 'pkg/efivar')
-rw-r--r--pkg/efivar/.gitignore1
-rw-r--r--pkg/efivar/compat.h3
-rw-r--r--pkg/efivar/gen.rc36
-rw-r--r--pkg/efivar/patch/0001-Workaround-rename-of-linux-nvme.h.patch30
-rw-r--r--pkg/efivar/rev1
m---------pkg/efivar/src0
6 files changed, 71 insertions, 0 deletions
diff --git a/pkg/efivar/.gitignore b/pkg/efivar/.gitignore
new file mode 100644
index 00000000..012dc66e
--- /dev/null
+++ b/pkg/efivar/.gitignore
@@ -0,0 +1 @@
+/tools.ninja
diff --git a/pkg/efivar/compat.h b/pkg/efivar/compat.h
new file mode 100644
index 00000000..4f4842f7
--- /dev/null
+++ b/pkg/efivar/compat.h
@@ -0,0 +1,3 @@
+#ifndef __bswap_constant_16
+#define __bswap_constant_16(x) ((x)<<8&0xff00 | (x)>>8&0xff)
+#endif
diff --git a/pkg/efivar/gen.rc b/pkg/efivar/gen.rc
new file mode 100644
index 00000000..4dc6f8fd
--- /dev/null
+++ b/pkg/efivar/gen.rc
@@ -0,0 +1,36 @@
+cc src/guids.S '||' '$outdir'/^(guids.bin names.bin) ; with\
+ cflags '$cflags -I $outdir'
+
+cflags\
+ -D _GNU_SOURCE\
+ -include '$dir'/compat.h\
+ -I '$outdir'/include\
+ -I '$srcdir'/src/include/efivar
+
+{
+ include 'toolchain/$host_toolchain.ninja'
+ cflags\
+ -D EFIVAR_BUILD_ENVIRONMENT\
+ -I '$srcdir'/src/include/efivar
+ build '$outdir'/host-guid.c.o cc '$srcdir'/src/guid.c
+ exe makeguids src/makeguids.c host-guid.c.o
+} >tools.ninja ; subninja tools.ninja
+
+rule makeguids '$outdir/makeguids $in $out'
+outs='$outdir'/^(guids.bin names.bin guid-symbols.c include/efivar-guids.h)\
+ build $"outs makeguids '$srcdir'/src/guids.txt '|' '$outdir'/makeguids
+
+hdrs=(efiboot.h efiboot-creator.h efiboot-loadopt.h efivar.h efivar-dp.h)
+for(hdr in $hdrs) {
+ build '$outdir'/include/$hdr copy '$srcdir'/src/include/efivar/$hdr
+}
+phony headers '$outdir'/include/^($hdrs efivar-guids.h)
+
+lib libefiboot.a src/^(crc32.c creator.c disk.c gpt.c linux.c loadopt.c)
+lib libefivar.a -d '$outdir'/include/efivar-guids.h src/^(\
+ dp.c dp-acpi.c dp-hw.c dp-media.c dp-message.c\
+ efivarfs.c export.c guid.c guids.S.o\
+ lib.c vars.c\
+) '$outdir'/guid-symbols.c
+
+fetch git
diff --git a/pkg/efivar/patch/0001-Workaround-rename-of-linux-nvme.h.patch b/pkg/efivar/patch/0001-Workaround-rename-of-linux-nvme.h.patch
new file mode 100644
index 00000000..d18b779f
--- /dev/null
+++ b/pkg/efivar/patch/0001-Workaround-rename-of-linux-nvme.h.patch
@@ -0,0 +1,30 @@
+From 2b91a687fc2734ee53abfb02b115ea546f46c6f1 Mon Sep 17 00:00:00 2001
+From: Mike Gilbert <floppym@gentoo.org>
+Date: Thu, 14 Jan 2016 17:02:31 -0500
+Subject: [PATCH] Workaround rename of linux/nvme.h
+
+Bug: https://bugs.gentoo.org/571548
+---
+ src/linux.c | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/src/linux.c b/src/linux.c
+index b618cfd..9388cd3 100644
+--- a/src/linux.c
++++ b/src/linux.c
+@@ -22,7 +22,12 @@
+ #include <inttypes.h>
+ #include <limits.h>
+ #include <linux/ethtool.h>
++#include <linux/version.h>
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 4, 0)
++#include <linux/nvme_ioctl.h>
++#else
+ #include <linux/nvme.h>
++#endif
+ #include <linux/sockios.h>
+ #include <net/if.h>
+ #include <scsi/scsi.h>
+--
+2.9.0
+
diff --git a/pkg/efivar/rev b/pkg/efivar/rev
new file mode 100644
index 00000000..d00491fd
--- /dev/null
+++ b/pkg/efivar/rev
@@ -0,0 +1 @@
+1
diff --git a/pkg/efivar/src b/pkg/efivar/src
new file mode 160000
+Subproject 6478af5af7e2fc8fa2247a47b6db9f2a5dc9136