1DESCRIPTION = "paxctl is a tool that allows PaX flags to be modified on a \ 2 per-binary basis. PaX is part of common security-enhancing \ 3 kernel patches and secure distributions, such as \ 4 GrSecurity or Adamantix and Hardened Gen-too, respectively." 5HOMEPAGE = "https://pax.grsecurity.net/" 6LICENSE = "GPL-2.0-only" 7LIC_FILES_CHKSUM = "file://paxctl.c;beginline=1;endline=5;md5=0ddd065c61020dda79729e6bedaed2c7 \ 8 file://paxctl-elf.c;beginline=1;endline=5;md5=99f453ce7f6d1687ee808982e2924813 \ 9 " 10 11SRC_URI = "http://pax.grsecurity.net/${BP}.tar.gz \ 12 file://0001-To-fix-package-error-if-DESTDIR-is-set-to-usr.patch \ 13" 14 15SRC_URI[md5sum] = "9bea59b1987dc4e16c2d22d745374e64" 16SRC_URI[sha256sum] = "a330ddd812688169802a3ba29e5e3b19956376b8f6f73b8d7e9586eb04423c2e" 17 18EXTRA_OEMAKE = "CC='${CC}' DESTDIR='${D}'" 19 20do_install() { 21 oe_runmake install 22} 23 24# The install target in the Makefile will fail for paxctl-native with error: 25# install -D --owner 0 --group 0 --mode a=rx paxctl .../sbin/paxctl 26# install: cannot change ownership of '.../sbin/paxctl': \ 27# Operation not permitted 28# Drop '--owner 0 --group 0' to fix the issue. 29do_install:class-native() { 30 local PROG=paxctl 31 install -d ${D}${base_sbindir} 32 install -d ${D}${mandir}/man1 33 install --mode a=rx $PROG ${D}${base_sbindir}/$PROG 34 install --mode a=r $PROG.1 ${D}${mandir}/man1/$PROG.1 35} 36 37# Avoid QA Issue: No GNU_HASH in the elf binary 38INSANE_SKIP:${PN} = "ldflags" 39 40BBCLASSEXTEND = "native" 41