package/schedtool: new package
PATCH v2 1/1 package/schedtool: new package
Schedtool is the definitive interface to Linux's scheduler.
---
Changes v1 -> v2:
- switched to TARGET_CONFIGURE_OPTS
- fixed license
package/Config.in | 1 + package/schedtool/Config.in | 10 ++++++++++ package/schedtool/schedtool.mk | 20 ++++++++++++++++++++ 3 files changed, 31 insertions(+) create mode 100644 package/schedtool/Config.in create mode 100644 package/schedtool/schedtool.mk
package/Config.in +1 -0
@@ -1414,6 +1414,7 @@ endif if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS source "package/rsyslog/Config.in" endif + source "package/schedtool/Config.in" source "package/smack/Config.in" if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS source "package/start-stop-daemon/Config.in"
package/schedtool/Config.in new file +10 -0
@@ -0,0 +1,10 @@ +config BR2_PACKAGE_SCHEDTOOL + bool "schedtool" + help + schedtool was born, because there was no tool to change or query + all CPU-scheduling policies under Linux, in one handy command. + Support for CPU-affinity has also been added and most recently + (re-)nicing of processes. + Thus, schedtool is the definitive interface to Linux's scheduler. + + https://github.com/jlelli/schedtool-dl
package/schedtool/schedtool.mk new file +20 -0
@@ -0,0 +1,20 @@ +################################################################################ +# +# schedtool +# +################################################################################ + +SCHEDTOOL_VERSION = 3ffb479929c31cbae09de08f94f58b8f0f061d91 +SCHEDTOOL_SITE = $(call github,jlelli,schedtool-dl,$(SCHEDTOOL_VERSION)) +SCHEDTOOL_LICENSE = GPLv2 +SCHEDTOOL_LICENSE_FILES = LICENSE + +define SCHEDTOOL_BUILD_CMDS + $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) all +endef + +define SCHEDTOOL_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 0755 $(@D)/schedtool $(TARGET_DIR)/usr/bin +endef + +$(eval $(generic-package))
Signature · 1 line
1.9.1
PATCH v2 1/1 package/schedtool: new package
Hi Angelo,
Le 29/05/2015 10:46, Angelo Compagnucci a ?crit :
Quoted 3 lines
Schedtool is the definitive interface to Linux's scheduler.
Signed-off-by Angelo Compagnucci <[email protected]>
Thanks for your patch.
The two syscall "__NR_sched_setattr" and "__NR_sched_getattr" has been defined for most architectures since kernel 3.14 but schedtool redefine them for x86_64, i386 and arm even if they are already available in linux/unistd.h... (see syscall_magic.h)
So schedtool should depend on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_14 except for microblaze (BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_15), aarch64 (BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_17) and blackfin (BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_1) otherwise it will break.
Obviously, it needs a kernel that implement these syscall.
Can you check if schedtool can really be used on these architectures.
Best regards,
Romain Naour
Quoted 67 lines
---
Changes v1 -> v2:
- switched toTARGET_CONFIGURE_OPTS
- fixed licensepackage/Config.in | 1 + package/schedtool/Config.in | 10 ++++++++++ package/schedtool/schedtool.mk | 20 ++++++++++++++++++++ 3 files changed, 31 insertions(+) create mode 100644 package/schedtool/Config.in create mode 100644 package/schedtool/schedtool.mkpackage/Config.in +1
-0@@ -1414,6 +1414,7 @@ endif if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS source "package/rsyslog/Config.in" endif + source "package/schedtool/Config.in" source "package/smack/Config.in" if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS source "package/start-stop-daemon/Config.in"package/schedtool/Config.in new file +10
-0@@ -0,0 +1,10 @@ +config BR2_PACKAGE_SCHEDTOOL + bool "schedtool" + help + schedtool was born, because there was no tool to change or query + all CPU-scheduling policies under Linux, in one handy command. + Support for CPU-affinity has also been added and most recently + (re-)nicing of processes. + Thus, schedtool is the definitive interface to Linux's scheduler. + + https://github.com/jlelli/schedtool-dlpackage/schedtool/schedtool.mk new file +20
-0@@ -0,0 +1,20 @@ +################################################################################ +# +# schedtool +# +################################################################################ + +SCHEDTOOL_VERSION = 3ffb479929c31cbae09de08f94f58b8f0f061d91 +SCHEDTOOL_SITE = $(call github,jlelli,schedtool-dl,$(SCHEDTOOL_VERSION)) +SCHEDTOOL_LICENSE = GPLv2 +SCHEDTOOL_LICENSE_FILES = LICENSE + +define SCHEDTOOL_BUILD_CMDS + $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) all +endef + +define SCHEDTOOL_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 0755 $(@D)/schedtool $(TARGET_DIR)/usr/bin +endef + +$(eval $(generic-package))