aboutsummaryrefslogtreecommitdiff
path: root/meta-aarch64
diff options
context:
space:
mode:
authorFathi Boudra <fathi.boudra@linaro.org>2013-07-26 14:42:38 +0300
committerFathi Boudra <fathi.boudra@linaro.org>2013-07-26 14:42:38 +0300
commitc91e7ec2b36b5d604241a8a4efbf2189e109aad0 (patch)
tree76d1a558fca36823cf445a645a3755a5bcb09571 /meta-aarch64
parent630f76d615af8f0e02dd589f898649bf178ecc77 (diff)
aarch64: add libhugetlbfs recipe
Signed-off-by: Steve Capper <steve.capper@linaro.org> Signed-off-by: Fathi Boudra <fathi.boudra@linaro.org>
Diffstat (limited to 'meta-aarch64')
-rw-r--r--meta-aarch64/recipes-extended/libhugetlbfs/libhugetlbfs/cross-compile.patch77
-rw-r--r--meta-aarch64/recipes-extended/libhugetlbfs/libhugetlbfs/install64-fix.patch13
-rw-r--r--meta-aarch64/recipes-extended/libhugetlbfs/libhugetlbfs_2.16.bb41
3 files changed, 131 insertions, 0 deletions
diff --git a/meta-aarch64/recipes-extended/libhugetlbfs/libhugetlbfs/cross-compile.patch b/meta-aarch64/recipes-extended/libhugetlbfs/libhugetlbfs/cross-compile.patch
new file mode 100644
index 00000000..f38a4b03
--- /dev/null
+++ b/meta-aarch64/recipes-extended/libhugetlbfs/libhugetlbfs/cross-compile.patch
@@ -0,0 +1,77 @@
+Index: git/Makefile
+===================================================================
+--- git.orig/Makefile
++++ git/Makefile
+@@ -37,60 +37,60 @@ ARCH = $(shell uname -m | sed -e s/i.86/
+ CUSTOM_LDSCRIPTS = yes
+
+ ifeq ($(ARCH),ppc64)
+-CC64 = gcc -m64
++CC64 = $(CC) -m64
+ ELF64 = elf64ppc
+ TMPLIB64 = lib64
+ TMPLIB32 = lib
+ ifneq ($(BUILDTYPE),NATIVEONLY)
+-CC32 = gcc -m32
++CC32 = $(CC) -m32
+ ELF32 = elf32ppclinux
+ endif
+ else
+ ifeq ($(ARCH),ppc)
+-CC32 = gcc -m32
++CC32 = $(CC) -m32
+ ELF32 = elf32ppclinux
+ TMPLIB32 = lib
+ else
+ ifeq ($(ARCH),armv7l)
+-CC32 = gcc
++CC32 = $(CC)
+ TMPLIB32 = lib
+ ELF32 += armelf_linux_eabi
+ CUSTOM_LDSCRIPTS = no
+ else
+ ifeq ($(ARCH),aarch64)
+-CC64 = gcc
++CC64 = $(CC)
+ ELF64 = aarch64elf_linux
+ TMPLIB64 = lib64
+ CUSTOM_LDSCRIPTS = no
+ else
+ ifeq ($(ARCH),i386)
+-CC32 = gcc
++CC32 = $(CC)
+ ELF32 = elf_i386
+ TMPLIB32 = lib
+ else
+ ifeq ($(ARCH),x86_64)
+-CC64 = gcc -m64
++CC64 = $(CC) -m64
+ ELF64 = elf_x86_64
+ TMPLIB64 = lib64
+ TMPLIB32 = lib
+ ifneq ($(BUILDTYPE),NATIVEONLY)
+-CC32 = gcc -m32
++CC32 = $(CC) -m32
+ ELF32 = elf_i386
+ endif
+ else
+ ifeq ($(ARCH),ia64)
+-CC64 = gcc
++CC64 = $(CC)
+ TMPLIB64 = lib64
+ CFLAGS += -DNO_ELFLINK
+ else
+ ifeq ($(ARCH),sparc64)
+-CC64 = gcc -m64
++CC64 = $(CC) -m64
+ TMPLIB64 = lib64
+ CFLAGS += -DNO_ELFLINK
+ else
+ ifeq ($(ARCH),s390x)
+-CC64 = gcc -m64
+-CC32 = gcc -m31
++CC64 = $(CC) -m64
++CC32 = $(CC) -m31
+ ELF32 = elf_s390
+ ELF64 = elf64_s390
+ TMPLIB64 = lib64
diff --git a/meta-aarch64/recipes-extended/libhugetlbfs/libhugetlbfs/install64-fix.patch b/meta-aarch64/recipes-extended/libhugetlbfs/libhugetlbfs/install64-fix.patch
new file mode 100644
index 00000000..8a229ff2
--- /dev/null
+++ b/meta-aarch64/recipes-extended/libhugetlbfs/libhugetlbfs/install64-fix.patch
@@ -0,0 +1,13 @@
+Index: git/tests/Makefile
+===================================================================
+--- git.orig/tests/Makefile
++++ git/tests/Makefile
+@@ -292,7 +292,7 @@ obj64/install:
+ $(INSTALL) -m 755 wrapper-utils.sh $(DESTDIR)$(INST_TESTSDIR64)/obj64
+ $(INSTALL) -m 755 $(HELPERS:%=obj64/%) $(DESTDIR)$(INST_TESTSDIR64)/obj64
+ $(INSTALL) -m 755 $(HELPER_LIBS:%=obj64/%) $(DESTDIR)$(INST_TESTSDIR64)/obj64
+- $(INSTALL) -m 755 $(TESTS_64:%=obj64/%) $(DESTDIR)$(INST_TESTSDIR64)/obj64
++# $(INSTALL) -m 755 $(TESTS_64:%=obj64/%) $(DESTDIR)$(INST_TESTSDIR64)/obj64
+ $(INSTALL) -m 755 run_tests.py $(DESTDIR)$(INST_TESTSDIR64)
+
+ install: $(OBJDIRS:%=%/install)
diff --git a/meta-aarch64/recipes-extended/libhugetlbfs/libhugetlbfs_2.16.bb b/meta-aarch64/recipes-extended/libhugetlbfs/libhugetlbfs_2.16.bb
new file mode 100644
index 00000000..a67eeff1
--- /dev/null
+++ b/meta-aarch64/recipes-extended/libhugetlbfs/libhugetlbfs_2.16.bb
@@ -0,0 +1,41 @@
+DESCRIPTION = " libhugetlbfs is a library which provides easy access to huge \
+pages of memory. It is a wrapper for the hugetlbfs file system. Applications \
+can use huge pages to fulfill malloc() requests without being recompiled by \
+using LD_PRELOAD. Alternatively, applications can be linked against \
+libhugetlbfs without source modifications to load BSS or BSS, data, and \
+text segments into large pages."
+SUMMARY = "A library which provides easy access to huge pages of memory"
+HOMEPAGE = "http://libhugetlbfs.sourceforge.net/"
+LICENSE = "LGPL-2.1"
+LIC_FILES_CHKSUM = "file://LGPL-2.1;md5=2d5025d4aa3495befef8f17206a5b0a1"
+
+SRCREV = "${AUTOREV}"
+PV = "2.16+git${SRCPV}"
+PR = "r1"
+
+SRC_URI = "git://git.linaro.org/people/stevecapper/libhugetlbfs.git;branch=aarch64-support \
+ file://cross-compile.patch \
+ file://install64-fix.patch"
+
+S = "${WORKDIR}/git"
+
+LIBARGS_aarch64 = "LIB32=lib32 LIB64=${baselib} V=1"
+
+do_compile() {
+ ${MAKE} ARCH=${HOST_ARCH} ${LIBARGS}
+}
+
+do_install() {
+ ${MAKE} install ARCH=${HOST_ARCH} PREFIX=${prefix} DESTDIR=${D} ${LIBARGS}
+ ${MAKE} install-tests ARCH=${HOST_ARCH} PREFIX=${prefix} DESTDIR=${D} ${LIBARGS}
+
+ # nuke the perl libraries
+ rm -rf ${D}${libdir}/perl5
+
+ # nuke oprofile scripts
+ rm -f ${D}${bindir}/oprofile_*
+}
+
+RDEPENDS_${PN} = "python-resource python-subprocess"
+
+INHIBIT_PACKAGE_DEBUG_SPLIT = "1"