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 13SRC_URI[md5sum] = "9bea59b1987dc4e16c2d22d745374e64" 14SRC_URI[sha256sum] = "a330ddd812688169802a3ba29e5e3b19956376b8f6f73b8d7e9586eb04423c2e" 15 16EXTRA_OEMAKE = "CC='${CC}' DESTDIR='${D}'" 17 18do_install() { 19 oe_runmake install 20} 21 22# The install target in the Makefile will fail for paxctl-native with error: 23# install -D --owner 0 --group 0 --mode a=rx paxctl .../sbin/paxctl 24# install: cannot change ownership of '.../sbin/paxctl': \ 25# Operation not permitted 26# Drop '--owner 0 --group 0' to fix the issue. 27do_install:class-native() { 28 local PROG=paxctl 29 install -d ${D}${base_sbindir} 30 install -d ${D}${mandir}/man1 31 install --mode a=rx $PROG ${D}${base_sbindir}/$PROG 32 install --mode a=r $PROG.1 ${D}${mandir}/man1/$PROG.1 33} 34 35# Avoid QA Issue: No GNU_HASH in the elf binary 36INSANE_SKIP:${PN} = "ldflags" 37 38BBCLASSEXTEND = "native" 39