diff options
3 files changed, 182 insertions, 21 deletions
diff --git a/meta/recipes-devtools/pax-utils/files/fix-configure-failure.patch b/meta/recipes-devtools/pax-utils/files/fix-configure-failure.patch new file mode 100644 index 0000000000..43bfeb6e46 --- /dev/null +++ b/meta/recipes-devtools/pax-utils/files/fix-configure-failure.patch @@ -0,0 +1,146 @@ +From 70334129f5d849813c2ea5ce6070e6fb433412f7 Mon Sep 17 00:00:00 2001 +From: Hongxu Jia <hongxu.jia@windriver.com> +Date: Wed, 13 Jan 2016 01:12:19 -0500 +Subject: [PATCH] autotools/m4: fix unexpected token 'AX_APPEND_FLAG' + +Added missing macro definition "ax_require_defined.m4" and "ax_append_flag.m4" +to the m4 macro directories. +... +pax-utils-1.1.4/configure: line 33077: syntax error near unexpected token `AX_APPEND_FLAG' +pax-utils-1.1.4/configure: line 33077: `AX_REQUIRE_DEFINED(AX_APPEND_FLAG)' +... +Upstream-Status: Pending + +Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> +--- + autotools/m4/ax_append_flag.m4 | 72 ++++++++++++++++++++++++++++++++++++++ + autotools/m4/ax_require_defined.m4 | 38 ++++++++++++++++++++ + 2 files changed, 110 insertions(+) + create mode 100644 autotools/m4/ax_append_flag.m4 + create mode 100644 autotools/m4/ax_require_defined.m4 + +diff --git a/autotools/m4/ax_append_flag.m4 b/autotools/m4/ax_append_flag.m4 +new file mode 100644 +index 0000000..c98a5c5 +--- /dev/null ++++ b/autotools/m4/ax_append_flag.m4 +@@ -0,0 +1,72 @@ ++# =========================================================================== ++# http://www.gnu.org/software/autoconf-archive/ax_append_flag.html ++# =========================================================================== ++# ++# SYNOPSIS ++# ++# AX_APPEND_FLAG(FLAG, [FLAGS-VARIABLE]) ++# ++# DESCRIPTION ++# ++# FLAG is appended to the FLAGS-VARIABLE shell variable, with a space ++# added in between. ++# ++# If FLAGS-VARIABLE is not specified, the current language's flags (e.g. ++# CFLAGS) is used. FLAGS-VARIABLE is not changed if it already contains ++# FLAG. If FLAGS-VARIABLE is unset in the shell, it is set to exactly ++# FLAG. ++# ++# NOTE: Implementation based on AX_CFLAGS_GCC_OPTION. ++# ++# LICENSE ++# ++# Copyright (c) 2008 Guido U. Draheim <guidod@gmx.de> ++# Copyright (c) 2011 Maarten Bosmans <mkbosmans@gmail.com> ++# ++# This program is free software: you can redistribute it and/or modify it ++# under the terms of the GNU General Public License as published by the ++# Free Software Foundation, either version 3 of the License, or (at your ++# option) any later version. ++# ++# This program is distributed in the hope that it will be useful, but ++# WITHOUT ANY WARRANTY; without even the implied warranty of ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General ++# Public License for more details. ++# ++# You should have received a copy of the GNU General Public License along ++# with this program. If not, see <http://www.gnu.org/licenses/>. ++# ++# As a special exception, the respective Autoconf Macro's copyright owner ++# gives unlimited permission to copy, distribute and modify the configure ++# scripts that are the output of Autoconf when processing the Macro. You ++# need not follow the terms of the GNU General Public License when using ++# or distributing such scripts, even though portions of the text of the ++# Macro appear in them. The GNU General Public License (GPL) does govern ++# all other use of the material that constitutes the Autoconf Macro. ++# ++# This special exception to the GPL applies to versions of the Autoconf ++# Macro released by the Autoconf Archive. When you make and distribute a ++# modified version of the Autoconf Macro, you may extend this special ++# exception to the GPL to apply to your modified version as well. ++ ++#serial 6 ++ ++AC_DEFUN([AX_APPEND_FLAG], ++[dnl ++AC_PREREQ(2.64)dnl for _AC_LANG_PREFIX and AS_VAR_SET_IF ++AS_VAR_PUSHDEF([FLAGS], [m4_default($2,_AC_LANG_PREFIX[FLAGS])]) ++AS_VAR_SET_IF(FLAGS,[ ++ AS_CASE([" AS_VAR_GET(FLAGS) "], ++ [*" $1 "*], [AC_RUN_LOG([: FLAGS already contains $1])], ++ [ ++ AS_VAR_APPEND(FLAGS,[" $1"]) ++ AC_RUN_LOG([: FLAGS="$FLAGS"]) ++ ]) ++ ], ++ [ ++ AS_VAR_SET(FLAGS,[$1]) ++ AC_RUN_LOG([: FLAGS="$FLAGS"]) ++ ]) ++AS_VAR_POPDEF([FLAGS])dnl ++])dnl AX_APPEND_FLAG ++ +diff --git a/autotools/m4/ax_require_defined.m4 b/autotools/m4/ax_require_defined.m4 +new file mode 100644 +index 0000000..4cb6f3c +--- /dev/null ++++ b/autotools/m4/ax_require_defined.m4 +@@ -0,0 +1,38 @@ ++# =========================================================================== ++# http://www.gnu.org/software/autoconf-archive/ax_require_defined.html ++# =========================================================================== ++# ++# SYNOPSIS ++# ++# AX_REQUIRE_DEFINED(MACRO) ++# ++# DESCRIPTION ++# ++# AX_REQUIRE_DEFINED is a simple helper for making sure other macros have ++# been defined and thus are available for use. This avoids random issues ++# where a macro isn't expanded. Instead the configure script emits a ++# non-fatal: ++# ++# ./configure: line 1673: AX_CFLAGS_WARN_ALL: command not found ++# ++# It's like AC_REQUIRE except it doesn't expand the required macro. ++# ++# Here's an example: ++# ++# AX_REQUIRE_DEFINED([AX_CHECK_LINK_FLAG]) ++# ++# LICENSE ++# ++# Copyright (c) 2014 Mike Frysinger <vapier@gentoo.org> ++# ++# Copying and distribution of this file, with or without modification, are ++# permitted in any medium without royalty provided the copyright notice ++# and this notice are preserved. This file is offered as-is, without any ++# warranty. ++ ++#serial 1 ++ ++AC_DEFUN([AX_REQUIRE_DEFINED], [dnl ++ m4_ifndef([$1], [m4_fatal([macro ]$1[ is not defined; is a m4 file missing?])]) ++])dnl AX_REQUIRE_DEFINED ++ +-- +1.9.1 + diff --git a/meta/recipes-devtools/pax-utils/pax-utils_1.0.5.bb b/meta/recipes-devtools/pax-utils/pax-utils_1.0.5.bb deleted file mode 100644 index 0716a08a4e..0000000000 --- a/meta/recipes-devtools/pax-utils/pax-utils_1.0.5.bb +++ /dev/null @@ -1,21 +0,0 @@ -SUMMARY = "Security-focused ELF files checking tool" -DESCRIPTION = "This is a small set of various PaX aware and related \ -utilities for ELF binaries. It can check ELF binary files and running \ -processes for issues that might be relevant when using ELF binaries \ -along with PaX, such as non-PIC code or executable stack and heap." -HOMEPAGE = "http://www.gentoo.org/proj/en/hardened/pax-utils.xml" -LICENSE = "GPLv2+" -LIC_FILES_CHKSUM = "file://COPYING;md5=eb723b61539feef013de476e68b5c50a" - -SRC_URI = "http://gentoo.osuosl.org/distfiles/pax-utils-${PV}.tar.xz" - -SRC_URI[md5sum] = "d731f5385682a7a62ee2e7b7dacc13a7" -SRC_URI[sha256sum] = "f69a9938e4af7912d26d585094bc0203e43571a990fdd048319088a8b8ad906f" - -RDEPENDS_${PN} += "bash python" - -do_install() { - oe_runmake PREFIX=${D}${prefix} DESTDIR=${D} install -} - -BBCLASSEXTEND = "native" diff --git a/meta/recipes-devtools/pax-utils/pax-utils_1.1.4.bb b/meta/recipes-devtools/pax-utils/pax-utils_1.1.4.bb new file mode 100644 index 0000000000..48b342e2e3 --- /dev/null +++ b/meta/recipes-devtools/pax-utils/pax-utils_1.1.4.bb @@ -0,0 +1,36 @@ +SUMMARY = "Security-focused ELF files checking tool" +DESCRIPTION = "This is a small set of various PaX aware and related \ +utilities for ELF binaries. It can check ELF binary files and running \ +processes for issues that might be relevant when using ELF binaries \ +along with PaX, such as non-PIC code or executable stack and heap." +HOMEPAGE = "http://www.gentoo.org/proj/en/hardened/pax-utils.xml" +LICENSE = "GPLv2+" +LIC_FILES_CHKSUM = "file://COPYING;md5=eb723b61539feef013de476e68b5c50a" + +SRC_URI = "http://gentoo.osuosl.org/distfiles/pax-utils-${PV}.tar.xz \ + file://fix-configure-failure.patch \ +" + +SRC_URI[md5sum] = "1bfbb5237881f0c5e476b2f7ffcc00d5" +SRC_URI[sha256sum] = "796860fbd48c5f811e699e8492dc1110459bad0a62efa8d346b74a4f6f556414" + +RDEPENDS_${PN} += "bash" + +do_configure_prepend() { + touch ${S}/NEWS ${S}/AUTHORS ${S}/ChangeLog +} + +do_install() { + oe_runmake PREFIX=${D}${prefix} DESTDIR=${D} install +} + +BBCLASSEXTEND = "native" + +inherit autotools pkgconfig + +PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'largefile', 'largefile', '', d)} \ +" +PACKAGECONFIG[libcap] = "--with-caps, --without-caps, libcap" +PACKAGECONFIG[libseccomp] = "--with-seccomp, --without-seccomp, libseccomp" +PACKAGECONFIG[largefile] = "--enable-largefile,--disable-largefile,," +PACKAGECONFIG[pyelftools] = "--with-python, --without-python,, pyelftools" |